Methodology
How the CTR calculator and the Search Console comparison calculate each number, which numbers are observed, calculated or modelled, and what they cannot show. Engine 0.1.0, calculation contract 0.2.0.
Three kinds of numbers
| Observed | Taken directly from your numbers: clicks, impressions, CTR, average position and their changes. |
|---|---|
| Calculated | Exact arithmetic on observed numbers, such as the split of a click change. Not a cause. |
| Modelled | Depends on an assumption, such as clicks if the earlier CTR had held. |
| Not established | What the numbers cannot show: why something changed, whether AI features played a part, and clicks or revenue that could be regained. |
CTR and period totals
CTR = clicks ÷ impressions (N/A when there are no impressions) Period CTR = total clicks ÷ total impressions Period position = Σ(position × impressions) ÷ Σ impressions
A period's CTR is never the average of daily CTRs, and its position is weighted by impressions. The average position is undefined when a day with impressions has no position. A similar average position does not show that individual queries kept their rankings.
Splitting a click change
From impressions = (I₁ − I₀) × p₀ From CTR = I₁ × (p₁ − p₀) Click change = C₁ − C₀ = from impressions + from CTR Clicks at the earlier CTR = I₁ × p₀ (modelled)
I is impressions, C clicks, p CTR; 0 is the earlier period and 1 the later one. The split uses the earlier CTR as the baseline. It is arithmetic: it depends on that convention and does not identify a cause. Clicks can fall while CTR rises, when impressions fall faster.
Search Console exports
- Chart.csv is the only source of daily property totals. Queries.csv holds top rows only, and Pages.csv counts pages differently from the property; neither is added to the totals.
- Both periods need the same number of days, must not overlap, and must have a row for every day. Missing days are never treated as zero.
- Only Web search results with property totals and no filters are compared. An impressions-only export, such as the Generative AI report, has no clicks and is not analysed for CTR.
- CTR values in the file are not used; CTR is calculated from clicks and impressions.
- Days within 3 days of the export date are marked as possibly preliminary.
Known Search Console reporting issues
Register version 2026-10-12. A comparison is affected only when a selected period overlaps the dates.
| Dates | Affects | Effect | Source |
|---|---|---|---|
| 2025-05-13 to 2026-04-27 | impressions, ctr, position | Impressions, CTR, position and the CTR analysis are withheld; clicks are shown. | |
| 2026-02-28 to 2026-03-01 | rows (bulk_export only) | Shown as a warning. |
Research data
The Search Console comparison is free in exchange for research data: the daily clicks, impressions and positions of the two periods you choose, with the export's date range and type. The server recalculates every number from those rows; numbers calculated in the browser are not accepted. Submissions are self-selected and unverified, so research counts submissions, not websites. Daily property totals cannot support CTR-by-position curves or claims about clicks lost to any cause. Retention, publication thresholds and the full research terms will be published before collection opens.