A page I run sat at average position 13 in Search Console. That's the worst place a page can be — not page one, not far enough down to ignore. The kind of number you glance at, sigh, and scroll past.
I almost did. Then one question stopped me — the one an average can never answer: was that number describing one ranking, or two? I pulled the query-level breakdown to find out, and the "13" fell apart.
The average was two numbers wearing a trenchcoat
The page is built for one category of listing — call it Category A. For the A queries, it ranks 5 to 9. Top of page one, healthy click-through, doing its job.
But the same page also showed up for a second, adjacent category — Category B — at position 20. Page two. A handful of clicks on hundreds of impressions.
Lay the two query populations side by side and the problem is obvious at a glance:
Category A Category B
───────── ─────────
pos 5 pos 20
pos 6 pos 19
pos 7 pos 22
pos 6 pos 21
pos 8 pos 20
───────── ─────────
avg ≈ 6.4 avg ≈ 20.4
Page average reported: ≈ 13
a rank it never held
Average those two clusters together, weighted by impressions, and you get 13. A number that describes neither reality. The page wasn't "mediocre everywhere." It was excellent at one thing and irrelevant at another, and the mean smeared them into a single grey lie.
This is the trap with average position: it's an average. A page that ranks #3 for everything and a page that ranks #6 and #20 for two different intents can report the identical number. One is finished; the other has a structural problem the headline metric will never show you. You only see it when you split by query.
Why a Category-A page was chasing Category-B queries
The next question was: why is an A page surfacing for B at all?
The answer was in its own title tag. The page title named both categories — "A & B." I'd written it that way months earlier thinking it would catch more traffic. Instead it did the opposite of what I wanted.
A title tag is a magnet for intent. Tell Google your page is about B, and Google will test it against B searches — even when the page body is really about A, even when you have a different, dedicated page for B. So the engine dutifully ranked my A page at position 20 for B queries, pulling in impressions it could never convert and dragging the page's average into the swamp.
Advertising a category you can't win for isn't free reach. It's a tax.
The part that actually stung: I was competing with myself
When I pulled every page of mine that ranked for those Category-B queries, three URLs came back. The A page at ~20. A general directory page at ~23. And the actual B-specific article at ~15.
Three of my own pages, splitting authority for one query cluster, and none of them winning. Classic self-cannibalization. Google had three candidates from the same site and couldn't decide which deserved the spot, so it ranked all three poorly and gave the position to someone else entirely.
I'd manufactured my own competition. The dedicated B article — the page that should own that intent — was being undercut by two other pages of mine that mentioned B in passing.
The fix was subtraction
The instinct with SEO is to add: more words, more keywords, more content, more links. This fix was the reverse. I edited the A page's title and meta to remove every mention of Category B. No new content. No new links. Just deleting the words that were inviting the wrong queries.
The goal:
- The A page stops matching B searches, stops ranking #20 for them, and concentrates its signals on the cluster it already wins (the 5–9 range).
- Category B gets handed cleanly to the one page meant to own it, instead of being split three ways.
- The "average position 13" should resolve upward — not because anything ranked better, but because I stopped averaging in the queries the page was never going to win.
Then I pushed the change and submitted the URL for recrawl so the engine sees the new title sooner rather than waiting on its own schedule.
What I'm taking from this
Never trust an averaged metric to tell you what to do. Average position, average CTR, average anything — they hide bimodal distributions, and bimodal is exactly where the interesting problems live. The page-level number told me "meh." The query-level split told me "two different problems wearing one URL." The whole diagnosis lived one dimension down.
This is also why I have the query breakdown wired to pull on demand rather than reading dashboards by hand. The signal that mattered here wasn't in any summary view — it was in the shape of the distribution, and you only see the shape when something queries the raw rows and looks for the split. The page average will tell you a page is sick. It will almost never tell you that the page is two pages, one of them healthy, fighting over a title tag.
I'll know in a couple of weeks whether the subtraction worked. The recheck is already scheduled to pull the same queries and compare. But the lesson holds regardless of the numbers: when a page looks evenly bad, check whether it's actually unevenly good.
Top comments (0)