Most sites cannot be read by the models answering questions about them
Before you worry about being cited, check whether the crawler gets a page at all. Four failures we find on almost every site we scan, in the order they cost you points.
There is a lot of advice about earning mentions, and much less about the step before it. A model cannot cite a page it never successfully read. On most of the sites we scan, the interesting problems are not competitive — they are mechanical, and they are invisible in a browser because a browser is not what is doing the reading.
Here are the four we find most often, in roughly the order they cost points.
1. The page is empty without JavaScript
Most AI crawlers do not execute your JavaScript. A client-rendered site hands them a shell: a <div id="root">, a script tag, and nothing else.
You will never notice this manually, because your browser runs the script and shows you a full page. Disable JavaScript and load your most important page. If what remains is a spinner or an empty container, that page currently does not exist for a meaningful share of the systems answering questions about you.
This is usually the single biggest points swing we find, and the fix is not subtle: server-render the pages that carry the answers.
2. robots.txt blocks the AI crawlers by omission
Almost every robots.txt we read was written for search engines, years ago, and has not been revisited since answer engines started mattering.
The failure is rarely a deliberate block. It is a blanket Disallow under a wildcard, or an allowlist that names Googlebot and Bingbot and simply never anticipated the others. The result is the same either way. GPTBot, ClaudeBot, PerplexityBot and Google-Extended are separate agents with separate names, and being welcoming to Googlebot says nothing about any of them.
Check each one by name. You may be turning away the exact traffic you are trying to win.
3. The model cannot tell that two mentions are you
A model reading about "Northwind", "Northwind Logistics" and "northwind.no" has to work out that these are one company. Without help, it often does not.
The help is unglamorous: an Organization node in your structured data, sameAs links pointing at the profiles that corroborate you, and pages that state plainly what you do and where you operate. This is consistently the cheapest part of a score to move, because most sites have none of it and the work is measured in hours.
4. Your pages answer a different question than the one being asked
This is the one that survives all the technical fixes and still keeps you out of the answer.
Models lift sentences, not pages. A page that opens with "Founded in 1998, we are a leading logistics partner committed to excellence" has given a model nothing to quote about transit times. A page that opens with "Oslo to Hamburg takes 34 hours door to door" has.
Both pages can rank. Only one of them gets carried into an answer. When we compare a client against the competitor beating them, the gap is usually this — not budget, not domain authority, just which sentence is first.
Where to start
In order: make sure the crawler gets a page, make sure it is allowed to, make sure it can tell who you are, then make sure the first line answers the question.
That order is not arbitrary. Each step is worthless if the one above it is broken, which is why a ranked fix list beats a list of everything wrong with your site. You can check all four on your own domain in about twenty seconds, free, without an account.