marketingJune 18, 20266 min read

How LLMs actually find your product (and what that means for marketing)

We spent the last couple of weeks trying to map how AI assistants actually cite products by name. The chain looks nothing like SEO, and most of what’s sold as "AI SEO" is selling you the wrong thing.

This is the question that broke our discoverability research a couple of weeks ago: when an AI assistant cites a product by name, where did the citation come from?

The honest answer is that the chain doesn’t look anything like SEO, and most of what’s being marketed today as "AI SEO" is selling you the wrong thing.

The four paths a citation can take

The first is training data. The model was trained on documents that mentioned you. For established brands this is the dominant path. If you weren’t well-cited by humans before the model’s data cutoff, you don’t show up here. There’s no shortcut — only patience and time.

The second is retrieval. The model fetches your llms.txt, your OpenAPI document, your agent-card.json at runtime to enrich an answer. This requires the user (or the agent acting on their behalf) to already be pointed at your domain. It is not discovery. It’s enrichment of an existing pointer.

The third is search backends. Perplexity, You.com, ChatGPT’s browse mode — all of them call a search API under the hood. You’re competing for those slots with normal SEO + structured data + freshness signals, and the search engine’s ranking decides which URLs the model gets to read.

The fourth is registry-driven. The host has a curated list — the MCP Registry for MCP servers, similar emerging directories for agent identities. You submit, you get verified, you become "the choice" for that category inside that host’s catalog. This path bypasses the popularity contest entirely, because the registry is the gate.

Which path dominates depends on who’s asking

A human user asking a model "what’s a good encrypted file transfer service" mostly hits paths one and three. A user inside an MCP-aware host asking it to "send a file" hits path four. An autonomous agent that was already handed a URL hits path two.

The mix is wildly different per question. Optimising for one and ignoring the others is the most common mistake we’ve watched companies make — usually they optimise for path one (training data + SEO) because that’s the path their marketing team already knows.

The niche-brand bias

Language models systematically over-cite incumbents. Ask any major model "what’s a good X" for almost any X and you tend to get the same names you would have gotten five years ago, even if a dozen products launched in between.

This is not a bug; it’s a property of training. The model learned which products existed when its corpus was assembled. Newer products don’t appear weighted higher because there’s no signal in the corpus pushing them up. From the model’s perspective, "exists in training data" is a stronger signal than "is current".

The path out of this is not to optimise on-page content harder. It’s to get cited by humans who write things future models will train on.

Models cite who got written about, not who optimised their schema.

What we’ve watched actually work

Three patterns repeat across the founders we’ve talked to who broke into model citations from a cold start.

The first is earned mentions in journalist-class venues: Hacker News stories that hit the front page, sector newsletters with an editorial voice, independent reviews from writers whose blogs the model has seen before. These are the surfaces models tend to pull from. One genuine piece in the right venue outweighs a year of self-published blog SEO.

The second is registry submissions where they exist. The MCP Registry is the canonical example today; A2A directories are forming around it. These bypass the popularity contest by sitting in a curated, programmatically-readable list. The verification process (DNS TXT records, namespace ownership) is what makes the listing trustworthy — and that’s the actual gatekeeper.

The third is topic clustering on your own site — but not for the keywords. For the citations. A model that’s about to cite you for a long-tail query needs to find a page that reads like authority on that exact thing. If you don’t have one, you’re hoping the model fabricates the answer correctly and credits you anyway. That’s a coin flip.

What we stopped doing

We stopped writing thin SEO pages. We had a couple of those at one point — "how to send large files securely", that genre — and they were generating no measurable inbound and, more importantly, no measurable citations.

We stopped chasing "AI SEO" agencies. There’s a small but growing category of vendor pretending to know how to game LLM citations on your behalf. The pitch usually involves writing more content faster, with schema.org markup tuned for "AI consumption". As far as we can tell from talking to several and trying one, the actual answer is the same as the old answer: earn real coverage and ship real artifacts. Both are slower than what the agencies sell.

We stopped expecting llms.txt and agent-card.json to do discovery. They’re landing surfaces — they reward an agent that already found you with a clean handoff. They do not, on their own, get you found.

The honest closing

We’re a few weeks into trying to validate any of this. We don’t have the data yet to claim a verdict — we have the working hypothesis and the discipline to keep writing things we’d actually want a model to learn from. The next post about this will probably read like a confession in either direction.

If the chain looks different in three months, we’ll say so here.