Zero mentions, no answer, or failed collection? How to read a missing AI result
A missing AI result can mean your brand was not named, the engine showed no answer, or collection failed. A run-log method and legend keep the three apart.
On this page
- In short
- What is the difference between a zero, a gap and a failure?
- How does a real zero mention differ from an empty result?
- What does "no AI answer shown" mean on Google?
- What does a failed collection look like, and what does it do to my numbers?
- What about answers that are collected but not analysed yet?
- Result-state legend
- Run log template
- Worked example
- Common mistakes and what this cannot tell you
- Frequently asked questions
- Next step
A missing result in an AI visibility report has at least four different causes, and they should not be read the same way. Either the engine answered and did not name your brand (a real zero), the engine gave no answer at all (Google sometimes shows no AI answer), the collection failed, or the answer arrived but has not been analysed yet. Only the first is evidence about your visibility. The others are gaps in the measurement. Label every empty cell with its state before you draw a conclusion, using the legend and run log below.
In short
- A real zero means the engine answered, the answer was analysed, and your brand was not in it. It counts as a miss, correctly.
- A no-answer run means the request worked and Google showed no AI answer. It is not an answer, so it is not a miss; it is reported as a shown rate.
- A failed run means no answer was collected. In the documented metrics it is absent from the count, not counted as a miss, and it is retried later the same day.
- A not-yet-analysed answer is collected but not counted in brand numbers until mentions are extracted.
- A metric with no data reads as no data, not 0%. If your tool shows 0% where it should show a gap, treat that as a reporting defect.
What is the difference between a zero, a gap and a failure?
A zero is a measured absence; a gap is a run that never produced a measurement. Reports go wrong when the two are mixed, because a gap read as a zero makes your visibility look worse than the evidence supports, and a zero read as a gap hides a real problem.
Four terms carry the rest of this post:
- A collected answer is a completed prompt execution: the engine ran and returned a result.
- An analysed answer is a collected answer whose mentions have also been extracted, so the platform has read the text and recorded which brands it names.
- A run is one attempt to ask one engine one prompt (in one country, persona and language combination). A run can complete, fail, or, on the Google engines, end with no AI answer shown. In this post a run includes failed ones; the run metrics on the metrics page leave failed runs out.
- Brand visibility is analysed answers naming your brand, divided by analysed answers.
These definitions come from Metrics defined. The important consequence is in the denominators: brand visibility divides by analysed answers only, so anything that is not an analysed answer never enters the division, in either direction.
How does a real zero mention differ from an empty result?
A real zero is an analysed answer that does not name you. It is the only one of these states that belongs in your visibility figure as a miss, and it is evidence, though only about that answer.
Take brand visibility. If an engine answered a prompt, the answer was analysed, and the brand list did not include you, that answer is in the denominator and not in the numerator. That is the metric working as intended. The same applies to a citation rate of zero while your collected answer count is above zero: the troubleshooting guidance calls that a real zero, not a broken measurement.
A real zero still needs reading with care, and it is an observation about one answer, not a cause. On ChatGPT (app) and Gemini (app), a source link whose text is a bare domain and that directly follows the passage it supports is blanked out before mentions are read, so a site named only in such links does not count as a mention. Separately, on engines that report retrieved pages, a zero on citations next to a nonzero domain coverage means pages were retrieved but not cited (see retrieval versus citation). And one zero on one day says little; engines do not answer the same way every time, so a single day's swing is not by itself evidence that anything changed.
What does "no AI answer shown" mean on Google?
It means the request succeeded and Google showed no AI answer for that search, so nothing was missed and nothing failed. Google does not show an AI Overview for every search.
For Google AI Overviews and Google AI Mode, the run is stored as its own outcome, with no text and no citations. It is left out of every answer-based number (visibility, mentions, share of voice, citation rate and answer counts). It is reported instead as the shown rate: the share of Google runs on which an AI answer appeared, counting runs that completed or showed no AI answer and leaving failed runs out. Collection health counts it as a request that succeeded, not as a failure. The full behaviour is in When Google shows no AI answer, and the shown rate glossary entry gives the short definition.
Two practical points follow. First, ChatGPT (app), Gemini (app), Gemini (API), Perplexity, Claude and Grok have no "no AI answer shown" outcome, so it is a Google-only state and the shown rate has no value for the others. Second, a Google engine whose runs in a window all showed no AI answer has no value for the answer metrics there, not 0%.
In the docs' words, a request that fails at DataForSEO or Google is a failed run, never "no AI answer shown". So a Google run with no answer is not a failure to chase, but it is a real question about the prompt: if the shown rate is low for a prompt, that prompt may simply not trigger an AI answer on Google. See the engine pages for Google AI Overviews for context.
What does a failed collection look like, and what does it do to my numbers?
A failed run is a run that never produced an answer. In the documented metrics it does nothing to your numbers quietly: it is absent from the count, not counted as a miss.
Every answer metric is built from executions whose status is completed, directly or through the mentions attached to them. A failed execution is never completed, so it contributes no answer, citation, retrieval or mention. It does not drag your visibility down.
What you can do about it:
- Find it. Each prompt's run history lists executions, failed ones included, with a status and a plain-language reason from a closed set: timeout, rate limited, provider error or internal error. The table shows the 50 most recent runs in the window and filters. The Overview shows a "Failed runs in this window" notice listing each engine with at least one failed run, as its failed runs out of its runs, and it describes the whole project, so the filter bar does not narrow it. Read the troubleshooting entry for failed runs.
- Expect retries. A failed run is retried automatically later the same day, at 03:00, 05:00, 09:00 and 17:00 UTC. A retry that succeeds replaces the failed run with the answer. If the 17:00 retry also fails, the run stays failed for that day. Retries only happen while the prompt, the engine and your plan would still run it.
- Know that some answers become failures on purpose. For the engines collected through DataForSEO (the two Google engines, ChatGPT (app) and Gemini (app)), temporary errors are retried up to three times before the run fails, and an AI Overviews results page with neither an Overview nor any organic result counts as a failure, since an empty page is not a search Google answered. For ChatGPT (app), an answer that looks cut off (one paragraph under 300 characters with no source) is retried and then fails, so it is never recorded as an answer that names no brand. That rule does not apply to Gemini (app), where a short answer is an answer.
What about answers that are collected but not analysed yet?
They exist but are not yet in the brand numbers. Mention extraction is a separate step after collection, so analysis lags behind it, and the analysed population is always a subset of the collected one.
The Overview flags this with a notice reading "Brand figures use N of M answers; the rest are still being analysed". While runs are still pending or running, the Overview also shows "Collecting N answers now". The effect is that citation rate and domain coverage (which divide by collected answers, since citations are recorded during collection) can be based on more answers than brand visibility. Two numbers on one screen can therefore disagree without either being wrong; the metrics page works through an example in which visibility reads 50 percent and citation rate 10 percent.
Under 30 observations, a number is provisional: still shown, but the sample behind it is too small to read as settled.
Result-state legend
This is the deliverable to keep beside every report. For each state it says what it means, whether it counts as a miss, and what to do.
| State | What happened | In visibility figures? | Counts as a miss? | Next action |
|---|---|---|---|---|
| Real zero | Engine answered, answer analysed, brand not named | Yes, in the denominator only | Yes | Read the answer; see which brands were named and what was cited |
| Mention | Engine answered, analysed, brand named | Yes, in both | No | Check position and framing |
| No AI answer shown (Google only) | Request succeeded; Google showed no AI answer | No | No | Read the shown rate; ask whether the prompt suits Google |
| Failed run | No answer collected (timeout, rate limit, provider error, internal error) | No | No | Check the run history; wait for retries; note the gap |
| Collected, not analysed yet | Answer stored; mentions not extracted | Not yet | No | Re-read after analysis finishes |
| Pending or running | Run has not finished | No | No | Wait; re-read later |
| No data | The denominator is zero | Not applicable | No | Report "no data", never 0% |
| Provisional | Fewer than 30 observations | Yes, flagged | Not applicable | Widen the window or add runs before concluding |
Run log template
Copy this and fill one row per run you are explaining. Fill the state column from the legend before writing a comment.
Prompt: ______________________________
Window / date: ______________________________
Location, persona, language: ____________________
Engine | Run status | Answer? | Analysed? | Brand named? | State (from legend) | Note
-------|------------|---------|-----------|--------------|---------------------|-----
| | | | | |
| | | | | |
Totals
Runs attempted: ___
Failed: ___
Google, no AI answer shown: ___
Collected (completed) answers: ___
Analysed answers: ___
Analysed answers naming brand: ___
Visibility = named / analysed = ___ / ___
Report wording check
[ ] Every gap is labelled as failed, no answer or not analysed, never "0"
[ ] The denominator is stated (analysed answers, not runs)
[ ] Any figure under 30 observations is marked provisional
Worked example
Illustrative example: Quillstone and its competitors are fictional, and the numbers are made up to show the method.
Quillstone sells document-review software to legal and compliance teams. Its team monitors the prompt "best document review software for compliance teams" and a hand-built summary of one day shows "visibility 25%". Before reacting, they log one day of runs across the eight engines:
| Engine | Run status | Result | State |
|---|---|---|---|
| Gemini (API) | Completed, analysed | Names Quillstone and Brieflane | Mention |
| Perplexity | Completed, analysed | Names Brieflane and Clausewise | Real zero |
| Google AI Overviews | Completed | No AI answer shown | No answer |
| Google AI Mode | Completed, analysed | Names Quillstone | Mention |
| ChatGPT (app) | Failed (timeout), still failed after 17:00 UTC | No answer collected | Failed run |
| Gemini (app) | Completed, awaiting analysis | Answer stored, not read yet | Not yet analysed |
| Claude | Completed, analysed | Names Docket North | Real zero |
| Grok | Completed, analysed | Names Brieflane | Real zero |
The count: 8 runs attempted. One failed, one was a no-answer run, so 6 answers were collected. One of those is not analysed yet, so 5 are analysed. Quillstone is named in 2 of those 5, so visibility is 2 of 5, or 40%.
The "25%" came from dividing the 2 mentions by all 8 runs, which counts the failed run, the no-answer run and the pending analysis as misses. That is the wrong denominator: 2 of 8 is 25%, but only three of the eight runs (Perplexity, Claude and Grok) are real zeros.
The team also records the Google shown rate: 1 of 2 Google runs (neither failed) showed an AI answer, or 50%, and notes that ChatGPT (app) has a gap for the day. Five analysed answers is far below 30 observations, so the whole figure is provisional and one day is only a starting point. They now report: "40% on 5 analysed answers (provisional); 1 failed run; Google AI Overviews showed no answer." That statement can be defended line by line.
Common mistakes and what this cannot tell you
- Treating failed runs as misses. They are absent from the count. A gap needs a note, not a zero.
- Treating a no-answer Google run as a failure to fix. The request worked; the shown rate is the number that describes it.
- Reading a real zero as a diagnosis. An analysed answer that omits you shows that the answer omitted you. It does not show why. Do not write "the engine ranks you lower because"; stated reasons, citations and mentions are observations of an answer, not proof of a model's internal causes.
- Comparing observation counts across metrics. Counts labelled
observationsare not the same denominator from metric to metric. - Judging a trend from one day. A run log explains one day's gaps; it does not tell you whether a trend is real.
- Overcorrecting. Retries and analysis lag mean a gap may fill in later, but a failed run that stays failed does not become a zero. Do not backfill it with a guess.
This method also cannot tell you why a run failed beyond the reason category shown, and it cannot promise a failed run would have named you.
Frequently asked questions
Does a failed run lower my brand visibility?
No, based on how the metrics are defined. Every answer metric reads completed executions only, so a failed run contributes no answer and no mention. It is absent from the count, not counted as a miss.
Why does the shown rate exist if it is not about my brand?
It describes the engine and the prompt, not you. If Google shows an AI answer on few runs of a prompt, that prompt offers less to measure there, and knowing that keeps you from reading absence as underperformance.
My report shows 0% for an engine. Is that a real zero?
Check the denominator. If the engine has analysed answers and none names you, it is a real zero. If it has no analysed answers, the correct reading is no data, because a rate with a zero denominator has no value. A 0% with nothing behind it should be reported as a gap.
Will failed runs fix themselves?
Often. Failed runs are retried the same day at 03:00, 05:00, 09:00 and 17:00 UTC, and a successful retry replaces the failure with the answer. A run still failed after the 17:00 retry stays failed for that day.
How many answers do I need before a number means something?
The platform treats a number as provisional below 30 observations. That is a floor for reading a figure as settled, not a guarantee that 30 is enough, so widen the window before making decisions.
Why do visibility and citation rate disagree on the same screen?
They divide by different populations: visibility by analysed answers, citation rate by collected answers. When analysis lags collection, the two rest on different sets of answers.
Next step
Open a prompt's run history in your monitoring tool and label each row with a state from the legend before you read any percentage. In DiscoveredBy, the run history, the Overview's failed-runs notice and the Metrics defined page cover the states above; the prompt detail page shows the runs. Related reading: why your visibility score changed, what missing collection days do to a trend, why two teams calculate different citation rates and how much of your intended monitoring actually ran. You can start at app.discoveredby.ai.
- reporting
- shown rate
- collection health
- brand visibility