AI Brand Audit: How to Check What AI Says About Your Company
99Visibility Research · Updated October 21, 2026 · 9 min read
Short answer
An AI brand audit is a repeatable test of how AI engines describe your company. You ask each engine the same fixed set of buyer questions, with web search on and off where you can control it. You record every statement about your brand and label each wrong, outdated or missing fact by type. Each type points to a likely cause you can check, such as a blocked crawler, a JavaScript-only page or a contradiction on your own site.
Key takeaways
- Use a fixed prompt set and fixed test conditions, or you can't tell a real change from noise.
- Separate answers given with live web search from answers given from training data, because they fail for different reasons.
- Label every error by type (outdated, wrong, unverifiable, conflated, absent) and trace each type to a specific cause.
- Access problems are the causes you can fix with the most confidence: robots.txt per bot, firewall reachability, server-rendered facts and index eligibility.
- No audit can promise what an engine will say next. It tells you what is wrong and what is in your control.
What an AI brand audit measures
An AI brand audit answers one question: when a buyer asks an AI engine about your category or your company, what does it say, and is it right? It is not a ranking report. Google's own AI reporting in Search Console exposes impressions only, with no position data, so no tool can check an "AI rank" against ground truth.
What you can measure is the content of the answers. That means three things:
- Presence: does the engine name you for questions a buyer would ask?
- Accuracy: are the facts it states about you correct and current?
- Sourcing: when it cites pages, are they yours, a third party's, or none?
If you have never looked, start with a quick read of what AI says about your company. The audit below turns that first look into something you can repeat and compare month to month.
Why the same question gets different answers
An AI answer passes through four stages. Knowing which stage produced an error tells you whether you can fix it.
- Parametric: the model answers from what it learned in training, with no web access. That knowledge is frozen at a cutoff. OpenAI's model documentation, as verified in August 2026, lists a February 16, 2026 cutoff for the GPT-5.6 family and August 31, 2025 for the Instant path ChatGPT also uses. "ChatGPT" is not one knowledge state.
- Access: a crawler either can or cannot fetch and store your page.
- Retrieval: for a given question, the engine decides which pages enter its context.
- Generation: the model picks which retrieved pages to use and cite.
Retrieval is discretionary on every major platform. ChatGPT decides per question whether to search. On Claude.ai, web search is a user toggle. Google AI Overviews often don't trigger at all. So two identical questions can produce one answer from training data and another from live pages.
The question the engine searches is also not the one you typed. OpenAI says ChatGPT search typically rewrites your query into one or more targeted queries, and saved memories can shape that rewrite. Google states that AI Overviews and AI Mode may use different models and techniques. Treat each surface as a separate product.
Citations add one more layer of noise. OpenAI's API documentation says the number of sources a model consulted is often greater than the number it cited. A missing citation does not prove your page was ignored.
What you control and what you don't
Be plain with yourself and your team about this split before you start.
In your control
- Crawler permission per bot. OpenAI documents its bots as independent: GPTBot governs training use, OAI-SearchBot governs ChatGPT search. Blocking one does not block the other.
- Network reachability. OpenAI's help centre says eligibility requires allowing OAI-SearchBot and confirming your host or CDN allows its published IP addresses. A firewall can turn away a crawler that robots.txt allows.
- Rendering. Vercel's crawler study found ChatGPT and Claude crawlers fetch JavaScript files but don't execute them. A price that appears only after JavaScript runs may be invisible to them. Googlebot renders, so this mostly matters outside Google.
- Index and snippet eligibility. Google says a page must be indexed and eligible for a snippet to appear as a supporting link in AI Overviews or AI Mode.
noindex,nosnippet,max-snippetanddata-nosnippetkeep content out. - Consistency of your own facts. If your pricing page and your footer disagree, an engine can quote either.
Not in your control
- What a model learned before its cutoff.
- Whether an engine searches for a given question, and what query it runs.
- Which retrieved page the model chooses to cite.
The controllable items are mostly about removing blocks. No markup or writing style has credible evidence behind it as a way to get cited.
How to run the audit
1. Write down your true facts first
You can't score an answer without a reference. List the facts an engine is likely to state: what you do in one line, pricing tiers, founding year, headquarters, product names, key integrations, ownership. A brand fact sheet template gives you a structure. Note where each fact lives on your site.
2. Fix a prompt set
Write 10 to 20 questions and keep them frozen. Mix three kinds:
- Category questions a buyer asks before they know you ("best invoicing tool for small agencies").
- Brand questions ("what does [your company] do", "how much does [your company] cost").
- Comparison questions ("[your company] vs [competitor]").
Say you run a dental clinic in Austin. Your set might include "emergency dentist open Saturday in Austin" and "does [clinic] accept [insurer]".
3. Fix the test conditions
Run logged out, or with memory and custom instructions off, so personal context doesn't change the answer. The differences are covered in logged-in vs logged-out AI testing. Record the date, the surface and the model name where the app shows it.
4. Run each question twice where you can
Once with web search on, once with it off. In the consumer apps you often can't force this, so record whether the answer showed citations. No visible citations means you don't know whether it searched. Through the developer APIs you can set search on or off explicitly, which gives a cleaner comparison.
5. Log every brand statement
For each answer, record: were you named, each fact stated about you, whether it matches your fact sheet, and which URLs were cited. One row per statement makes the next step easy.
Classify each error and trace it to a cause
An error log is only useful if each entry points to something to check. Use a small, fixed set of types.
| Error type | What it looks like | Likely cause to check |
|---|---|---|
| Outdated, search off | Old price or old product name, no citations | Knowledge cutoff. Nothing on your site changes this answer today |
| Outdated, search on | Old fact, citing a live page | An old page still live, or a third-party listing that was never updated |
| Wrong specific fact | Wrong price, wrong HQ, wrong founding year | Conflicting versions on your own site, or the correct fact only appears after JavaScript runs |
| Unverifiable claim | A headcount or certification you never published | No public source either way. Decide whether to publish the real figure |
| Conflation | Your features mixed with a competitor's or a similarly named company | Ambiguous name, or no clear one-line definition on a fetchable page |
| Absent | You aren't named for category questions | Crawler blocked in robots.txt or at the firewall, page not indexed, or the sites the engine cites don't mention you |
| Wrong source | Engine cites a directory or review site, not you | Your page unreachable for that bot, or the cited site is simply where it looks for this topic |
Keep "unverifiable" separate from "wrong". An engine stating a number you never published is a different problem from an engine contradicting a number you did publish. The first needs a decision. The second needs a fix.
Weight errors by consequence, not just count. A wrong price on a buying question matters more than a slightly off founding year. For a fuller treatment of root causes, see AI hallucinations about brands.
Fix in this order
Work from the gates that block everything to the details that affect one answer.
- Access. Check robots.txt for each retrieval bot: OAI-SearchBot, PerplexityBot, Claude-SearchBot, Googlebot. Then check that your CDN or firewall actually lets them through. Robots.txt saying "allow" while the firewall returns 403 is a silent failure. 99Visibility's AI Crawler Checker requests a page as each AI crawler and shows which ones get turned away.
- Rendering. Load your pricing, product and about pages with JavaScript disabled. Any fact that disappears needs to be in the server-rendered HTML.
- Suppression. Search your templates for
noindex,nosnippet,max-snippet:0anddata-nosnippet. These often get inherited from a template by accident. - Contradictions. Make each fact say the same thing everywhere on your site. Retire or redirect pages with old prices and old product names.
- Clear statements. State each key fact once, plainly, on a page that can be fetched. A specific sentence (a price, a number, a one-line definition) gives the engine something it can quote. Your About page is the natural home for most of these.
- Third-party pages. Where engines cite directories, review sites or comparison pages, correct your listing there. Being named accurately on the sites engines already cite is associated with appearing in answers, though nobody can promise the effect.
Then rerun the same prompt set under the same conditions. Answers given with search off won't move until a model trained after your fix is released.
Common mistakes
- Changing prompts between runs. A new prompt set makes month-on-month comparison meaningless. Add new questions as a separate group.
- Testing logged in. Memory and custom instructions change the query the engine runs. Your result may not match what a buyer sees.
- Blending every engine into one number. Each surface fails differently. Google AI Overviews depend on Google's index, so audit them on their own, as covered in checking AI Overview accuracy. A single blended score also averages answers given with and without live search.
- Reading a missing citation as rejection. Engines retrieve more pages than they cite.
- Reaching for markup. Google says structured data isn't required for generative AI search, and Ahrefs' matched test found AI Overview citations fell 4.6% after pages added schema. llms.txt is ignored by Google Search and no engine documents reading it. Existing markup does no harm, but it won't fix a wrong answer.
- Allowing GPTBot to fix ChatGPT search. GPTBot governs training. OAI-SearchBot governs search.
- Trying to steer answers with hidden text. Prompt injection, hidden instructions and cloaking for AI crawlers are manipulation. They risk penalties and reputational damage. Audit third-party pages that mention you for this kind of content, because it can misrepresent you too.
Frequently asked questions
How often should I rerun an AI brand audit?
Monthly is a reasonable rhythm for most brands, plus a rerun after any fix you ship. Keep the prompt set and test conditions identical each time. Answers given with web search on can change within days of a fix being crawled. Answers given from training data only change when a newer model ships, so don't expect those to move on your timeline.
Can I run a quick audit without building a spreadsheet?
Yes, for a first snapshot. The free checker on this site asks up to three buyer questions and shows whether engines name you, scored on one scale. It is a snapshot, not continuous tracking. For a full audit with error types and causes, you still need a fixed prompt set, a fact sheet and a log you can compare over time.
What should I do if a third-party site is the source of the wrong fact?
Correct it at the source. Update your listing on directories, review platforms and partner pages, and ask the site owner to fix editorial pages. When an engine cites another site instead of yours, that site is the route into the answer. Also make sure the correct fact is stated plainly on a fetchable page of your own, so the engine has a better source to find.
Why does ChatGPT say something different from my last check?
Several reasons can apply at once. ChatGPT decides per question whether to search, routes between models with different knowledge cutoffs, and rewrites your question into its own search queries. Memory can shape that rewrite when you're logged in. Run the [ChatGPT visibility checklist](/platforms/chatgpt-visibility-checklist) under fixed conditions before treating a change as real.
Does an AI brand audit improve my visibility by itself?
No. An audit shows what is wrong and points to likely causes. Fixing access, rendering, suppression and contradictions removes things that block engines from reading your facts. Nobody, including any vendor, controls which pages an engine retrieves or what the model finally says. Treat the audit as a diagnosis and the fixes as the work.
Sources
This page is AI-assisted. It was written from a verified evidence base and checked against our editorial policy. Engine behaviour changes often; facts are as of October 21, 2026.