AI Marketing6 min read

How an AI visibility score works: the five signals behind the number

The five signals behind a brand's AI visibility score, how they are weighted, and why every number carries a confidence interval.

PG
Priyam Garg
Co-founder, Moistur AI
Oct 1, 2026

A single number is only useful if you know what it is made of. This guide explains how Moistur AI builds a brand's AI visibility score (we call it the GEO score), what each of its five signals measures, how they are weighted, and why we report confidence intervals instead of a bare percentage. The method is the same whether you are a single brand on the Starter plan or an agency reporting on ten client brands.

Start with the questions, not the brand

Every measurement begins with a prompt set: the questions your buyers ask an AI assistant. "What is the best project management tool for a 20-person agency?" "Is Brand X worth the price?" "Alternatives to Brand Y." A good set mixes high-intent buying questions, comparisons and direct questions about the brand, and it stays fixed from week to week so that changes in the score mean something changed in the answers, not in the questions.

Moistur AI asks each tracked assistant every prompt once a day. On Starter that is ChatGPT, Claude and Gemini; Pro and Agency add Perplexity, Google AI Overviews and Microsoft Copilot; Enterprise adds Grok and Google AI Mode. Each answer is stored in full, then scored. The daily cadence matters: one answer from one model on one day is close to noise, and the score is built from the whole week of answers, not from the latest one.

The five signals

1. Visibility (30% of the score)

Visibility is the share of answers that name your brand at all. If your buyers' questions produce 100 answers in a week and 58 of them mention you, your visibility is 58%.

It carries the highest weight because nothing else matters until you are in the answer. A brand that AI never names has no sentiment to improve and no share of voice to defend.

We also record where in the answer you appear, because being named first in a list of three is a different outcome from being the seventh of ten.

2. Sentiment (25%)

Sentiment is how the assistant describes you when it does name you: recommended or merely mentioned, praised or hedged, accurate or confused with someone else. Each mention is scored from −1 (framed very negatively) to 1 (framed very positively), together with how prominently you appear in the answer (a headline recommendation or a passing footnote), and the result is mapped to a 0 to 100 scale.

Two independent models from different providers read every mention, and neither is allowed to judge its own answers. That stops one model's habits from becoming your sentiment score.

3. Share of voice (20%)

Share of voice is your slice of all the brand mentions in your category's answers. If the answers to "best tools for X" name five brands 200 times in a week and 44 of those mentions are you, your share of voice is 22%.

This is the competitive signal. Visibility tells you whether you are in the conversation; share of voice tells you who is winning it. Most of the week-to-week movement that matters to a marketing team shows up here first, because a competitor's new comparison page or a fresh batch of reviews moves the answers before it moves anything else.

4. Citation authority (15%)

AI assistants that search the web (Perplexity, Google AI Overviews, ChatGPT with browsing) cite sources. Citation authority measures the sources cited in your category's answers and how much weight they carry: a review site that is cited in most answers counts for more than a forum post cited once. Your own site and the third-party pages that describe you are tracked separately, so you can see whether the assistant is reading you or reading about you.

This signal is the most practical to act on. If the top-cited source in your category never mentions you, you know exactly where the next piece of work goes.

5. Model agreement (10%)

Model agreement measures how consistently the assistants describe you. If ChatGPT recommends you, Claude is neutral and Gemini confuses you with another company, your agreement score is low, even if your average sentiment looks fine.

It carries the lowest weight because disagreement is a risk signal rather than an outcome: it tells you the picture is unstable, and that a buyer's experience depends on which assistant they happen to use.

How the weights combine

The score is a weighted mean of the five signals: visibility 30%, sentiment 25%, share of voice 20%, citation authority 15%, model agreement 10%. The weights sum to 100%, and they are fixed; a brand cannot inflate its score by having one signal measured and the others missing.

Three rules keep the number honest:

  1. A signal that cannot be measured is not counted as zero. If a brand is never named, there is no sentiment to score. That signal is filled with a neutral value rather than dragged to zero, so the score reflects what is known, not what is missing.
  2. At least three of the five signals must be measured before a headline score is published. Below that, the dashboard shows which signals are present and says the score is not yet reliable.
  3. Displayed numbers are rounded, and an unmeasured value is shown as a dash, never as 0. A zero means "measured, and it is zero", which is a very different fact from "not measured yet".

Why every number has a confidence interval

Ask an assistant the same question twice and you can get two different answers. A visibility figure of 58% built from 100 answers is a solid estimate; the same figure built from 6 answers is a guess. Moistur AI reports an interval alongside each signal so you can tell the two apart.

Visibility and citation signals are modelled as proportions with a credible interval that narrows as more answers accumulate. Share of voice is modelled across all the brands in the category at once, so the intervals for you and your competitors are consistent with each other. In practice this means the first week of tracking shows wide intervals that tighten over the following weeks, and a change is only called a change when the intervals say so.

From a score to a state

The dashboard summarises the score as one of three states: Dry (0 to 40), barely recalled, or recalled with negative sentiment; Soggy (40 to 80), recognised but out-ranked by competitors; Moist (80 to 100), strong recall and a winning share of voice. The state is a reading of the score, not a separate measurement, and it exists because "Soggy" says more to a client in a review meeting than "54".

What the score is not

It is not a prediction of traffic or revenue. AI assistants send a small and growing share of visits, and most of that traffic arrives without a referrer, so a visibility score cannot be converted into a revenue figure with any honesty. Where a brand connects its web analytics, Moistur AI reports AI-attributed visits as an identified floor, never as a causal lift.

It is also not a ranking. AI assistants do not rank pages; they write an answer. The score measures your presence inside that answer, which is why the fixes it leads to are about what the assistants read, not about where a page sits.

What to do with it

Each week the score comes with a playbook: which signal moved and why, the prompts where you lost ground, and the fixes in priority order. Prompt fixes name the tracked question they target; page fixes name the page to change. Once a fix ships, the following weeks of answers show whether the signal moved, with the same intervals applied.

If you want to see the five signals on your own brand, book a 15-minute call and we will run your prompts live. The plans and what each one tracks are on the pricing page, and the measurements described here are shown in detail on the features page. What the weekly playbook looks like when it reaches a client is the sample client report.

Found this useful? Share it.

All articles

See how AI talks about your brand

Track sentiment, visibility and competitive positioning across up to 8 AI assistants, including ChatGPT, Claude, Gemini and Perplexity, every day.