Most guides to AI visibility open by telling you to write better content. We spent six weeks running this work on our own site, and content turned out to be the fourth thing worth checking, not the first. The first three are plumbing, identity, and sources, in that order, and skipping them is how companies spend a year publishing into a pipe that was never connected.
This is the order I would work in now, with what each step costs and the specific traps that cost us time.
One concession before anything else, because the category is full of people who will not make it: roughly 80% of this is good fundamental SEO. Clean structure, crawlable pages, real authority, pages that answer a question directly. If someone sells you answer-engine optimization as a new discipline that replaces the old one, they are selling you the 20%. The 20% is real, and it is worth understanding. It is not a new religion.
Can the engines read you?
Start with robots.txt, and read it group by group rather than as a whole. This is the check that cost us the most, and it is the one I have not often seen written down.
A crawler obeys the most specific group that matches it, and only that group. If your file has a wildcard group that disallows /admin and /api/, and then a named group for ClaudeBot that says nothing but Allow: /, then ClaudeBot is not covered by the wildcard restrictions at all. It has been granted everything. We found exactly this on our own site on July 25: ten named AI crawler groups, each one a polite invitation, and every one of them silently exempt from the restrictions the file appeared to set. The agents we most wanted reading our content were the only visitors explicitly admitted to the admin surface.
The fix takes five minutes. Repeat the disallow lines inside every named group. The lesson generalizes past robots.txt: a permission written in a more specific scope replaces the general rule; it does not add to it.
Then check index inclusion, which is a different question from crawler access and gets conflated with it constantly. An answer engine retrieves from a primary index, and usually that index belongs to somebody else. Copilot retrieves from Bing. Claude retrieves from Brave. If you are not in the index, nothing you publish can be cited, and no amount of on-page work changes that. We wrote about finding this on our own site in the piece about our most active crawler, so I will not repeat it here beyond the short version: check which indexes you are in before you optimize for the engines that read them.
Do the engines know which company you are?
This is the step that gets skipped, and for a lot of companies it is the whole problem.
Answer engines do not retrieve pages so much as entities. Before an engine can recommend you, it has to be confident about what you are, who you serve, and which of the several companies with similar names you happen to be. When that confidence is missing, the engine does one of two things: it skips you, or it guesses. Both look identical from the outside, which is why this problem hides.
Two versions of it are common enough to check by default.
The first is a name collision. Ask an engine a bare question about your brand name and see what comes back. If two or three companies share your name, the engine will often describe the largest or oldest one, and a buyer who heard about you once and asked an AI who you were has now been told about somebody else. The tell is a gap between your brand query and your specific query: search your name plus your category, and you look fine; search your name alone, and you are second or absent. That gap means you own your name only among people who already know which company they mean, which is the opposite of what visibility is for.
The second is a category collision, and it is the one that caught us. We describe what we sell as a 'managed agent'. As of mid-2026, that phrase collides with hosted-runtime products from Anthropic, Google, and IBM, all of them far larger than us. We were not competing for that term. We were invisible underneath it. We scored zero out of eight on our target questions, and the fix was not better content about managed agents. It was changing the frame we lead with to the staffing-agency description, which is language nobody else was holding.
The practical work here is unglamorous and cheap. One description of the company, used identically everywhere. Organization schema on the site. A Crunchbase entry, a complete profile on whichever review platform your category uses, a Wikidata item once those exist. You are not trying to rank. You are trying to give the engines enough corroborating signal to be confident about which entity you are.
One distinction worth making before you start, because it changes the fix. Ask an engine directly what your company is. If it answers accurately, you are not invisible; you are known and unrecommended, and that is an authority problem rather than an identity one. If it answers wrongly or vaguely, you have the identity problem described above. We were the first kind on our brand name and the second kind on our category, at the same time, which took a while to untangle.
Are you in the sources the engines quote?
Look at what an engine cites when it answers your category question. In our experience, it is rarely a vendor's own homepage. It is roundup articles, comparison posts, and Reddit threads.
That tells you where the work is. Getting into the roundups that already get cited is submission work and relationship work, not content work, and most of those publishers run open inclusion processes. A useful, non-promotional presence in the forums your buyers already use creates crawl paths a young site cannot create for itself.
There is also a blunter lever that I underrated until I watched a competitor use it on us. On the question our own service page was built to win, one vendor, OUTFRNT, is named in eleven of twelve cells across all four engines. We are named in none. Their advantage is not brand strength or budget. Their page is titled with the exact words of the question, and their URL slug is the same words again. The query is the title is the address. When an engine is assembling an answer, that page is the cleanest available match, and it gets taken.
That is worth sitting with, because it cuts against how most of us name things. Clever page titles lose to literal ones. If there is a question you want to be the answer to, the title of the page should be close to the words a person would type. This post is titled the way it is for that reason.
Can you tell whether any of it is working?
Here is where I would spend your skepticism, because this is the part the category is worst at and the part that decides whether everything above was worth doing.
Citation presence is a distribution, not a rank. On July 29, we asked one engine the same question three times, in identical conditions, minutes apart. It returned three substantially different lists of vendors. Of roughly ten companies named across the three runs, exactly one appeared in all three. If we had sampled once and written a report, we would have described a market that does not exist.
The rescue is knowing that absence and presence do not behave the same way. Your own absence is stable and low-variance: if you are not being cited, that holds run to run, and one sample is enough to see it. A ranked list of who is winning is not stable at all, and needs many samples before it means anything. Any report that treats those two the same is telling you something it cannot know.
Three more failures worth guarding against, all of which we walked into on our own data.
Verify the instrument before you read a zero as a finding. We nearly concluded that a major search crawler was ignoring us, based on six weeks of silence in our logs. The crawler was not on our logger's list of names to watch, so the silence carried no information at all. An unverified zero is not evidence.
Watch for the model that answers without searching. Asking an engine's API to use web search is permission, not compulsion. We have watched a model decide it could answer a question from memory, skip retrieval entirely, and return an answer with no sources. A naive scoring rig marks that as "you were not mentioned," which is a false zero: it measured the model's training data, not its retrieval, and those are different questions.
Beware one word meaning two things. In a single day we found four separate cases in our own measurement where a label carried two definitions. A question logged under five spellings. A metric joined to a numbering that had changed. A "tracked competitor set" that meant different things in two documents. A vendor name covering two products whose prices differ by fifty times. None of them produced an error. Each produced a confident, wrong number. That is the signature of this class of bug, and it is why I would rather a client's report say fewer things and mean them.
Last, ask what surface a number was measured on. Some tools capture by driving a real browser session, some by calling model APIs. They retrieve differently and do not always agree. Neither is wrong exactly; they are different measurements, and a number without a stated surface is not yet a finding.
Current view, subject to change
My view is that the API and browser measurement surfaces diverge enough to matter, and that most of the industry is quietly picking one and reporting it as the truth. I hold that loosely, because I have not thoroughly measured it myself yet. We are running that comparison in August, same questions, same day, both surfaces. If the gap turns out to be small, I will have been wrong in an expensive direction and will say so.
Final thoughts
The hardest part of this work is not any of the four steps. It is the gap between when the work lands and when it shows.
Crawlers arrive within days. Index inclusion takes weeks. Citations follow the index, sometimes by months. Our own site has been running this since mid-June with crawler traffic climbing the whole time and category citations still at zero. That is not a failure state; it is the shape of the curve, and knowing it in advance is the difference between a program that gets abandoned in month three and one that works.
Which suggests the sequence for anyone starting. Fix the plumbing, because it is cheap and it gates everything. Fix the identity, because it is cheap and most companies need it. Then earn sources. Then write. And measure the whole way, carefully enough that you can tell the difference between nothing happening and something happening slowly.
Regards,
Charles Stack