Near-Miss SEO
Your page ranks 9th. Google already thinks it belongs on the page — just not at the top. This skill finds the searches that page only half answers and hands you the exact section headings that close the gap.
One markdown file, nothing to configure. Install it in a minute, or read the whole thing first.
Position 9 is not a content problem. It is a missing answer.
A page sitting at 5-20 has already cleared the hard part — Google believes it is relevant. The fix is almost never more words. It is one question the searcher had that your page skipped, answered in a section a skimmer can find.
So the skill reads your Search Console data and your live page, then gives every gap one of three verdicts.
The page never addresses it. Google is ranking you on adjacency alone. Add a section.
It is answered — in a mid-paragraph clause with no heading. Nobody skimming finds it. Promote it.
There is a heading, and under it one generic sentence. Expand it with the actual number, range, or condition.
Six steps, start to finish
Run it on a page and it works the whole sequence — data, filter, clusters, headings, file — without you steering it between steps.
Scopes the job
Picks your money pages — the top 3-5 service or product pages — and refuses to run more than five at once. Depth beats breadth on this one.
Pulls 90 days of Search Console
Live through a connected GSC tool, or from a CSV export it walks you through step by step. It also fetches the live page — you cannot judge what is missing without reading what is there.
Filters to striking distance
Position 5.0-20.0, impressions above a floor, brand queries dropped, wrong-page queries set aside as new-page candidates. The filtering runs in code, not by eyeball.
Clusters by what the searcher wants
Groups queries by the job behind them, not by shared words. “how much does X cost” and “is X worth it” are the same person. “emergency X near me” is not.
Writes the heading map
4-8 new sections per page, phrased the way people actually search, each one placed after a specific existing section and ranked by impressions × position gap.
Hands back a brief per page
A markdown file: snapshot, top three actions, cluster tables, the headings, title and meta rewrites, internal links, and the full query appendix.
The rules it actually runs
No black box. Every threshold is written down, and the filtering runs in code so the numbers in your brief match your export.
The striking-distance filter
- Position 5.0 - 20.0
- Above 5 you are already winning. Past 20 you usually need a different page, not a new section.
- Impressions floor
- 10 impressions over 90 days, or the 60th percentile of the set — whichever is higher. One-impression queries are noise.
- No brand queries
- Your company name, its misspellings, and “brand + login” never make it into a recommendation.
- Wrong-page queries split out
- A plumbing page picking up “hvac repair” is not a gap. It is a page you have not built yet — listed separately.
CTR underperformers
Position 5-10 earning far fewer clicks than that position normally does. That is a title and meta problem — no new content needed, and it usually moves fastest.
High-impression, position 15-20
The biggest upside on the sheet and the hardest lift. Flagged so you decide with your eyes open instead of finding out three weeks in.
What comes back, per page
- 1
Snapshot — URL, date range, impressions, clicks, near-miss query count
- 2
Priority actions — the top three, one line each
- 3
Intent clusters — queries, impressions, position range, verdict
- 4
Recommended headings — the heading, where it goes, what it must answer
- 5
Title / meta rewrites — current vs. proposed, with the reasoning
- 6
Internal links — pages that should point here, and the anchor to use
- 7
New page candidates — the queries this page should never have owned
- 8
Appendix — the full filtered near-miss query table
Headings are ranked by impressions × position gap — so if you only ship three of them, you ship the right three.
Clustered by the job, not the keyword
Grouping by shared words puts "X price" and "X near me" in the same bucket. They are two different people. These are the eight the skill looks for.
Cost / pricing
“how much does X cost”
Timing / urgency
“same day X”
Eligibility / fit
“does X work on my house”
Process
“what happens during X”
Comparison
“repair or replace X”
Trust / risk
“is X licensed and insured”
Local
“X near me”
Troubleshooting
“why is my X doing this”
Three ways in. All of them take a minute.
The download is one file — near-miss-seo/SKILL.md — bundled as a .skill for the Claude app and a .zip for everything else. Nothing to configure either way.
Claude Code
- 1Grab the .zip version and unzip it into your skills folder:
~/.claude/skills/ - 2Restart Claude Code — skills are discovered when the process starts, not per chat.
- 3Ask for it: "Run near-miss SEO on my top three service pages."
Claude app (web or desktop)
- 1Download near-miss-seo.skill — leave it as-is, do not unzip it.
- 2Open Settings → Capabilities → Skills and upload it.
- 3Start a chat with Search Console connected and name the page you want looked at.
No install at all
- 1Hit "Copy SKILL.md" and paste it as your first message.
- 2Works in any chat, or drop it into a Claude Project's instructions so every chat in that project runs it.
- 3Paste your GSC export underneath and let it work from that.
What it needs from you
Search Console data for the page — either a connected GSC tool or the queries CSV (the skill gives you the exact click path to export it) — plus the live URL so it can read the page it is judging. That is the whole setup.
What it will not do
Most of the damage AI does to a site comes from confident output nobody checked. These rules are in the file, not in a blog post about the file.
It never invents data
No GSC rows, no analysis. Positions and impressions are site-specific and unguessable, so it asks for them rather than estimating from general knowledge.
It does not promise rankings
The language is “closes the gap on these queries,” never “will rank #1.” Movement depends on competitors, links, and Google's own updates.
It respects what the page is for
A service page that converts does not become a 4,000-word blog post. If the near-miss queries are informational, it will tell you to build a supporting article instead.
It caps the additions
4-8 new sections per page. Twenty bolted-on H2s reads like a content farm and dilutes the topic you already rank for.
It checks itself before delivering
Re-reads the page to confirm every “missing” section is genuinely absent, traces every heading back to a real query, and spot-checks the numbers against your source data.
Before you run it
What is a Claude skill?
A markdown file of instructions Claude loads when the task matches. Instead of pasting a long prompt every time, you install it once and Claude picks it up whenever you ask for that kind of work. This one is a single SKILL.md file — you can read the whole thing before you run it.
Do I need Google Search Console access?
You need the data, not necessarily the connection. If you have a GSC tool connected to Claude it pulls the last 90 days itself. If not, the skill gives you the exact click path to export the queries CSV from Search Console and works from that instead.
How many pages should I run at once?
Five, maximum — and the skill enforces it. Clustering query intent against the actual copy on a page is judgment work, and it degrades fast when spread thin. Run your money pages first: the top three to five service or product pages.
Will this get me to position 1?
Nobody can promise that, and the skill is written not to. What it does is remove the reason a page is losing to the result above it: a question the searcher had that your page skipped. Whether that is enough depends on competitors, links, and the update cycle.
Does it write the new sections too?
By default it returns the heading map and the gap analysis — the headings, where each goes, and what each must answer. Ask for drafted copy and it will write the sections after you have signed off on the headings.
Is it actually free?
Yes. No email, no signup, no gate. Download it, read it, change it to suit your workflow. It is yours.
Rather have it done for you?
Near-Miss SEO closes the gaps on pages you already have. Locafy goes further — getting local businesses found in Google Maps, AI Overviews, and AI search, done for you and measured monthly.