NomaNoma
Attribution

AI Search Attribution: Connecting AI Visibility to Revenue

A practical three-layer framework for connecting AI visibility to revenue: the answer layer, the visit layer and the revenue layer, set up with ordinary tools.

Declan Fairbanks9 min read

Most teams measuring AI visibility can tell you how often they appear in answers. Far fewer can tell you whether those answers did anything for the business. The gap is not a tooling failure; it is a property of a channel where most influence produces no click.

That does not leave you with nothing. It leaves you with several partial signals, each honest about what it shows, arranged so they can be read together. If you need the short definition first, start with what AI search attribution is. This guide is the working framework.

Attribution works in three layers

AI search attribution works best as three layers: the answer layer (what engines say), the visit layer (what buyers do on your site) and the revenue layer (what deals report). Each is incomplete alone; read together, they make a credible case.

  1. The answer layer. Visibility, share of voice and sentiment, per engine, on a fixed prompt set. This is the leading indicator.
  2. The visit layer. AI-referred visits, AI crawler fetches of your key pages, and branded and direct traffic.
  3. The revenue layer. Pipeline where buyers self-report an assistant, and what comes up in sales calls.

The layers are ordered by how early they move and how directly you can influence them. The answer layer responds first and is closest to your work. The revenue layer moves last and is shaped by everything else your business does. That ordering decides how you report them and what you credit to whom.

What belongs in the answer layer?

The answer layer holds the metrics that describe AI answers themselves: visibility, share of voice and sentiment, broken out by engine. It is the leading indicator, because answers change before visits or deals do.

The three metrics

  • Visibility is the share of tracked prompts where your brand is named at all.
  • Share of voice is your share of all brand mentions across those answers, which puts you in a standings table with competitors.
  • Sentiment describes how you are characterized in the answers that name you. Score it only on those answers, or absence gets mistaken for neutrality.

How to set it up

Build a fixed prompt set from the questions buyers actually ask, weighted toward category and comparison prompts. Run it on a schedule against each engine your buyers use, and store the full answers, not just the scores, so you can go back and read what changed.

Report category and branded prompts separately, because branded prompts inflate visibility without saying anything about competitive position. Keep every engine separate too. Engines draw on different sources and reach different conclusions, and an average across them describes a situation no buyer is in.

What belongs in the visit layer?

The visit layer holds the evidence that buyers act on answers: visits referred by AI assistants, AI crawler requests for your important pages, and trends in branded and direct traffic. It is where influence first becomes observable on your own properties.

AI-referred visits

In your analytics tool, create a segment for sessions whose referrer matches the domains of the assistants your buyers use, such as chatgpt.com, perplexity.ai, gemini.google.com, claude.ai and grok.com. Review the domain list every quarter, because assistants add surfaces. Some assistants also tag outbound links with a source parameter, so check your campaign reports as well.

This segment undercounts. Referrers are dropped, app sessions arrive as direct, and most influence produced no click to begin with. Read it as a floor and watch its direction, not its absolute size. Look at which landing pages those visits reach, too: that tells you which pages engines are sending people to.

AI crawler fetches of key pages

Your server logs record every request, including those from AI crawlers and from assistants fetching a page while answering a question. Filter by user agent and check whether your pricing, product, comparison and documentation pages are being read, and how recently. A page no AI crawler has fetched in months is unlikely to be shaping answers. Logs also catch AI-referred visits that a blocked analytics script would miss.

You can do this with a log query in whatever your hosting provider offers. Noma’s Agent Analytics does it from server logs sent by webhook, Vercel log drain or access-log upload, showing which AI crawlers read which pages and which visits arrived from AI assistants.

Crawlers and assistant fetches are different signals

Not every AI request in your logs means the same thing. Some crawlers collect pages in bulk, while other requests happen because an assistant is fetching a page to answer a question a person just asked. The operators publish the user agents they use, so check their documentation and label the two kinds separately.

Bulk crawling tells you your pages are available to an engine. Fetches made while answering tell you your pages are being used in live answers, which sits much closer to a buyer. Report them as separate lines rather than one combined count.

Branded and direct traffic

Track branded search impressions and clicks in Google Search Console, and direct traffic in analytics. A buyer who met your name in an answer usually returns by searching for it or typing it. These series are not specific to AI, so they support the other signals rather than standing alone.

What belongs in the revenue layer?

The revenue layer holds the pipeline where buyers themselves say an AI assistant played a part, plus the same evidence gathered in sales conversations. It is the only layer that reaches influence that never produced a click.

A required “how did you hear about us” field

Put a required field on your highest-intent forms: demo requests, trials, contact sales. Offer a short list of options that includes “AI assistant”, followed by a free-text box asking which one. Optional fields are skipped; required fields get answered, even if imperfectly.

Then make sure the answer survives the journey. Map the field into your CRM so it stays attached to the lead, the opportunity and the closed deal. A self-reported source that lives only in the form tool cannot be tied to pipeline later.

Once the field is live, leave its wording and options alone. Renaming “AI assistant” or merging it into a broader “online search” option breaks comparability with every month before the change, in the same way that editing a prompt set does. If the options must change, record the date and report the periods before and after separately.

Sales call notes

Ask sales to note when a buyer mentions an assistant, and which one, using a consistent tag rather than free prose. Buyers say things on a call they never type into a form: that they asked an assistant for a shortlist, or that an answer described you incorrectly. The second kind is worth routing straight to whoever owns accuracy.

What self-reported data can and cannot show

Self-reported data shows that AI answers touched real deals. It does not show how many deals they touched in total. People forget, name the last thing they remember, or pick the first plausible option. Report it as a count of opportunities where a buyer named an assistant, which is a floor, and never scale it up into an estimate.

Report the layers side by side, never multiplied

Report the three layers for the same period, in layer order, without converting one into another. Each layer answers its own question, and the credibility comes from all three pointing the same way.

  1. Answer layer: visibility and share of voice per engine against named competitors, on a prompt set that has not changed, with the trend.
  2. Visit layer: AI-referred visits and their landing pages, crawler coverage of key pages, and branded and direct traffic, each with its trend.
  3. Revenue layer: the count of opportunities where a buyer named an assistant, and a few representative quotes from sales notes.

The story you are allowed to tell is directional: visibility rose on the prompts that matter, AI-referred visits and branded demand rose with it, and more buyers are naming assistants when asked how they found you. That is a pattern, and it is defensible.

Expect the answer layer to respond within weeks and the visit and revenue layers to take quarters, so plan to report a pattern after several quarters of consistent data rather than after the first month. For a finance audience, the framing around ROI matters as much as the data; how to report AEO performance to a CFO covers that audience, and this framework supplies the numbers underneath it.

How do you tie a specific initiative to results?

Tie each initiative to the answer layer, not to revenue. An initiative changes what engines say on specific prompts; revenue moves for too many reasons to credit any single piece of work.

  1. Before the work ships, write down which prompts it targets and why: a new comparison page, a correction to a third-party listing, a clearer pricing page.
  2. Record the baseline on those prompts per engine: visibility, share of voice and the sources each answer cites.
  3. Annotate the date the work went live, and check crawler logs to confirm the changed pages were fetched afterward.
  4. Compare the same prompts per engine over the following weeks, looking for a change that persists rather than a single good day.

If the targeted prompts moved and untargeted prompts did not, you have reasonable evidence the initiative worked. Say that, and let the visit and revenue layers speak for the program as a whole.

The pitfalls that cost credibility

The most damaging pitfalls are claiming a modelled revenue figure and reporting on prompts chosen because they flatter the result. Both feel helpful in the moment, and both undermine every number reported after them.

  • Claiming modelled revenue. Multiplying visibility by assumed prompt volume, click rate and conversion rate produces a number built entirely from assumptions. Once one is challenged, the whole report is doubted.
  • Cherry-picked prompts. Adding prompts where you are already strong, or dropping ones where you are absent, raises visibility without anything changing in the world. Fix the set, and annotate any additions.
  • Blending branded prompts. You appear in almost every branded answer, so mixing them into visibility makes a weak position look healthy.
  • Reading one day. Answers vary between runs. React to changes that persist across days and across several prompts.
  • Crediting all direct traffic to AI. Direct traffic grows for many reasons. Treat it as supporting evidence only.
  • Scaling up self-reported counts. A floor is useful. An extrapolation from it is a model with a friendlier name.

What to do first

In rough order of return on effort:

  1. Make “how did you hear about us” required on your highest-intent forms, and map it into the CRM. It takes an afternoon, and every month without it is evidence you will not get back.
  2. Create an analytics segment for AI assistant referrers and note which pages those visits land on.
  3. Fix your prompt set and record a per-engine baseline for the answer layer.
  4. Check server logs for AI crawler coverage of your pricing, product and comparison pages.
  5. Agree a consistent tag with sales for calls where a buyer mentions an assistant.
  6. Build the three-layer report once, then keep its prompt set and definitions fixed.

The work that moves the answer layer is covered in the AEO guide. This framework is how you show that work is reaching buyers, without claiming more than the data can carry.

← Back to the blog