How to get average position and CTR from Search Console
Part of Search Console clicks in your MacBook notch
Both numbers are ratios, and that changes the arithmetic
Clicks and impressions are counts. CTR and position are not: they are computed over whatever the row covers, and they cannot be added, averaged across rows, or summed.
{
"startDate": "2026-10-01",
"endDate": "2026-10-07",
"dimensions": []
}
No dimensions, one row, and Google computes both correctly over the whole window. That is the only figure you should quote as "our CTR".
Why the headline does not match the chart
Ask for dimensions: ["date"] and each row holds that day's own ratio. The
windowed ratio is clicks over impressions across all seven days, which
weights each day by its impressions.
A Sunday with ten impressions and a Monday with ten thousand carry their real weight in the headline and equal weight in a naive average of the points. The difference can be large, and a tool whose headline equals the mean of its points is doing the wrong calculation.
So the chart and the headline disagreeing is correct, and worth saying in the interface before somebody files it as a bug.
What average position actually describes
The position of the topmost result for your site, averaged over every impression it received.
Three consequences.
It mixes queries that have nothing to do with each other. Ranking first for a term nobody searches and fortieth for the term everyone does averages to something in the middle, describing neither.
It moves when nothing about you changed. Start appearing fifth for ten new long-tail queries and your average drops even though every existing position held exactly.
It is impression-weighted. A position change on a high-volume query moves it far more than the same change on a quiet one.
Treat a shift as a prompt to look at the query breakdown, not as a result.
Why a falling CTR is often good
CTR falls when a page starts ranking for broader terms. More impressions at worse positions means a smaller share of them convert, and the page is earning more clicks in total while the percentage drops.
Three things that lower CTR without anything going wrong:
- Ranking for more, and therefore more loosely matched, queries.
- Google answering the query on the results page, which is outside your control.
- A rich result above you taking the clicks.
Always read CTR with impressions and position beside it. Alone it is the most misinterpreted number Search Console publishes.
The pair that is actually actionable
Page-level rows where impressions are high and position is between roughly five and fifteen. Those pages are visible and not quite winning, and a title or description change has somewhere to move them.
{
"startDate": "2026-09-01",
"endDate": "2026-10-01",
"dimensions": ["page"],
"rowLimit": 500
}
Filter client-side on position and sort by impressions. A page at position two with a low CTR is a different problem, usually a snippet one.
The lag applies here too
Both ratios settle over two to three days along with their inputs. A CTR for yesterday is computed from incomplete clicks and incomplete impressions, and the two do not necessarily settle at the same rate.
End your window three days back for anything you intend to compare.
In the notch
Notch Metrics reports Search Console CTR as clicks divided by impressions over the window, rather than the mean of daily rates, and average position with one decimal place and a note that lower is better.
Both say on their pages how they are computed, because a ratio whose definition is hidden is a ratio somebody will misread. Everything Search Console reports, or download Notch Metrics.
- google-search-console
- seo
- api