🚀 Launch Offer: 20% off your first year for new customers with code WPCWP20 — until 31 October 2026
WPCWP

Home / LLM SEO for WordPress

LLM SEO for WordPress sites

Ranking and being quoted are now separate problems. This covers both: how models get your content, what to change in a WordPress install, and how to tell whether it worked.

What LLM SEO means

LLM SEO is optimising so a large language model can find your pages, read them, and quote them without getting you wrong. It is not a different discipline bolted onto SEO so much as a different success condition: you are no longer competing for a position on a results page, you are competing to be the sentence inside somebody's answer.

A page can be crawled, indexed, ranking respectably, and still never cited. That gap is the whole subject.

Two ways a model can know about you

The first is training. Your text was in the data a model learned from, so it may describe you without looking anything up. You cannot schedule this, cannot verify it, and cannot correct it — if a model learned something wrong about you in training, you wait for the next one.

The second is retrieval. The assistant runs a search, fetches pages, reads part of each and writes an answer citing them. This happens live, responds to changes within days, and is the path you can actually influence.

Almost everything worth doing targets retrieval. Anyone promising to get you "into the training data" is selling you something they do not control.

Being retrievable

robots.txt is the first thing to check

Blocking a training crawler and blocking a search crawler look nearly identical and have opposite consequences. Confirm which agents you allow before concluding anything else is wrong.

Server-rendered HTML

Retrieval fetches HTML and does not reliably run JavaScript. Fetch your own page with a plain HTTP request and look for a distinctive sentence from the article. If it is not there, the crawler cannot see it either.

Speed, because fetches time out

Ordinary performance work — caching, image sizes, fewer plugins — and it pays off in more than one place.

No orphan pages

A page nothing links to is a page the search step is unlikely to surface, however good it is.

Being quotable

The answer goes first

Retrieval reads a chunk, not the document. An answer in paragraph six may not be in the chunk that gets read. Put it up front and explain afterwards — human readers prefer this too.

Sections that stand alone

Each H2 section should make sense as the only thing anyone read, which sometimes means repeating a noun where you would have written "it".

Specifics over adjectives

A number, a version, a named limit. "Significantly faster" is unquotable because it is indistinguishable from every competitor's claim.

Dates, kept honest

A visible date and a dateModified help a model pick between sources. A stale page stating last year's facts gets quoted as written, which is worse than having no page.

Writing for extraction, concretely

"Write for extraction" is vague advice, so here is what it actually means when you are editing a post in WordPress.

  • Use headings as structure, not styling. H2 and H3 are chunk boundaries now. Skipping from H2 to H4 because it looked better fragments the page in ways that show up in what gets extracted.
  • One idea per section. A section covering three things gets chunked mid-thought and none of the three survives intact.
  • Front-load each section too, not just the article. The first sentence under a heading is doing the most work.
  • Expand pronouns near section starts. "It" is unresolvable when the previous paragraph is not included.
  • Put recurring questions in a real FAQ, with the answer directly under the question and both visible on the page. Question-and-answer pairs are close to ideal retrieval shape because they match how people prompt.
  • Write the excerpt on pages that matter. An auto-generated one truncated mid-sentence is sometimes the thing that gets read.

Schema that agrees with the page

Structured data does not make a model rank you higher, as far as anyone outside these companies can tell. What it does is remove ambiguity about the price, the author, the date and the organisation — facts a model would otherwise infer from prose, sometimes wrongly.

Four types cover almost everything: Organization for who you are, Article for anything written, FAQPage where questions are genuinely visible on the page, and Product or Offer if you sell something and want the number stated correctly.

The rule that matters most is that schema must describe what is actually on the page. Markup contradicting your visible text teaches a model that your structured data is unreliable, and it has no way to tell which half to trust. Most SEO plugins emit Organization and Article already, so check your page source before adding a second copy — two Organization blocks give a parser two competing answers.

Being one identifiable thing

Ask an assistant "what is [your company]?" in a fresh conversation. If the answer is vague, hedged, or describes someone else with a similar name, no amount of keyword work will fix it — the problem is that you have not resolved into a single thing.

Three fixes, in order of value. Write one canonical sentence describing yourself and use it everywhere, word for word. Pick one canonical name and stop using the abbreviation, the product name and the domain interchangeably without connecting them. Then corroborate: an entity is confirmed by independent sources agreeing, so a plugin directory listing, a repository or a well-kept profile is worth more than another page on your own site saying the same thing.

Where a third party has you wrong, fixing that usually beats writing something new. A stale directory entry with your old pricing will be read and quoted.

WordPress specifics

One canonical page per topic

Near-duplicates targeting keyword variants split your evidence and leave nothing obviously canonical to cite. Consolidating three thin posts into one good one is real work that pays.

Audit before you add

Your archive is full of pages stating things that are no longer true. Each is a liability that will be quoted verbatim.

Check what your theme actually outputs

View source on a real post. Heading levels, dates and schema are frequently not what the editor implied.

Mind the plugin stack

Two SEO plugins emitting competing JSON-LD, or a builder rendering body text client-side, will quietly undo the rest of this.

Measuring, honestly

Nobody has good measurement here yet, and it is worth saying so plainly rather than pretending a dashboard solves it.

  • Ask the assistants directly, monthly. Same questions, answers recorded. Watch three things: whether the description is yours, whether the facts are current, and whether you get confused with anyone.
  • Referral traffic from assistant domains. Real, and a large undercount, because the answer usually satisfies the person without a click.
  • Crawler hits in your access log. Proof of reachability only. A bot you believed you allowed not appearing at all is a robots.txt problem, not a content problem.

Anyone selling a definitive AI visibility score is selling an estimate. Treat it as one.

Where the plugin fits

Generated drafts arrive with real heading structure and sections written to survive being read on their own, which is the shape retrieval wants. The fact-checking pass flags claims it could not verify rather than rewriting them into confident prose — the failure mode that turns a citation into a liability.

The rest of this page is site work rather than plugin work, and we would rather say that than imply otherwise.

Further reading: what LLM SEO is, how ChatGPT chooses sources, entity SEO and llms.txt.

Questions

What is LLM SEO?

Optimising so large language models can find, read and accurately quote your pages. In practice it is two jobs: being retrievable, so the search step reaches you, and being quotable, so your sentence is the one that gets used.

How is it different from normal SEO?

It overlaps heavily — crawlability, speed, structure and accuracy serve both. What is new is writing for extraction, controlling which AI crawlers may read you, and the loss of ranking data to measure against.

How do I measure it?

There is no Search Console for this. You have three imperfect signals: asking assistants the same questions on a schedule, referral traffic from assistant domains, which undercounts badly, and crawler hits in your access log, which prove reachability and nothing more.

Do I need an llms.txt file?

No vendor has committed to reading it and there is no public evidence it is weighted today. It is cheap and harmless, so publish one if you like, but after the things that matter rather than instead of them.

Does schema markup help?

Not as a ranking signal, as far as anyone outside these companies can tell. What it improves is accuracy: the price, author and date a model states about you are likelier to be right. On a pricing page that is worth more than a small ranking nudge.

Should I block AI crawlers?

Only after understanding that one company runs several agents doing different jobs. Blocking a training crawler keeps you out of the next model; blocking a search or user-fetch crawler keeps you out of today's answers. People who wanted the first often did the second by accident.

Get the technical detail

Crawler control, schema and entity consistency, each with the WordPress specifics rather than general advice.

Open the knowledgebase