$3M of SEO advice. All 20 moves, unpacked.
Sixty seconds is enough to say what to do and nowhere near enough to say how. So here is the whole list — every move from the video, with the paragraph that didn't fit, in the order I'd do them. Plus the free tool that tells you whether any of it worked.
Nothing to sign up for. The checklist copies as plain text, the tool runs in about a minute.
What is the free tool for tracking AI share of voice?
It's the AI Prompt Coverage Report — 25 buyer-intent questions for your category, run live against ChatGPT, Perplexity and Gemini, scored on how often you're the answer and who gets named when you're not. That's move 18 on this list, and it's the one you can finish before you finish reading.
25 questions your buyers actually ask
It generates the real buyer-intent prompts for your category and city — the price shoppers, the emergencies, the comparisons, the open-now searches — instead of you guessing at five.
Run live across three engines
Every question goes to ChatGPT, Perplexity and Gemini. Up to 75 live answers get scanned for your business name, so the number is measured rather than modelled.
Your share of voice, and who has the rest
You get a coverage score, the rate per engine, the competitors named where you aren't, and the list of questions you are invisible for — which doubles as the content plan.
This is the audit AI-visibility platforms charge $200+/mo to run on a schedule. Your snapshot is free.
Twenty moves, five jobs
In video order. The first four change how you write, the next three change whether you can be read, and the last five change what you report on Monday.
How do you write a page an AI answer engine can quote?
Write in liftable chunks: one question, one answer, one claim. Answer engines retrieve a passage, not a page, so the unit you are optimising is the paragraph sitting directly under a heading — and it has to survive being read entirely on its own, with no run-up and no page around it.
- 1
Front-load your answer in the first sentence.
Answer in the first 25 to 30 words, then explain. Write the sentence you want quoted back at you, put it first, and let the justification follow underneath. A chunk that opens by setting context never gets picked, because the model reads the opening and moves on.
- 2
Put the question in the H2 and the answer directly underneath.
Make the heading the literal question a buyer types, and make the next paragraph the answer. The heading is what gets matched; the paragraph under it is what gets quoted. Anything wedged between them — a stat, an image, a 'before we get into it' — breaks the pair and costs you the citation.
- 3
Make one claim per section. Split any paragraph doing two jobs.
One idea, one paragraph. Retrieval scores a passage on how completely it answers one thing, so a paragraph doing two jobs half-answers both and loses to the competitor who split them into two. When you catch yourself writing 'and also' or 'that said' mid-paragraph, that is the split point.
- 4
Cut your waffly intros.
Delete the first paragraph. 'In today's fast-paced digital landscape' is not a chunk — it dilutes the section that has to carry the answer and pushes the real answer further from the heading it belongs to. If the page still makes sense without it, it was never doing a job.
Why do good pages still get skipped by AI Overviews?
Usually because the answer isn't retrievable, not because it isn't good. A snippet directive, a rendering dependency, or a page built for the head term instead of the sub-question will each keep a page out of an answer it deserves to be in — and none of the three show up in a rank tracker.
- 5
Rank for the fan-out queries, not the head term.
AI search decomposes one question into a fan of sub-queries and retrieves against each one separately. Target the fan: cost, how long it takes, what's included, versus the alternative, is it worth it, near me. One page aimed at the head term loses to a set of pages that each own a sub-question outright.
- 6
Fix your nosnippet and data-nosnippet directives.
Audit every nosnippet, data-nosnippet and max-snippet:0 on the site. They tell Google not to display the passage, which also takes it out of AI Overview candidacy. Most were added years ago to stop scrapers or to hide a price, and they are now the reason your single best answer never appears anywhere.
- 7
Render-check every page.
Look at the page the way a crawler does, with JavaScript disabled or through Search Console's live URL inspection. If your answer only exists after hydration, some crawlers never see it — AI crawlers are markedly less patient about executing JavaScript than Googlebot is.
What makes a model treat your brand as a real entity?
One consistent name, corroborated by sources you don't own. Models resolve entities by matching strings across independent documents, so identical naming plus third-party coverage moves your AI visibility further than another blog post on your own site ever will.
- 8
Keep your entity name and descriptors identical everywhere.
Pick one name and one descriptor, then use them character-for-character on your site, Google Business Profile, LinkedIn, Crunchbase, directories and every press mention. 'Acme', 'Acme Inc.' and 'Acme Ltd' can resolve to three weak entities instead of one strong one, and you carry the cost of that split forever.
- 9
Claim your Wikidata entry.
Create or claim the Wikidata item and fill it with sourced properties — founded, headquarters, industry, official site, key people — each citing independent coverage. Wikidata is the spine several knowledge graphs hang off, which makes it the cheapest way to become a resolvable entity. It has real notability rules, so bring the coverage before you bring the edit.
- 10
Get onto the comparison pages you don't own.
Find the 'best X in your city' and 'X vs Y' pages already ranking, and get yourself added to them. Answers to comparison prompts are assembled from those roundups, not from your own site — so being missing from the list is being missing from the answer, no matter how good your page is.
- 11
Pitch digital PR on topical relevance.
Pitch the publications that already cover your subject rather than the highest-authority one that will take you. Whether the citing page is genuinely about what you do is what makes the link count now, and it is also what makes the mention usable as a source when a model builds an answer.
How do you keep a site earning citations after it's built?
Maintain the corpus on a schedule: refresh it, date-stamp it, add something nobody else has, and delete what's dead. Answer engines lean heavily toward content that looks currently maintained, and every decayed page you keep drags the topical signal of the pages you care about down with it.
- 12
Refresh old posts on a schedule.
Put a recurring date on every page that earns money, and hold it. A quarterly pass over your top 20 pages beats a new post nobody reads, because the pages already being retrieved are the ones where a fix compounds. 'When we get around to it' is not a schedule.
- 13
Add a changelog line and republish.
When you update a page, say what changed and when, on the page itself: 'Updated 8 September 2026 — added 2026 pricing and the new turnaround times.' It gives crawlers a reason to re-fetch, gives readers a reason to trust the numbers, and gives you an audit trail of what you actually changed.
- 14
Publish original data.
Publish one number nobody else has — a survey of your customers, an analysis of your own book of business, a benchmark pulled from your own logs. Original data is the only content type that reliably gets cited by people who have no reason to like you, and citations from strangers are the ones that count.
- 15
Kill your decayed pages.
Delete or consolidate the pages with no clicks, no links and no job. A thin page doesn't just fail to rank; it dilutes what the site is understood to be about and spends crawl budget your best pages need. Redirect where there's a real match, and remove where there isn't.
What should you actually be measuring now?
Measure citations, share of voice and AI crawl — not rankings and sessions. AI search answers the question inside the results, so your influence can be growing while your traffic falls. A report built on sessions will tell you the exact opposite of what is happening.
- 16
Log your GPTBot and ClaudeBot hits.
Grep your server logs for GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot, Google-Extended and Bingbot, and count hits per page. Crawl is the leading indicator: a page the AI crawlers never fetch can never be cited, so the pages missing from that log are your citation blind spot. There's a prompt below that does the whole audit.
- 17
Track citations and mentions, not rankings.
Count how often you are named in the answer. Position three for a head term is worth less than being the cited source inside an answer that actually gets read, and the two numbers move independently — which is why a rank tracker can look flat through the quarter your AI visibility doubles.
- 18
Track share of voice across a prompt set.
Fix a set of about 25 buyer questions, run them monthly, and measure how often you are the answer against how often each competitor is. One prompt is noise; a fixed set repeated over time is a metric. This is the one thing on the list you can start measuring in the next 60 seconds — see the free tool above.
- 19
Build brand demand off site.
Spend on being talked about: podcasts, YouTube, communities, PR, events. Branded search and named mentions are the inputs that make a model reach for you by default, and they are the part of AI visibility a competitor cannot copy off your page.
- 20
Stop reporting traffic as the win.
Report pipeline. If sessions are the headline number on your report, AI search will look like a failure right up until the quarter it becomes one — because answers delivered without a click show up as lost traffic and nothing else. Report the leads, the calls and the revenue, and let sessions be a diagnostic.
Which pages have AI crawlers never fetched?
Your access log already knows. Pull the AI crawler traffic out of it with the command below, hand the result to Claude or ChatGPT with this prompt, and you get the pages being fetched, the pages being refused, and the indexable pages no AI crawler has ever seen.
First, pull the AI crawlers out of your access log
grep -iE 'GPTBot|OAI-SearchBot|ChatGPT-User|ClaudeBot|Claude-User|Claude-SearchBot|PerplexityBot|Google-Extended|Bingbot' access.log > ai-crawlers.log
Then paste this with the log file attached
376 words · paste straight into ChatGPT
You are a technical SEO analyst. I am giving you my server access logs. Work out whether AI crawlers can actually see my site, and which of my pages they have never fetched. STEP 1 — Isolate the AI crawlers Count hits per crawler per week for each of these user agents: - GPTBot, OAI-SearchBot, ChatGPT-User (OpenAI) - ClaudeBot, Claude-User, Claude-SearchBot (Anthropic) - PerplexityBot, Perplexity-User - Google-Extended (Gemini grounding) - Googlebot and Bingbot as the baseline to compare against - Amazonbot, Applebot-Extended, meta-externalagent, Bytespider STEP 2 — Check what they got served Break each crawler's hits down by status code. Flag any crawler where 200s are under 90% of its hits, and list the exact URLs that returned a 3xx, 4xx, 5xx or 429 to an AI crawler. A 429 to GPTBot is a rate limit you are imposing on your own citations. STEP 3 — Find the coverage gap Compare the URLs the AI crawlers fetched against my sitemap at SITEMAP_URL. List every indexable URL that Googlebot has fetched and no AI crawler has. That list is my citation blind spot, in priority order. STEP 4 — Check what I am blocking Read my robots.txt at ROBOTS_URL. Tell me which of the crawlers above I am blocking, deliberately or by accident, and what each block costs me. Call out Google-Extended specifically: blocking it removes me from Gemini grounding and does nothing for my Google rankings either way. STEP 5 — Give me the verdict Return, in this order: - A table: crawler | hits | unique URLs | % 200 | last seen - The 10 pages AI crawlers fetch most often (these are the ones getting cited) - The 10 indexable pages no AI crawler has ever fetched - The three fixes, in the order I should do them, with the reason for that order RULES - Use only what is in the log. If a crawler has zero hits, say zero — do not infer. - Where the log has IP addresses, verify the user agent against each vendor's published IP ranges before you count it. A lot of traffic calling itself GPTBot is not. - Ignore anything that is not one of the crawlers above. - No preamble. Start with the table.
The user agents worth counting
- GPTBot
- OpenAI training crawl
- OAI-SearchBot
- ChatGPT search index
- ChatGPT-User
- a person clicking through inside ChatGPT
- ClaudeBot
- Anthropic training crawl
- Claude-User / Claude-SearchBot
- Claude browsing and search
- PerplexityBot
- Perplexity's index
- Google-Extended
- Gemini grounding and training
- Bingbot
- Copilot, which rides on Bing's index
No server logs? Cloudflare, Vercel and most CDNs expose the same data under bot or crawler analytics — export a month and feed that in instead. If you find you are blocking Google-Extended, know what you are choosing: it removes you from Gemini grounding and changes nothing about how you rank in Google Search.
Which four should you do first?
Measure, unblock, rewrite, then go off-site — in that order. Doing it the other way round is how people spend a quarter rewriting pages that a directive was hiding the whole time.
Find out if you're visible at all
Run the prompt coverage report and the crawler log audit on the same afternoon. One tells you whether AI answers name you; the other tells you whether AI crawlers can even reach you. Everything after this is guesswork without both numbers.
Unblock what you're blocking
Moves 6 and 7. Audit every nosnippet and data-nosnippet directive, then render-check your top 20 pages with JavaScript off. These are the fastest wins on the list because the content already exists — it just can't be read.
Rewrite the top 20 pages as chunks
Moves 1 to 4 on the pages that already earn. Question in the H2, answer in the first sentence underneath, one claim per section, waffly intro deleted. Do the pages being fetched, not the ones you wish were.
Start the off-site work that compounds
Moves 8 to 11 and 14. Standardise your name everywhere, claim Wikidata, get onto three comparison pages you don't own, and commission one piece of original data. This is the half that takes months, which is why it starts now.
The ones I always get
Do I have to do all 20?
No — do 6, 7 and 16 first. The nosnippet audit, the render check and the crawler log are diagnostics: they tell you whether anything else on the list can even be seen. It is common to find that the reason a page never gets cited is a directive somebody added in 2021, and no amount of rewriting fixes that.
Is this AEO or SEO?
It is one job now. Answer engines retrieve from the same index and the same pages that classic search ranks, so writing extractable chunks and fixing your entity data improves both. The part that genuinely differs is measurement — citations and share of voice behave nothing like rankings, which is why moves 17 to 20 exist.
Which free tool tracks share of voice?
The AI Prompt Coverage Report at locafy.com/ai-visibility-report. It generates 25 buyer-intent questions for your category, runs every one live against ChatGPT, Perplexity and Gemini, and reports how often you are named versus your competitors. It is free, it takes about a minute, and it is the tool from the video.
How long before any of this shows up in AI answers?
Expect weeks for the on-page moves and months for the entity and off-site ones. A rewritten page can be re-crawled and re-cited within a fortnight; Wikidata, comparison-page placements and digital PR need to be picked up, corroborated and then carried into the next crawl before they change how a model sees you.
Won't deleting decayed pages cost me traffic?
Only if you delete the wrong ones. Pull the pages with no clicks, no impressions and no referring domains over the last six months, redirect the ones with a genuine replacement, and remove the rest. The traffic you lose is traffic that was not converting, and the topical clarity you gain lifts the pages that were.
Rather have it done for you?
The checklist tells you what to fix. Locafy does the fixing — we get local businesses named in Google Maps, AI Overviews and AI search, and we report share of voice instead of sessions.
More from the videos: five Search Console prompts, the Master Prompt for titles and metas, or Missing Sections for the fan-out gaps in move 5. The Search Swipe File has the operators and schema types this list assumes you already have.