Skip to main content

What it is

data_completeness_rate is the share of the records Beacon expected from your tools that actually arrived, as a ratio between 0 and 1. Higher is better. It is the second headline figure of the Data integrity module, which shows it as a percentage. It answers the question before every other figure: did Beacon receive everything your tools hold? A figure built on a delivery that arrived half-empty can look precise and be wrong. It is published for your company as a whole, on the company and period object.
This value is not calculated yet. Beacon does not yet keep, for each delivery from each tool, how many records it expected. Until it does, every door returns not_computed for this value and the module page shows it as Not measured. Nothing is estimated in its place.

How it is calculated

Measured. A plain count — nothing is weighted and no customer is scored. data_completeness_rate = records that arrived ÷ records Beacon expected from each connected tool. How Beacon will know how many records to expect from each delivery is not yet designed, and this page does not guess at it. A tool you have not connected is not expected to deliver anything, so it neither raises nor lowers the rate. If Beacon expects 4,121 records across your tools and 4,118 arrive, the rate is 4,118 ÷ 4,121 = 0.99927.

Where it comes from

No read interface or MCP tool serves this value yet, and the value itself is not calculated yet. This table publishes its shape ahead of both.
Where the choice is made. This value is not open by default on any door. The choice happens when a reader grant that reaches it is issued or widened, when you subscribe to events, or when you turn the CRM property on. Whoever makes it is shown who becomes able to see the value, and their yes is recorded.

How fresh it is

Once calculated, it is worked out once a day, after your tools have synced, over the deliveries that arrived that day. Which day’s figure stands for a period is not yet declared — a period holds many daily checks, and the rule that picks one is still to be stated. Until it is, read the value with its own computed_at. Both timestamps travel with it: the moment the value describes, and the moment Beacon last worked it out.

Currency and rounding

Neither applies. It is a ratio of two counts of records, with no unit and no currency.

What changes it

A delivery from one of your tools arriving incomplete — a sync cut short, a page of records skipped, a permission that hides some records from Beacon. A tool that stops delivering at all is a different problem: it shows as a sync delay on the Data integrity page, not as a lower rate.

What it is not

  • Not data_integrity_rate. That asks whether the records that arrived pass the checks. This asks whether the records arrived at all.
  • Not the score for each record. That is a separate 0–100 measure per customer, designed and not calculated yet.
  • Not a measure of how many tools you have connected. A company with one tool fully delivered and a company with five tools fully delivered both read 1.0.
  • Not something you can set. No setting raises it; it moves only with what your tools deliver.