Check robots.txt before anything else
A single line silently undoes every other thing on this page. It is also the cheapest thing to get wrong, because the agent names look similar and do completely different jobs.
WPCWP20 — until 31 October 2026
Home / GEO for WordPress
Being found now includes being cited by assistants that answer without showing a list of links. This page covers what GEO is, what actually helps, what does not, and how to tell whether any of it worked.
Generative engine optimisation is the work of making an AI assistant describe you accurately and cite you when it answers a question in your field. The unit of success is not a position in a list. It is whether your name appears in a paragraph somebody reads instead of visiting a search page at all.
It splits into two jobs that get conflated constantly. Being retrievable means the lookup step can reach your page. Being quotable means that once it has your page, your sentence is the one it uses. Most advice covers the first and skips the second, which is why sites get crawled regularly and still never appear in an answer.
When an assistant answers something current, it usually does three things in sequence. It runs a search to find candidate pages. It fetches some of them and reads a portion of each — a chunk, not the whole document. Then it writes an answer from what it read, citing some of the sources.
Every one of those steps is a place you can be eliminated. A robots.txt rule removes you at step one. A page that needs JavaScript to render removes you at step two. Vague, hedging prose removes you at step three, because there is no sentence worth quoting.
This is why GEO work feels scattered: it is three different problems wearing one name.
A single line silently undoes every other thing on this page. It is also the cheapest thing to get wrong, because the agent names look similar and do completely different jobs.
Retrieval fetches your HTML and does not reliably run your JavaScript. If the article body only appears after a script executes, the fetched page can be an empty shell. Standard WordPress themes are fine; heavy page builders are where this bites.
Fetches happen under a timeout. A page that takes eight seconds may simply not be there when the answer is assembled.
Soft 404s — a "not found" page served as 200 — teach a crawler that your missing pages are real content, and that your signals cannot be trusted.
The mistake almost everyone makes is treating these as one switch. A single company runs several agents doing different jobs, and the consequences of blocking them are not remotely the same.
| User agent | Operator | What it does | What blocking it costs you |
|---|---|---|---|
GPTBot |
OpenAI | Training collection | Your text is not in the next model. No effect on answers today. |
OAI-SearchBot |
OpenAI | Search index behind live lookups | You are absent from citations, because the lookup cannot find you. |
ChatGPT-User |
OpenAI | Fetch triggered by a user | Someone who explicitly asked about your page is told it cannot be read. |
ClaudeBot |
Anthropic | Training collection | As GPTBot. |
Claude-SearchBot, Claude-User |
Anthropic | Search and user fetch | As the OpenAI equivalents. |
PerplexityBot |
Perplexity | Indexing for its answer engine | You are absent from its citations. |
Perplexity-User |
Perplexity | Fetch for a specific question | The asked-for page cannot be read. |
Google-Extended |
Not a crawler — a robots.txt token | Content already crawled is not used for Gemini training. Search is unaffected. | |
CCBot |
Common Crawl | Open archive many training sets use | You are excluded from that archive. |
Vendors add, rename and retire agents, so treat this as a starting point and check the current documentation before committing a policy. Two further points: directives are matched per user agent, so a group you do not name falls through to your User-agent: * rules; and robots.txt is a request rather than a control. Named crawlers from large vendors honour it, anonymous scrapers do not, and nothing in a text file protects content that should not be public.
A common position is to allow the search and user-fetch agents while declining the training ones. That keeps you citable today and out of the next training run, which is what most people actually want when they say they want to "block AI".
A chunk of your page gets read, not all of it. If the answer to your own headline arrives in paragraph six after a warm-up about how the landscape is evolving, the chunk that gets read may not contain the answer at all.
A chunk is extracted without its neighbours. A section beginning "as mentioned above, this means" is useless out of context. Each section should make sense as the only thing anyone read.
"Improves performance significantly" is interchangeable with any competitor's claim. "Cut time-to-first-byte from 800ms to 180ms" is something only you can be cited for. Numbers, versions and named constraints are hooks; vague claims are not.
A visible date and a dateModified help a model choose between sources on a time-sensitive question. The corollary matters more: a stale page confidently stating last year's price will be read and quoted exactly as written.
Two pieces of structured work do most of the heavy lifting, and neither is a ranking trick. Both exist to stop a model guessing.
sameAs pointing at profiles that describe the same entity elsewhere. This is the anchor everything else hangs from.The rule that governs all of it: structured data must describe what is actually on the page. A model that finds markup contradicting your visible text has learned your markup is unreliable and cannot tell which half to trust. You are better off with no schema than with schema that disagrees with your own page.
These are estimates built on sampling. Useful as a rough trend, worthless as a target to optimise against, and nobody selling one has access to the ranking signals.
This is the behaviour search engines specifically act against. It also gives a retrieval pass more of your pages to choose between rather than better ones.
Retrieval matches meaning rather than exact strings. Repetition costs readability and buys nothing.
Fixing a page that contradicts your current pricing is routinely worth more than writing a new article, and almost nobody does it first.
There is no Search Console for this. You have three imperfect signals, and it is worth being clear about what each one can and cannot tell you.
Start with the first one before changing anything, so you have a baseline. Fifteen minutes now saves you guessing later about whether a change did anything.
We will not tell you a plugin makes you appear in AI answers, because no one controls that and the honest version is more useful to you.
What WP Content Writer Pro contributes is the content half: drafts with heading structure that works as chunk boundaries, sections written to stand on their own, and a fact-checking pass that flags claims it could not verify instead of smoothing them into confident prose. That last one matters here more than anywhere else — a confident wrong sentence is exactly the thing that gets quoted.
Crawler policy, schema and entity consistency are site-level jobs. They are not hard, they are mostly done once, and no plugin should claim to have done them for you.
Further reading: what GEO is, the crawlers in detail, and schema markup for AI search.
Generative engine optimisation. It is the work of being found, described accurately and cited when someone asks an AI assistant a question, rather than ranking in a list of links.
No, and nobody can. There is no submission process, no ranking dashboard and no vendor commitment to honour any particular signal. What you can do is remove the reasons a model would skip you or describe you wrongly.
It overlaps heavily. Crawlability, speed, clear structure and accuracy serve both. What is new is writing for extraction, deciding which AI crawlers may read you, and losing the ranking data you would normally measure against.
For live retrieval, as fast as your pages are re-crawled, which can be days. For what a model knows without looking anything up, that depends on training runs you cannot see or schedule around.
It depends what your content is for. If the content is the product, blocking training crawlers is defensible. If it exists to market something else, blocking removes you from the answers people now ask instead of searching.
It does the content half: drafts with real heading structure, sections that survive being read on their own, and a fact-checking pass that flags what it could not verify. Crawler policy, schema and entity consistency are site-level jobs you do once.
Ask the assistants your customers' questions, record what comes back, and fix what is wrong before changing anything else.