Monitoring

Mentioned and cited are different results, so they score differently

80 vs 40

points for a citation against a bare mention, per question per engine

datapointValue in geo/score.go: 0 if absent, 40 mentioned, 80 cited, plus up to 20 for organic rank

Being named in an answer and being cited in one are not the same outcome. A name-drop puts you in a sentence; a citation puts your domain in the source list, where it gets clicked and where the next answer is likely to retrieve you again. Most tools in this category collapse both into one "visibility" percentage.

We score them apart. A datapoint is one question on one engine: nothing if you are absent, 40 if the answer named you, 80 if it cited your domain, plus a bonus for organic rank that tops out at 100.

Where it lives: Visibility and Analytics in the dashboard, and the weekly digest email.

What it does

Fans out across engines

Basic checks Perplexity, which retrieves and cites more heavily than the others. Growth and Agency add ChatGPT. Claude and Gemini are checked through the same fan-out where grounding is available, which costs a per-request search fee and is why they sit behind a login rather than in the free tools.

Excludes ungrounded answers from the citation rate

An engine answering from its weights cannot cite anyone. Counting it in the denominator means a product cited by every grounded engine reads as 50% cited the moment an ungrounded one joins the fan-out. The mention rate keeps the full denominator, because being named from memory is a real and separately interesting outcome.

Records sentiment and the snippet

Every stored check keeps what the engine actually said about you. An answer that names you unfavourably is a different problem from one that omits you, and it shows up as unfavourable rather than as a win.

How it works

  • Checks are capped per plan over a rolling 24 hours, and the surface tells you when the cap frees up instead of failing with "try again later".
  • Every run stores the engine, whether it searched the web, the sources it returned, and the timestamp.
  • The rank bonus reads the same cached organic position the rank overlap check uses, so the two never disagree.

What it does not do

  • Answers vary run to run. A single check is weak evidence, which is why the plans default to a quarterly cycle and the score is meant to be read as a trend.
  • We check the engines through their APIs. That is close to but not identical to what a logged-in consumer sees in the chat UI, especially with memory and personalisation on.
  • A score going up does not prove your publishing caused it. It proves the answers changed.

Which plans have it

AI Visibility checks. Engine coverage by plan: see the engines row on pricing.

AI Visibility checks by plan
BasicGrowthAgency
450/mo (15/day)1,200/mo (40/day)3,600/mo (120/day)

Read the full plan comparison.

Try it free

One question, one engine, no signup: does ChatGPT name you, cite you, or recommend someone else.

Free ChatGPT Visibility Checker

Live demo

See AI visibility monitoring on a real account, with no signup and nothing to configure.

Open the demo

Frequently asked questions

How is the score calculated?

Average of all datapoints, where each datapoint is one question on one engine: 0 absent, 40 mentioned, 80 cited, plus round(20/rank) when the page ranks, capped at 100. A citation is worth roughly double a mention and top rank adds the most.

Why is my score zero on day one?

Because most products are absent from the answers in their category on day one. That is the common outcome of a first baseline, and it is the number the rest of the product exists to change.

Do you check Google AI Overviews?

Not directly. The rank overlap check reads Brave Search, and the AI checks run against Perplexity and ChatGPT. AI Overviews would need a different collection method and we would rather say so than imply coverage we do not have.

Related features

Every feature we publish

Run it on your own product

Start with the free visibility check to see whether the engines name you today, then run the scan that shows which pages they used instead.