Short answer: CTR by position is the share of people who click your result at each ranking position. Published studies give you a rough idea, but they disagree a lot, and none of them is your site. Your own Search Console data gives you a better number for your own pages. Split brand searches from the rest, group by position, and add up clicks and impressions in each group.
CTR means click-through rate: clicks divided by impressions. An impression is one time your result was shown in Google.
What is CTR in simple words?
Out of every 100 people who see your result, CTR is how many click it. 100 impressions and 3 clicks is a 3% CTR. Google's Performance report help defines it the same way: the click count divided by the impression count.
Is a 2% CTR bad? Is 1.2% a good CTR?
On its own, a CTR number doesn't tell you much. It depends on three things:
- Position. A 2% CTR at position 1 is low. At position 8, it can be normal.
- Brand or not. People searching your brand name click you far more often. Mix them in and every number looks better than it is.
- What else is on the page. Ads, AI Overviews, maps and other features push the normal results down and take clicks.
So the fair question isn't "is 2% good?". It's "is 2% normal for this type of search at this position on my site?". That's what a site curve answers.
What does 5% CTR mean?
5 clicks for every 100 times your result was shown. Whether that's good depends on the position and the type of search, as above.
Why published CTR by position studies disagree
Two 2026 studies the tool uses side by side give very different numbers for position 1:
- First Page Sage (published 22 Sep 2026, data 1 Mar to 31 Aug 2026, US-weighted, desktop and mobile blended): 7.1% blended. 22.6% with no AI answer on the page, 3.6% with one.
- Advanced Web Ranking (published 14 Sep 2026, July 2026 snapshot, Google US desktop): 20.02% across all results pages, 9.69% where an AI Overview shows.
That's about a 3x gap at position 1. Different data, different countries, different devices, different years. Neither is wrong. Neither is your site, either. I use them as a sense check, not as the number in a business case.
Is my CTR good?
Compare it with your own curve, not a global average. Find the bucket the search sits in (say non-brand, position 4-5) and look at your site's CTR there. If one search sits well below its bucket, that's the one to look at: the title, the snippet, or an AI Overview or other feature above it. If the whole bucket is low against the studies, it may just be your market. That's why I trust the site curve over the studies.
How to build your CTR curve by hand
- Export your queries. In Search Console, open Performance, then the Queries tab. Pick a date range and export. Keep the start and end dates.
- Check the dates. Google's data anomalies page says a logging error meant impressions weren't reported accurately from 13 May 2025 to 27 April 2026. Impressions, CTR and average position were affected. Clicks weren't. If your range overlaps that window, the CTR is off. Use a range that starts after 27 April 2026.
- Split brand from non-brand. Add a column: brand if the query contains your brand names, other if not. Add more types if they help, like product names or "near me" searches.
- Group by position. Round each query's position and put it in a bucket: 1, 2, 3, 4-5, 6-10, 11-20. Work per query, not per page. A page's average position mixes every search it shows for, so one number hides a spread from position 2 to position 40. Google's own warning is worth keeping in mind: "a position number can mean different things in different situations, and so you should not make simple assumptions." Position is the topmost spot your site held, averaged. And an AI Overview counts as one position, with every link inside it given that same position. So treat the buckets as a guide, not exact ranks.
- Add up, then divide. For each type and bucket: total clicks divided by total impressions. Don't average the CTRs of each query. Big queries should count for more than tiny ones.
- Mark thin buckets. A bucket with only a few hundred impressions is noisy. Grey it out and don't use it.
What good looks like: a curve that falls as position drops, brand well above non-brand, and enough impressions in each bucket you use. What bad looks like: one blended curve with brand mixed in, or a range inside the reporting error window.
How the Site CTR curve tool makes it quicker
The Site CTR curve does steps 3 to 6 for you. It's free and open, with no sign-in. It runs in the page only. Nothing is uploaded.
What you give it:
- Queries export: paste or upload the Search Console Queries export. It needs the Top queries, Clicks, Impressions and Position columns. It works out CTR again itself.
- Export start date and Export end date: both required, so it can check the reporting error window.
- Query types: the first one is Brand. Add your brand terms, comma-separated, or tick regex for a regular expression. First match wins. Anything unmatched goes to Other. Add more types if you want.
- Thin data below (impressions per bucket): 100 by default.
How to read the result:
- Curve table: one row per query type, one column per bucket (Pos 1, Pos 2, Pos 3, Pos 4-5, Pos 6-10, Pos 11-20). Each cell shows the CTR, impressions and number of queries. Thin buckets are greyed and marked "thin data".
- Outside error window: your dates are clean. You can Save as my site curve. PAYBACK then uses it for its base case. The saved curve stays in this browser tab until you close it. Nothing is sent to a server.
- Affected: your dates overlap the reporting error. The tool won't offer the curve to PAYBACK. Instead it offers "Use clicks instead", which sends your monthly clicks to PAYBACK in traffic uplift mode.
- Comparators only - published 2026 studies: the two studies above, shown next to your curve, with a note that they disagree by about 3x at position 1.
Example (made-up numbers)
A site exports three months of queries, all after 27 April 2026, and adds its brand name as the Brand type.
- Brand, Pos 1: 18,000 impressions, 6,300 clicks, 35.0% CTR.
- Other, Pos 1: 4,000 impressions, 480 clicks, 12.0% CTR.
- Other, Pos 4-5: 22,000 impressions, 880 clicks, 4.0% CTR.
- Other, Pos 11-20: 60 impressions. Greyed as thin data.
So for non-brand searches on this site, moving from position 4-5 to position 1 is worth roughly 4% to 12% CTR. That's the number to take into PAYBACK, not a study average.
What to do next
- Save the curve, then open PAYBACK in CTR change mode for any fix that should move rankings or clicks.
- Look for pages with lots of impressions and almost no clicks. STORY in the GSC companion flags them.
- Read what teams get wrong about AI Overviews before you blame a CTR drop on one cause.
- Re-run the curve every quarter. It moves as Google's results pages change.