There is no single good click-through rate. A good CTR is one that holds up against what other results at the same position earn for the same kind of search. A top-three result for a non-branded query and a result at the bottom of page one live in different worlds, and branded searches click far more than generic ones. One site-wide percentage hides all of that.
The useful question is narrower: which of my queries get fewer clicks than their position should earn, and why? This guide shows how to answer it with your own Search Console data, how to rule out causes a title cannot fix, and how to improve the pages that are falling short.
How Search Console measures CTR
In Performance → Search results, Search Console reports four numbers for every query and page:
- Impressions: how many times your page appeared in someone’s search results.
- Clicks: how many of those led to a click through to your site.
- CTR: clicks divided by impressions, as a percentage. 40 clicks from 2,000 impressions is 2%.
- Average position: the average rank of your top result across those impressions.
Average position is an average. A page shown at position 3 for some searches and 12 for others can average 7, which is why a query’s CTR can look low for its “position” when really it ranks well only part of the time.
Why published CTR benchmarks disagree
Several studies publish an expected CTR for each position, and their numbers differ widely. They draw on different data, different years, different mixes of branded and generic queries, desktop and mobile, and results pages with or without ads, AI Overviews, videos and featured snippets. None of them is about your queries.
So this guide does not print a benchmark table. Your own Search Console export is a better baseline: it reflects your niche, your audience and the results pages your pages actually appear on.
Find your own baseline
- In Performance → Search results, set the date range to the last three months and open the Queries tab.
- Filter out branded queries (+ Add filter → Query → Queries not containing your brand name). They behave differently.
- Export with Export → Download CSV.
- Group queries by rounded average position and take the median CTR at each position. That is what a typical query of yours earns there.
The CTR calculator does steps 4 onwards in your browser. Upload the export, choose Your site’s median CTR at each position as the baseline (or edit the expected values yourself), and it lists the queries below the line, sorted by missed clicks: impressions × (expected CTR − actual CTR). The file never leaves your browser.
A worked example
The numbers below are made up for a small blog about home espresso, but the method is the one you would use on a real export. After removing branded queries, the site’s own median CTR came out at about 24% for position 1, 13% for position 2, 9% for position 3, 5% for positions 4 and 5, and 2% for positions 6 to 10. Here are five queries from the same export:
| Query | Avg. position | Impressions | Clicks | CTR | Site median there | Missed clicks |
|---|---|---|---|---|---|---|
| espresso grind size | 2.1 | 6,200 | 310 | 5.0% | 13% | 496 |
| crema meaning | 1.3 | 2,400 | 260 | 10.8% | 24% | 316 |
| best espresso machine under 500 | 4.6 | 8,100 | 120 | 1.5% | 5% | 285 |
| how to descale a breville | 3.4 | 3,900 | 330 | 8.5% | 9% | 21 |
| latte vs flat white | 7.8 | 5,600 | 95 | 1.7% | 2% | 17 |
Missed clicks are the clicks you would have had at the median rate, minus the clicks you got. For “espresso grind size”: 6,200 × 13% = 806 expected clicks, minus 310 actual, is 496.
Reading it row by row:
- The last two rows are fine. They earn roughly what the site’s results earn at that position. Rewriting those titles would be busywork.
- “espresso grind size” is the best candidate. In this example the page’s title is “Our Espresso Grind Guide”, which never says “size” and gives no hint that there is a chart. A title such as “Espresso Grind Size: Chart and How to Dial It In” answers the query in its first words. This is the case a title rewrite exists for.
- “crema meaning” is probably not a title problem. In this example, searching it shows a dictionary-style answer at the top that settles the question before anyone scrolls, so every result loses clicks. Leave the title alone and put the effort into a query whose searchers still need to click.
- “best espresso machine under 500” needs a closer look first. An average of 4.6 can hide position 2 on desktop and position 9 on mobile. Filter the report by the query and open the Devices tab; if mobile is the weak side, it is a ranking problem on mobile, not a snippet problem. A shopping query like this also tends to have ads and product listings above the organic results, which shrinks every result’s share.
That last habit, checking the results page and the breakdowns before writing anything, is what keeps the rewrite list short and worth the effort.
Before you blame the title
Search the query yourself (in a private window) and look at the results page:
- Is your result actually there? If the average position hides a wide range, the page may only rank well occasionally. That is a ranking problem.
- What sits above it? Ads, an AI Overview, a featured snippet, a map, videos or a “People also ask” box can take most clicks however good your title is.
- Does your page match the intent? A product page for an informational query, or a guide for a “buy” query, gets passed over.
- Is Google showing your title? Find your result and compare its title link with the title tag on your page. Google builds title links from several sources: the title tag, the main heading, other prominent text on the page and the anchor text of links pointing to it. When it replaces yours, the usual reasons are a title that is very long, stuffed with keywords, repeated across many pages, out of date or a poor description of the page. Fix that mismatch before writing a new pitch, or Google may ignore the new title too.
How to improve a low CTR
- Rewrite the title to answer the query in its first words. Use the words people searched, as they would say them. The guide to changing your WordPress SEO title covers where to do it in Yoast SEO, Rank Math and SEOPress.
- Make a specific, true promise. Name what the page delivers: the steps, the product, the price, the year if the page really is current.
- Fix truncation. If the words that matter fall past the cut, they are invisible. The title and meta description checker shows where Google would likely cut.
- Write a meta description that summarizes the page. Google does not always use it, but when it does, it is your pitch. See how to add and bulk-edit meta descriptions in Yoast.
- Earn eligible rich results. Product pages with real prices and ratings can show them; mark up only what visitors can see.
- Improve the position. Moving up the page changes CTR more than any wording. Pages just off page one are covered in striking distance keywords for WordPress.
Avoid clickbait. A title that oversells gets the click and loses the visitor, and Google may replace a title that does not match the page.
Troubleshooting by symptom
CTR fell but average position held steady. Something changed on the results page or in your snippet. Search the query and look for a new AI Overview, video row, “People also ask” box or ad block above you, and check whether Google still shows your title. If you changed the title recently, compare the windows before and after the change (see “Measure the change” below).
CTR fell and position fell with it. That is a ranking change, and CTR followed it. Look at what replaced you and at the page’s content, not its title.
Impressions jumped and CTR dropped. Often good news in disguise: the page started appearing for new, loosely related queries, usually further down the page, which drags the average down. Filter by the page, open the Queries tab and use Date → Compare to see which queries are new. AI Overviews can cause the same pattern. Search Console gives every link in an AI Overview the position of the overview itself, so a page cited there can gain impressions at a high position that bring few clicks.
One page underperforms on almost every query. Look at the page, not the queries. Common causes: Google is rewriting the title, the page is the wrong type for what people want (a product page for a how-to search, say), or a date in the title or snippet makes it look stale.
Mobile CTR is much lower than desktop. Open the Devices tab. Long titles are cut sooner on phones, and mobile results pages often stack more features above the first organic result.
Branded queries look great and everything else looks poor. That is normal. People who search your name are looking for you. Keep branded queries out of the baseline so they do not hide the problem.
Edge cases that distort the numbers
- Small samples. A query with 40 impressions and no clicks tells you almost nothing. Set a floor, such as 100 impressions over the three months, before you judge a row.
- Anonymized queries. Search Console leaves very rare queries out of the Queries table to protect searchers’ privacy, so the query rows add up to fewer clicks and impressions than the page or site totals. Judge whole pages from the Pages tab rather than by adding up their queries.
- Page totals versus site totals. When two of your pages appear in the same search, the site totals count one impression, but the Pages tab counts one for each page. Page CTRs will not add up to the site CTR, and they are not meant to.
- The wrong search type. The Performance report starts on Search type: Web. Image, Video and News results behave differently; keep them out of a web baseline.
- Seasonal queries. A three-month window that covers the peak season for some queries and not others skews the comparison. For seasonal topics, compare the same months a year apart.
Measure the change
Before you measure, confirm that Google has picked up the new title. Paste the URL into the inspection bar at the top of Search Console and check that the Last crawl date under Page indexing falls after your change (Request indexing asks Google to recrawl sooner), or search the query and look at your result.
Then open Performance, filter by the page, and use Date → Compare to set the four weeks before the change against the four weeks after the recrawl. Use whole weeks so both windows hold the same weekdays. Look at the same queries, and only trust the CTR change where average position stayed similar; otherwise the ranking moved, not the snippet. If a query with a few thousand impressions has not moved after four weeks, try a different angle in the title rather than another small wording tweak.
How RankHive handles this
RankHive finds these every week and drafts the new title for you to approve. On a connected WordPress site, it reads your Search Console, picks out the queries with plenty of impressions and few clicks, and drafts a new title (and meta description where it helps) for the page that ranks, showing the query, position and current text next to the proposal. When you approve, the RankHive plugin writes the change into Yoast SEO, Rank Math or SEOPress, and the Change Log keeps a Revert button for it.
Related reading
- How to change your WordPress SEO title: in Yoast SEO, Rank Math, SEOPress and without a plugin.
- Yoast meta description: adding, changing and bulk-editing descriptions.
- From Search Console data to shipped WordPress fixes: turning the report into changes.
- Search Console errors on WordPress: when the problem is indexing, not clicks.
Your job is to find the queries earning less than their position should and fix the snippet on the page that ranks. Do it by hand with the steps above, or let RankHive find them each week and draft the new titles for you to approve.
