Two cells in a report can look identical and mean opposite things. One is a measurement. The other is a hole where a measurement should be.
The three states of a number
- Measured. A connected source reported it, and the source is named.
- Estimated. A third party inferred it, and the method is named.
- Missing. Nobody reported it, and the cell says so.
Collapse those three into one column and the report cannot be acted on.
What each state tells you to do
- Measured. Decide. The number is about your own site.
- Estimated. Look, then verify with a source you control.
- Missing. Fix the connection, or ask a different question.
The two ways this goes wrong
A missing source read as zero sends you in one of two directions.
You chase a fix for a problem you do not have. Or you remove a page nobody has measured, and lose the traffic it may have been earning.
The same report, written honestly
Ridgeline Roofing, September 2026. Analytics was disconnected from the 10th, and the property records no revenue.
measure value state source
impressions 4,180 measured search console
clicks 146 measured search console
click rate 3.49% measured derived, clicks / impressions
avg position 12.4 measured search console
sessions - missing analytics disconnected 10 to 28 Sept
key events - missing no key events configured
revenue - not asked this property does not record revenue
market volume 2,900 estimated third party, us monthly, 2026-09-20
That block is more useful than a sentence about traffic being up or down. It also stops the next conversation before it starts.
How to say it in one sentence
“Impressions and clicks are measured from Search Console for the 28 days. Analytics was disconnected from 10 September, so sessions are missing rather than zero.”
Acceptance: the report is honest when
- every row names its source or says missing
- a missing source carries the date it went missing
- no missing row is rendered as a digit
- estimates are labelled as estimates, with the provider and date
- a derived number shows the division behind it
Troubleshooting
| Symptom | Likely cause | What to do |
|---|---|---|
| A column is all zeros | A source returned nothing and was coerced | Render missing instead of converting |
| Two reports disagree | Different sources, different definitions | Name each source beside its number |
| The client asks why sessions vanished | A token expired mid-period | Give the dates, and re-read after reconnecting |
| An estimate looks precise | Third-party volume is a rounded bucket | Label it, and never predict from it alone |
| Every row says missing | Nothing is connected | Fix access before reporting anything |
Where the coercion usually happens
It is rarely deliberate. Four common shapes:
- A spreadsheet column defaulting to zero, filled in by a lookup that missed.
- A chart that plots missing points at the axis.
- A dashboard total that sums an empty list to zero.
- A report template with a placeholder zero typed in once.
Each one is fixable with one change. Render missing as text, and keep the zero for a source that genuinely reported zero.
Limits
Labelling a value as estimated does not make it wrong. It also does not make it safe to build a prediction on.
A prediction needs a measured source. Until one is connected, the prediction cannot be judged.