Skip to content
enspire

Methodology

How the AI visibility score is measured, and what it does not mean.

What we measure

For each project, enspire asks AI assistants the questions a prospective buyer would ask before they know the product exists, then uses a second model to extract whether the product is recommended, in what position, who is recommended instead, and a short excerpt. We also retain the citation, grounding, or search-result links returned by the provider. We do not scrape consumer chat UIs or store the complete provider answer.

Engines

Each configured engine included in a scan is queried through the vendor’s official API with web search or grounding turned on:

  • ChatGPT (OpenAI): OpenAI Responses API with the hosted web search tool. Citations come from the answer's url_citation annotations.
  • Claude (Anthropic): Anthropic Messages API with the web search tool. Sources are search-result URLs returned by the tool, not verified inline citations.

API answers are a stand-in for what a person sees in the app. Published comparisons show meaningful differences between API and UI answers (different length, sometimes different picks), so treat the score as a consistent, repeatable proxy rather than a screenshot of one person’s chat. We prefer the official APIs because they provide a consistent integration surface and are within each vendor’s terms.

Questions

For a public website check, questions are generated from readable HTTPS homepage text. For a public repository check, they come from the README and package metadata. In the workspace, the owner confirms or edits the product description and final question set. Suggested formats include “best X for Y”, “X vs Y”, problem-phrased and persona-phrased questions, and long-tail questions with a specific constraint. The product’s own name never appears in a question. The set is frozen after the first scan so scores are comparable over time; you can add or retire questions, and the history notes when the set changed.

Repeat runs and the range

AI answers are non-deterministic: the same question asked twice can name different products. Paid plans ask each question × engine 3 times per scan. The headline score is the average; the range shown next to it is the lowest and highest score across those runs. If the range is wide, the answers are unstable for your category and single-run tools are showing you noise.

The score

Each answer contributes 1.0 if the product is the first recommendation, 0.7 if it is in the top three, 0.4 if it is mentioned lower, and 0 if it is absent. The visibility score is the mean across all question × engine × run answers, times 100. Per-engine scores use the same formula on that engine’s answers only. A page’s before/after uses the same formula restricted to the question the page targets.

Sources and listings

We keep the URLs the provider returns as citation, grounding, or search-result metadata, capped in the public report. These are not equally strong evidence: some are inline citations, some are search results, and some engines return redirect links or only a domain title. For frequently returned sources we fetch the page and check whether it names the product (“listed” / “not listed”). Links that cannot be checked show as “unchecked”.

Indexing audit

No model calls: we fetch robots.txt, sitemap.xml, the homepage and llms.txt. The robots result is a root-path heuristic for GPTBot, OAI-SearchBot, ClaudeBot, Claude-SearchBot, PerplexityBot, Google-Extended, Bingbot and CCBot; it does not prove that another URL is crawlable or indexed. Failed, unauthorized, rate-limited, and server-error robots fetches are shown as unknown rather than allowed. We also check for readable server-rendered text and read the JSON-LD types on the homepage. llms.txt is reported as optional; finding the file does not prove that an assistant used or cited it.

What the score is not

It is not traffic, not revenue, and not a promise. It is a repeatable measure of whether the assistants buyers use name your product for the questions you care about. Use it to pick what to ship next, and read the before/after on merged pages as the real signal.

Plans

  • Free: 12 questions · 1 engine · 1 run per question · automatic scans weekly
  • Starter: 30 questions · no engine cap · 3 runs per question · automatic scans on the daily scheduler
  • Pro: 60 questions · no engine cap · 3 runs per question · automatic scans on the daily scheduler
  • Growth: 100 questions · no engine cap · 3 runs per question · automatic scans on the daily scheduler

Questions? FAQ · support@enspire.co

© enspire
TermsPrivacyRefunds