Direct answer. AI visibility is not one number. Track five metrics, each with an explicit denominator and unit of analysis: mention rate (share of substantive answers that name your brand), presence rate (share of answers with sources that cite your domain), share of voice (your share of mentions or citations within a declared competitor set), prompt reach (share of classifiable prompts for which your domain is cited in at least half of their substantive runs), and accuracy (share of checkable claims about you that are correct). Report each with its denominator, the number of prompts and runs, the engine, market and date window, the no-citation and refusal rates, and an uncertainty interval. A percentage without those is not a measurement.
These are the definitions AI Visibility Journal (AVJ) uses. They match the metric names and formulas in the AVJ Citation Index methodology (v0.1.1), so a metric computed with this guide means the same thing as the Index metric of the same name. Below, each metric gets a definition, a formula and a worked example, followed by units of analysis, rules for runs and missing data, an accuracy rubric, secondary metrics, common reporting mistakes and a downloadable metric sheet.
Updated November 5, 2026: aligned with AVJ Citation Index methodology v0.1.1. Mention rate now uses all substantive answers, including answers without sources; presence rate is conditional on citation, with a conversion to all substantive answers. Prompt reach counts substantive runs, with an insufficient-evidence rule. Minimum samples are set per metric, share of voice uses a declared domain set per brand, and volatility is conditional on at least one cited domain per run pair. Change is judged by the bootstrap confidence interval of the difference; the split-half noise band is a secondary diagnostic. We also added rules for missing runs and reference fact sheets, reworked the worked example to follow the minimum-sample rule, updated citations, and released metric sheet v1.2. See the changelog at the end.
Notation
In this guide, everything is computed for one cell: one engine × one market × one prompt set × one date window. This is shorthand. A cell is also fixed by the engine’s model or product surface, the access route (API or consumer interface), the location and language settings, and the run configuration (number of runs, collection times, retry rule). The Index methodology records each of these. In the Index, a cell is one AI system × market × topic × edition, where the edition fixes the question panel and the collection window. If any of these settings changes inside a date window, treat the data as two cells. Never pool cells silently.
Each run of a prompt ends with one status, as in the Index:
ok: the engine answered and returned at least one structured citation;no-citation: the engine answered without any sources;refusal: the engine declined to answer;error: a transport or technical failure. Errors are retried at most twice; a run that still fails stayserrorand is not an answer.
Refusals and no-citation answers are not retried. Sets used below:
- R = the returned answers in the cell (every run whose final status is not
error). - S = the substantive answers: R minus refusals, so
okplusno-citation. Measures of what an engine says use S. - A = the
okanswers, the subset of S that carries at least one citation. Measures of what an engine cites use A. - C(a) = the set of unique registrable domains cited in answer a, read from the structured citation fields the engine returns, not from the answer text. C(a) is empty for every no-citation answer.
- c(a) = the list of citation slots in answer a (a domain cited twice occupies two slots).
- M(a) = the set of brands named in the text of answer a.
- P = the set of prompts in the cell; rₚ = the number of substantive runs of prompt p (planned runs minus errors that persisted after retries, minus refusals).
- b = your brand; d = your registrable domain: the public suffix plus one label, determined with the Public Suffix List, as the Index does. So
blog.example.comcounts asexample.com, andshop.example.co.ukcounts asexample.co.uk.
Report the error rate (errors ÷ planned runs), the refusal rate and the no-citation rate (each ÷ |R|) next to every rate.
The five core metrics
1. Mention rate
Definition. The share of substantive answers whose text names your brand at least once.
Formula. Mention rate = |{a ∈ S : b ∈ M(a)}| ÷ |S|
Unit of analysis. The answer.
A mention is the brand appearing in the generated text, with or without a link. It measures whether the engine names you. It says nothing about whether the engine used your content as a source. That is why the denominator includes answers without sources: an engine can name you in an answer that cites nothing, and leaving such answers out would make mention rate depend on how often the engine attaches sources.
Brand matching needs an alias list (product names, abbreviations, common misspellings) and a check for false positives: “Apple” in a recipe answer is not a mention of Apple Inc. The AVJ Index pairs dictionary matching with model-assisted extraction, has people check a sample of answers, and reports precision and recall from that check (see “How citations and mentions are processed” in the Index methodology).
See also: brand mention.
2. Presence rate (conditional on citation)
Definition. The share of answers with at least one citation (status ok) that cite your domain at least once as a source.
Formula. Presence rate = |{a ∈ A : d ∈ C(a)}| ÷ |A|
Unit of analysis. The answer.
This is a conditional rate: it answers “when this engine cites sources, how often is your domain among them?” It is the Index’s presence rate, and the Index keeps this denominator so that presence rate and citation share describe the same set of answers, those that list sources. Because answers without sources are excluded, presence rate can look high on an engine that rarely cites anything. Always report the no-citation rate beside it.
To express presence over all substantive answers, convert it:
Presence among substantive answers = |{a ∈ S : d ∈ C(a)}| ÷ |S| = presence rate × |A| ÷ |S|
The two are equal only when no substantive answer lacks sources. When you write “presence rate” without a qualifier, you mean the conditional rate; label the converted figure explicitly.
Many practitioners call presence rate “citation rate”; we use the Index’s name throughout. A citation means the engine attached your URL to its answer. A brand can be mentioned without being cited, and a domain can be cited without its brand being named. Keep the two apart; a dashboard that merges them cannot tell you which one moved.
A related, slot-level metric is citation share: the share of all citation slots that point to d.
Formula. Citation share = Σₐ∈A (number of slots in c(a) pointing to d) ÷ Σₐ∈A |c(a)|
Citation share is the Index’s headline ranking metric. It is the domain’s share of the engine’s citation inventory, not the share of answers or prompts in which the domain appears. Because it counts every citation slot, it depends on how many sources each engine lists, and a domain cited many times in a few answers can hold a large share. Report it with the number of answers with citations and the mean citations per answer, and next to presence rate and prompt reach. Report whichever metric you use by its full name.
See also: AI citation.
3. Share of voice
Definition. Your share of all mentions or citations earned by a declared set of competing brands K, including yours. There are three variants, and they are different metrics. Name the one you report.
Mention share of voice. SoV_m(b) = |{a ∈ S : b ∈ M(a)}| ÷ Σₖ∈K |{a ∈ S : k ∈ M(a)}|
Citation-presence share of voice. SoV_cp(b) = |{a ∈ A : C(a) ∩ D_b ≠ ∅}| ÷ Σₖ∈K |{a ∈ A : C(a) ∩ D_k ≠ ∅}|, where D_k is the declared, frozen set of registrable domains that count for brand k.
Citation-slot share of voice. SoV_cs(b) = slots pointing to any domain in D_b ÷ Σₖ∈K slots pointing to any domain in D_k (all sums over A).
Unit of analysis. For the mention and citation-presence variants, the brand–answer pair: a brand counts at most once per answer, however often it is named or cited in that answer. For the citation-slot variant, the citation slot.
Share of voice is only meaningful relative to the set it is computed over. Adding or removing a competitor that has any mentions changes every other brand’s share, even if no answer changes. So publish the set, explain how it was chosen (for example, “the five brands with the highest mention rate in a pilot run”), publish each brand’s domain set D_k with it, and freeze both for the reporting period. Share of voice also hides absolute movement: if every brand’s mention rate halves, everyone’s share of voice can stay flat, so report each brand’s mention rate or presence rate as well.
4. Prompt reach
Definition. The share of classifiable prompts for which your domain is cited in at least half of that prompt’s substantive runs.
Formula. Prompt reach = |{p ∈ P* : (substantive runs of p citing d) ÷ rₚ ≥ 0.5}| ÷ |P*|, where P* is the set of prompts with rₚ ≥ 2.
Unit of analysis. The prompt.
Rules:
- Runs counted. The denominator for each prompt is its substantive runs (
okplusno-citation), not planned or attempted runs. A no-citation run counts as a run in which d was not cited. Refusals and errors that persist after retries are excluded and reported. - Insufficient evidence. A prompt with fewer than two substantive runs is classed “insufficient evidence” and left out of both numerator and denominator. Report how many prompts were so classed. If more than 5% of the prompts in a cell are insufficient evidence, say so next to the result. Report insufficient-evidence prompts by cause (refusals, errors), so that a prompt the engine consistently declines is visible rather than silently dropped.
- Show the support. Next to the reached/not-reached label, give the raw ratio for each prompt (for example, “cited in 2 of 3 substantive runs”).
Prompt reach answers a direct client question: “for which questions do we reliably show up when the engine gives a substantive answer?” The threshold behaves differently with different run counts: with two runs, a single cited run already meets it; with three, two cited runs are needed; with four, two are enough. Keep the run count fixed across prompts and periods, and report it. The 50% threshold is the one the Index uses. It is a choice, not a law; if you change it, say so.
5. Accuracy
Definition. The share of checkable claims about your brand, made in substantive answers that mention you, that are correct against a dated reference fact sheet.
Formula (claim accuracy). Accuracy = claims scored correct ÷ all claims scored (unverifiable claims are counted separately and are not scored)
Companion metric (material error rate). Substantive answers that mention b and contain at least one material error (a claim scored 0 or 1 that would change a buyer’s or reader’s decision) ÷ substantive answers that mention b.
Unit of analysis. The checkable claim (and, for the companion metric, the answer).
Accuracy is the only one of the five that asks whether what an engine says about you is true, and it needs human judgment. Scoring is covered in the rubric section below.
A worked example (illustrative data)
Illustrative example data, not a measurement. The numbers below are invented to show the arithmetic. They do not describe any real brand, engine, or AVJ result.
A team tracks brand B (domain b-example.com) on one engine, one market, 20 prompts, 3 planned runs each, over one week: 60 planned runs. Two runs still failed after retries (errors), leaving |R| = 58 returned answers. Four were refusals and six came back without sources, leaving |S| = 54 substantive answers, of which |A| = 48 carried citations. Every prompt kept at least two substantive runs, so no prompt is “insufficient evidence”.
| Quantity | Illustrative value |
|---|---|
| Error rate (errors ÷ planned runs) | 2 of 60 |
| Refusal rate (refusals ÷ returned answers) | 4 of 58 |
| No-citation rate (no-citation answers ÷ returned answers) | 6 of 58 |
| Substantive answers naming B | 18 (15 with citations, 3 without) |
Answers with citations that cite b-example.com | 12 |
| Total citation slots across the 48 answers with citations | 240 (5.0 per answer with citations) |
Slots pointing to b-example.com | 15 |
| Substantive answers naming each brand in the competitor set K = {B, C, D, E} | B 18, C 30, D 21, E 9 (total 78) |
Prompts where b-example.com was cited in at least half of their substantive runs | 4 of 20 |
| Checkable claims about B in the 18 answers naming B | 41: 33 correct, 5 outdated, 3 wrong |
| Answers naming B with at least one material error | 3 |
This cell has 20 prompts and 54 substantive answers, below the minimum sample of 30 prompts and 100 answers (see “Minimum sample”). So the results lead with counts, and the percentage in brackets is marked as below the publication floor:
- Mention rate: 18 of 54 substantive answers (33.3%, below floor)
- Presence rate (conditional on citation): 12 of 48 answers with citations (25.0%, below floor); presence among substantive answers: 12 of 54 (22.2%) = 25.0% × 48 ÷ 54
- Citation share: 15 of 240 citation slots (6.3%, below floor)
- Mention share of voice: 18 of 78 brand–answer mentions in K (23.1%, below floor), while C leads with 30 of 78 (38.5%)
- Prompt reach: 4 of 20 prompts (20.0%, below floor)
- Claim accuracy: 33 of 41 scored claims (80.5%, below floor); material error rate: 3 of 18 answers naming B (16.7%, below floor)
- No-citation rate: 6 of 58 returned answers (10.3%); refusal rate: 4 of 58 (6.9%)
Three lessons sit in this table. First, the engine names B in a third of substantive answers but cites B’s domain in a quarter of the answers that list sources, and B holds about one in sixteen citation slots: B is named more often than its own pages are cited. Second, the denominator matters: the same 12 citing answers give 25.0% conditional on citation and 22.2% over all substantive answers, and three of the 18 answers naming B cite nothing at all, which a mention rate computed only over answers with sources would miss. Third, the sample is small. A naive 95% Wilson interval for the conditional presence rate (12 of 48) runs from about 15% to 39%, and it is probably too narrow, because the 48 answers come from only 20 prompts (see “Why run counts matter”). Prompt reach at 4 of 20 prompts has a naive interval of roughly 8% to 42%. An honest report of this example would say “cited in 12 of 48 answers with sources, about one in four, with wide uncertainty”, not “25.0%”.
Nhi Phan, Editor-in-Chief: Designing the Index taught me that the unit of analysis decides the story. The same set of answers can show a domain cited in about one in four of the answers that list sources while it holds only a small share of the citation slots. That is why the Index publishes citation share as its headline and presence rate beside it: a single figure invites the wrong conclusion.
Units of analysis: answers, prompts, slots and claims
Disagreements between AI visibility tools often come down to the denominator. Four units are in use:
- Answer (mention rate over substantive answers; presence rate over answers with citations). Every counted answer counts once. Easy to explain, but weighted toward prompts with more counted runs.
- Prompt (prompt reach). Every classifiable question counts once, however many runs it had. Closest to “which questions do we win”.
- Citation slot (citation share, citation-slot share of voice). Every source position counts once. Sensitive to engines that list many sources.
- Claim (accuracy). Every checkable factual statement counts once.
Rules AVJ applies:
- State the unit and the denominator next to every number. “22% of answers”, “22% of answers with sources” and “22% of prompts” are different claims.
- Do not mix engines in one denominator. An engine that returns more answers carries more weight in a pooled answer-level rate, and one that lists more sources carries more weight in a pooled citation share. Report per engine; if you must summarize across engines, average the per-engine rates with equal weights and say so.
- Keep refusals, no-citation answers and errors visible. Mention rate is computed over substantive answers and presence rate over answers with citations, as in the Index. Report the no-citation rate, refusal rate and error rate alongside every rate. If you use another convention (for example, presence over all substantive answers), name it and convert using the formula above.
- Unequal run counts. Answer-level rates pool all counted answers, so a prompt with three substantive runs weighs more than one with two. When substantive run counts differ across prompts, also report the prompt-normalized rate: compute the rate within each prompt using the metric’s own denominator (for example, for mention rate, substantive runs of p naming b ÷ rₚ), then average the per-prompt rates with equal weight across prompts whose denominator is not zero. If the pooled and prompt-normalized rates differ materially, show both.
- Weighting. The Index counts all questions equally within each market and topic and does not weight by search or prompt volume, because no reliable, comparable volume data exists across AI systems and markets (see “Statistics” in the Index methodology). If your tool weights by “search volume”, ask where that volume comes from.
Why run counts matter
Generative engines are not deterministic. The same prompt, sent twice in fresh sessions, can return different sources and different brands. Early work on visibility metrics accounted for this: the GEO study by Aggarwal et al. sampled “5 different responses at temperature=0.7, to reduce statistical deviations” (§3.1), and ran its experiments on five random seeds, reporting the average and the deviations (Appendices B and C) (Aggarwal et al., KDD 2024). Even settings meant to remove randomness do not guarantee repeatable output: Atıl et al. applied five API-based language models, configured to be deterministic (temperature 0, top-p 1, fixed seed), to eight tasks over ten runs each, and report “accuracy variations of up to 15% across runs”; in their words, “No LLM consistently delivers the same outputs or accuracies, regardless of task” (Atıl et al., Eval4NLP 2025). Those were benchmark tasks, not answer engines, but commercial engines add further variation through retrieval, model updates, and personalization that you cannot control.
Four practical consequences:
- One run per prompt tells you nothing about run-to-run variation. Prompt reach is not meaningful with one run per prompt, and with two runs a single cited run already meets the 50% threshold. The Index runs each question several times on each AI system, fixes the number of runs in a run configuration before collection, and reports run-to-run volatility.
- Plan for missing runs. Fix the retry rule before collection (the Index retries transport errors at most twice), report the error rate, and apply the insufficient-evidence rule in prompt reach. The Index also requires at least 95% of planned runs to be completed for each AI system and market before an edition is analyzed.
- Answers from the same prompt are correlated. Treating 54 answers from 20 prompts as 54 independent observations usually understates uncertainty. AVJ computes intervals with a cluster bootstrap over prompts: resample whole prompts with replacement, with all their runs, recompute the rate (numerator and denominator) in each resample, repeat at least 2,000 times with a fixed seed, and report the 95% percentile interval. If the prompt set was built in strata (the Index stratifies by market; you might stratify by topic or intent), resample within each stratum. More resamples make the interval numerically stable; they do not add evidence. With few prompts, the interval stays unreliable however many resamples you draw (see “Statistics” in the Index methodology).
- Changes need an interval, not just a difference. Before you report that presence rate “rose 4 points”, compute a 95% interval for the change itself, with a cluster bootstrap that resamples prompts. The Index treats an edition-to-edition change as detectable only if that interval excludes zero; everything else is reported as “no detectable change”. As a secondary check, compare the change with a split-half noise band: split the prompts at random into two halves (all runs of a prompt in the same half), compute the difference between the halves, repeat for 200 splits with a fixed seed, take the 95th percentile and multiply it by 1/√2, because half-sample differences are about √2 noisier than full-period differences. The Index methodology gives the full protocol. When you screen many brands or domains at once, control the false discovery rate (the Index uses Benjamini–Hochberg at q = 0.05).
A simple volatility measure to report next to any run-based metric: for each prompt, compute the Jaccard similarity of the cited-domain sets for every pair of its substantive runs, take the mean, and report 1 minus that value (median and interquartile range across prompts). If one run cites domains and the other cites none, the pair’s similarity is 0. If both runs cite no domains (for example, two no-citation answers), the similarity is undefined: leave the pair out and report how many pairs were left out. Because such pairs are left out, the measure is conditional on at least one cited domain in the run pair; label it so. Prompts with fewer than two substantive runs, or with no pair left, have no volatility value. The higher the volatility, the more likely a small sample is to mislead.
Minimum sample. The Index does not show any estimate based on fewer than 30 prompts, or fewer than 100 answers in the set the metric is computed over; for citation share, that is the answers with citations, not the number of citation slots. For prompt reach, the floor is 30 classifiable prompts. Accuracy and material error rate use AVJ’s own floor of 50 substantive answers naming the brand. The metric sheet lists the floor for each metric. Our view: these floors are sensible for client reporting too. Below it, lead with counts and put the percentage in brackets, marked as below the floor: “cited in 4 of 20 prompts (20%, below AVJ’s publication floor)”. The floor is a publication rule, not a precision guarantee: how wide an interval is also depends on the base rate, how correlated runs are and how different the prompts are, so always show the interval.
Accuracy: how to judge whether engines describe you correctly
Accuracy is scored against a reference fact sheet: a dated list of facts you can verify from primary sources (pricing page, terms, product documentation, official filings). Without a dated reference, accuracy scores can drift with whoever is doing the scoring. Rules for the sheet:
- One row per fact, with the market it applies to, the date range it was valid for, the source URL, and an archived copy of the source taken on the date you read it.
- Source order. For what the brand offers (prices, plans, terms, policies, availability by market), its own current pages are the primary source. For facts about the company (ownership, leadership, founding, legal status), official filings and regulator records come first. A brand’s own page records what the brand says; it is not independent proof of performance or superiority claims, so score those as unverifiable unless an independent source confirms them.
- Conflicts. If primary sources disagree, record both, and score claims on that fact as unverifiable until the conflict is resolved.
- Freeze it. Version the sheet, freeze it for the scoring period, and score each answer against the facts valid on its answer date.
Step 1: extract checkable claims. From each substantive answer that mentions b, list every statement about b that can be true or false: prices, features, availability by market, founding facts, leadership, policies, comparisons with named competitors. Skip opinions (“a popular choice”) unless they misstate a fact.
Step 2: score each claim.
| Score | Label | Rule |
|---|---|---|
| 2 | Correct | Matches the reference sheet as of the answer date |
| 1 | Outdated or imprecise | Was true once, or is directionally right but wrong in detail (old price, discontinued plan) |
| 0 | Wrong | Contradicts the reference sheet, or attributes a competitor’s feature, or invents a product, policy or fact |
| n/a | Unverifiable | Cannot be checked against any primary source; count separately, do not score |
Claim accuracy, as defined above, counts only score-2 claims as correct. You can also report a mean score (0–2) if you want partial credit to show, but publish which you use.
Step 3: flag material errors. A claim scored 0 or 1 is material if a reasonable reader would make a different decision because of it: a wrong or out-of-date price, a safety or legal misstatement, a claim that you do not serve a market you serve. One material error per answer is enough to flag the answer.
Step 4: check agreement. Have two people independently extract and score claims in the same sample of answers (at least 50 if you have them). Report how often they extracted the same claims, then agreement on the scores of claims both extracted, as Cohen’s κ, or Krippendorff’s α when there are more than two coders or missing scores. AVJ’s bar, the same one the Index uses for its human-coded domain taxonomy, is κ (or α) ≥ 0.70.
This is an editorial choice, not a universal standard. Landis and Koch (1977) label κ from 0.61 to 0.80 as substantial agreement and call their own divisions “clearly arbitrary” benchmarks. Krippendorff (2004) says the acceptable level should depend on the cost of drawing invalid conclusions; for data meant to support scholarly arguments he suggests requiring α ≥ 0.800, and α ≥ 0.667 where tentative conclusions are still acceptable, adding that apart from perfect agreement “there are no magical numbers”; he also argues that α, not Cohen’s κ, is the right coefficient for this kind of coding. McHugh (2012), writing for health research, treats any κ below 0.60 as inadequate.
Below 0.70, revise the rubric and rescore before you report accuracy.
Step 5: separate attribution from accuracy. An answer can be accurate and cite a third-party page that is itself wrong elsewhere, or be wrong while citing your own page. Record which cited source, if any, contains each wrong claim. That helps you judge whether the fix lies in your content, a third-party page or neither.
The GEO paper offers a complementary, finer-grained view of how much of an answer is attributed to a source: a word-count impression score (the share of the answer’s words in sentences that cite the source) and a position-adjusted version that down-weights sentences appearing later in the response, plus “subjective impression” sub-scores judged by a language model using G-Eval (Aggarwal et al., §2.2.1). These are useful for experiments on a controlled engine. For tracking commercial engines over time, AVJ prefers the simpler, auditable metrics above, because sentence-level attribution depends on how each engine formats citations.
Secondary and diagnostic metrics
The five metrics above answer whether, how often, how widely and how correctly an engine represents you. A few further measures help explain those numbers. We keep them out of the core set because they either describe the measurement itself or depend on judgment calls that are harder to audit. All are in the downloadable metric sheet.
- No-citation rate, refusal rate and error rate. No-citation answers ÷ returned answers; refusals ÷ returned answers; errors after retries ÷ planned runs. Report them by engine so readers can see what each denominator leaves out.
- Run-to-run volatility. One minus the mean pairwise Jaccard similarity of cited-domain sets across substantive runs of the same prompt, with the empty-set rule above (see “Why run counts matter”).
- Citation support rate. Of the citations pointing to domain d, the share whose cited page fully supports the statement it is attached to. Formula: citations to d judged to fully support their statement ÷ citations to d that were judged. Unit: the citation slot. Report with: the judging guideline, the sample size, and coder agreement. This adapts the “citation precision” measure that Liu, Zhang and Liang defined for generative search engines: “the proportion of generated citations that support their associated statements” (Liu et al., 2023, §2.4). Their version also gives credit to a partially supporting citation when the statement’s citations together fully support it and none does so on its own; ours counts full support only. A high presence rate combined with a low support rate means the engine often cites your pages for statements those pages do not back up. Judging support requires a person to open the cited page (a model can help only if its judgments are checked against people’s), so judge a random sample of citations rather than all of them.
- Recommendation rate. The share of substantive answers to recommendation-seeking prompts (“which tool should I use for…”, “best … for …”) that recommend brand b. Formula: substantive answers recommending b ÷ substantive answers to recommendation-seeking prompts. AVJ’s coding rule: an answer recommends b if it presents b as an option the user should choose or consider for the request (named as a pick, listed among suggested options, or described as best for a stated need) and does not attach a caveat that advises against it. A mention only as a cautionary example, a historical reference, or a cited source does not count. This is a broad definition: it does not separate a top pick from one option in a long list. If that matters to you, also code a stricter “primary recommendation” (the option the answer explicitly presents as best, preferred or its first choice; if no option is singled out, code the answer as having no primary recommendation. List order alone does not count unless the answer states that the list is ranked) and report it under that name. Every answer that recommends b also mentions it, but the rate uses a different denominator from mention rate: it is meaningful only for recommendation-seeking prompts, and it should be double-coded like accuracy. Publish your rule if it differs.
- Source-type mix. The share of citation slots by source category. The Index uses publisher, retailer or brand, forum or user-generated, video, reference, government or education, review site, and other, from a published, human-coded taxonomy. It shows which kinds of sources an engine cites, not how visible you are.
We deliberately leave out four things. Sentiment scores are common in dashboards, but without a reference truth they measure the classifier as much as the answer; in our view, the accuracy rubric captures the part that matters, which is whether a statement about you is wrong. Referral clicks and click-through rates from AI surfaces are outcomes, not visibility measures; they belong in your analytics, reported separately, because referrer data from AI products can be incomplete.
Citation position depends on how each engine lays out its sources; the Index reports average position only when a domain is cited in at least 30 answers, and we keep it out of the core set. Answer coverage, meaning how much of a question an answer addresses, describes the engine’s quality rather than your brand’s visibility.
Common reporting mistakes
- Calling mentions citations. A brand named in the text is not a source the engine cited. Report the two separately.
- Hiding the denominator. “Visible in 40%” of what: answers, answers with sources, prompts or slots? State the unit and the denominator.
- Single-run snapshots. One run per prompt, presented as a trend, cannot separate change from run-to-run noise.
- Treating answers as independent. Intervals computed as if every answer were a separate observation are too narrow when prompts are run repeatedly.
- Hiding awkward answers. Refusals, no-citation answers and failed runs that are left out of a denominator without being reported make rates look better than the engine’s behavior. Report them next to every rate.
- Undisclosed or shifting competitor sets. Share of voice changes when the set changes, even if no answer does.
- Pooling engines and markets. An average across engines with different citation styles describes no real engine.
- Reading citations from the answer text. Use the engine’s structured citation fields where available, and normalize URLs (strip tracking parameters such as
utm_*, reduce hostnames to the registrable domain with the Public Suffix List). - Reporting change without an interval for the difference. A 3-point swing between two small samples is often within sampling and run-to-run noise; report the 95% interval of the change and, if you use one, the split-half noise band as a secondary check.
- Blending everything into one score. A composite “AI visibility score” hides which metric moved and why. The Index never combines citation and mention metrics into a single score.
What AVJ’s own numbers look like
AVJ is a new publication, and we will apply these metrics to ourselves. We expect our own baseline to be close to zero: a new publication has few pages for engines to retrieve and a short publishing history. We have not published self-tracking data yet. When the first AVJ Citation Index edition and its launch study are published (currently scheduled for late December 2026), we will update this guide with real, dated figures and their intervals. The Index excludes AVJ’s own domain from ranked tables under its conflict-of-interest rule; any AVJ citations are reported only in a footnote (see “How citations and mentions are processed” in the Index methodology).
Download the metric sheet
The AVJ AI visibility metric sheet (v1.2, CSV) lists each core, secondary and diagnostic metric (17 rows) with its unit of analysis, numerator, denominator, formula, what to report with it, the minimum sample, the most common mistake and the matching AVJ or research reference. Minimum samples are AVJ choices, not industry standards. Use the sheet as a column spec for your own tracker or as a checklist when you read a vendor report.
Download the metric sheet (CSV)
For how AVJ itself collects and analyzes data, see How AVJ measures AI visibility and the full Citation Index methodology. More measurement guides are in Guides: Measurement, and key terms are defined in the AVJ glossary, including AI visibility and generative engine optimization.
Sources
- AVJ. AVJ Citation Index — Methodology (v0.1.1, revised November 5, 2026; v0 published October 23, 2026): “Answer status”, “How citations and mentions are processed”, “Metrics and formulas” and “Statistics” (including “Noise band”). Accessed November 5, 2026. https://aivisibilityjournal.com/index/methodology/
- Aggarwal, P., Murahari, V., Rajpurohit, T., Kalyan, A., Narasimhan, K. and Deshpande, A. “GEO: Generative Engine Optimization.” Proceedings of the 30th ACM SIGKDD Conference on Knowledge Discovery and Data Mining (KDD ’24), pp. 5–16, 2024. DOI: 10.1145/3637528.3671900. arXiv: https://arxiv.org/abs/2311.09735
- Atıl, B., Aykent, S., Chittams, A., Fu, L., Passonneau, R. J., Radcliffe, E., Rajagopal, G. R., Sloan, A., Tudrej, T., Ture, F., Wu, Z., Xu, L. and Baldwin, B. “Non-Determinism of ‘Deterministic’ LLM System Settings in Hosted Environments.” Proceedings of the 5th Workshop on Evaluation and Comparison of NLP Systems (Eval4NLP 2025), pp. 135–148, 2025. DOI: 10.18653/v1/2025.eval4nlp-1.12. Earlier preprint: arXiv 2408.04667.
- Krippendorff, K. “Reliability in Content Analysis: Some Common Misconceptions and Recommendations.” Human Communication Research 30(3): 411–433, 2004. DOI: 10.1111/j.1468-2958.2004.tb00738.x. Author manuscript: https://repository.upenn.edu/server/api/core/bitstreams/b6ea3a5b-3dee-4f27-a159-e44393eda7d4/content
- Landis, J. R. and Koch, G. G. “The Measurement of Observer Agreement for Categorical Data.” Biometrics 33(1): 159–174, 1977. DOI: 10.2307/2529310
- Liu, N. F., Zhang, T. and Liang, P. “Evaluating Verifiability in Generative Search Engines.” Findings of the Association for Computational Linguistics: EMNLP 2023, pp. 7001–7025, 2023. DOI: 10.18653/v1/2023.findings-emnlp.467. arXiv: https://arxiv.org/abs/2304.09848
- McHugh, M. L. “Interrater reliability: the kappa statistic.” Biochemia Medica 22(3): 276–282, 2012. DOI: 10.11613/BM.2012.031. https://pmc.ncbi.nlm.nih.gov/articles/PMC3900052/
- Public Suffix List. Mozilla Foundation. https://publicsuffix.org/
How this was made: drafted with AI assistance from AVJ’s published methodology and the sources listed, then edited by Nhi Phan and fact-checked by Jackies. The worked example uses invented, labeled illustrative data.
Changelog
- November 5, 2026. Aligned with AVJ Citation Index methodology v0.1.1. Defined returned answers (R), substantive answers (S) and answers with citations (A), added the error rate, and described the cell as shorthand. Mention rate (and mention share of voice, accuracy, material error rate and recommendation rate) now use all substantive answers (
okplusno-citation) as the base; previously answers without sources were excluded. Presence rate keeps the Index denominator (answers with citations) and is renamed “presence rate (conditional on citation)”, with a conversion to all substantive answers. Prompt reach counts substantive runs, shows the raw support for each prompt, and classes prompts with fewer than two substantive runs as insufficient evidence, reported by cause; the summary definition now matches the formula. Minimum samples refer to the set each metric is computed over, with per-metric floors. Added: prompt-normalized rates for unequal run counts; names for the three share-of-voice variants, with a declared, frozen domain set for each brand; registrable domains via the Public Suffix List; the empty-set rule for volatility, which is labeled conditional on at least one cited domain per run pair; bootstrap details and stratification; reference fact sheet rules; claim-extraction agreement; an optional primary-recommendation variant, counted only when the answer explicitly singles out one option (list order alone does not count). A change between periods is now judged by the bootstrap interval of the difference, with a scaled split-half noise band as a secondary check. The worked example now includes answers without sources and leads with counts because it is below the minimum sample; its citation share changes from 5.6% to 6.3% and its conditional presence rate from 22.2% to 25.0% because the illustrative inputs changed. Updated the Atıl et al. citation to the published Eval4NLP 2025 version (figures unchanged) and added DOIs for all journal and conference sources. Metric sheet updated to v1.2 (v1 and v1.1 remain available). - November 4, 2026. Published.