Methodology

How we estimate reach.

The "Estimated potential reach" panel on /proof turns every successful delivery into a number you can compare to a traditional wire's "potential audience" line. This page documents every figure we use and where it came from.

The formula

channel_reach = (distinct releases delivered to channel in window)
              × (channel's published weekly or monthly active users)

total_reach   = Σ channel_reach across all channels in that bucket

"Delivered" means a 2xx response from the channel's API (IndexNow, Google Indexing, Bing Submit, WebSub, Bluesky, Wayback, GitHub Releases) or a real fetch logged by an identified AI crawler in ai_crawler_hits. We never count failed or skipped attempts.

Reach is an upper bound on potential audience, not a measured impression count. A release admitted into ChatGPT's retrieval index can be served to any of ChatGPT's 800M weekly users — it is not guaranteed to be served to all of them. The Citation Monitor on the same page shows the actual, recorded pickups.

Two reach figures

The dashboard shows two reach numbers side by side:

  • From ingestion. The formula above applied to every channel that crawled or accepted a release. Upper bound — proves admission, not pickup.
  • From citations. The same formula, restricted to AI assistants that actually cited at least one of your releases in the window. We map the assistant that answered the prompt (ChatGPT, Perplexity, Gemini, Claude, Copilot) to its crawler's audience figure above. Engines without a sourceable audience (Kagi, Phind, You, Grok) are excluded from this number.

Citation reach weighting

The "Estimated AI answer reach" block on /proof weights every recorded answer by the engine's published WAU/MAU:

citation_reach = audience(engine) × 1.00
mention_reach  = audience(engine) × 0.25   // softer signal, no link earned
engine_reach   = citation_reach + mention_reach
  • Brand vs non-brand split. Same classifyTier used by the weekly digest. Brand-prompt and non-brand numbers are shown side-by-side and never summed — they answer different questions.
  • Mentions = 25%. A "brand-mentioned" answer (engine wrote the brand name but didn't link a URL we control) is real exposure, but weaker than an earned citation. We discount it to 25% rather than count it equally or drop it entirely.
  • Engines without an audience figure. Grok, Kagi, Phind, You, and Reddit appear in the engine breakdown so the counts stay honest, but contribute 0 to the reach total — we won't invent a number we can't source.

Likely impressions (Semrush-modeled)

"Reachable audience" above is an upper bound — every monthly-active user of the engine, multiplied by every citation. "Likely impressions (Semrush)" is a tighter, search-grounded estimate of how many people probably actually saw the answer that cited you:

likely_impressions(engine, prompt) =
    monthly_search_volume(topic-seed match)   // Semrush phrase_questions, cached 30 days
  × engine_ai_share(engine)                   // engine's est. share of AI-assistant traffic
  × persistence(engine, prompt)               // citations / probes for that prompt+engine
  × position_weight                           // 1.00 if cited, 0.25 if brand-mentioned

Engine AI-share table (sums to ~1.0, updated quarterly):

Engine
Share of AI-query traffic
ChatGPT
60%
Gemini
15%
Copilot
10%
Perplexity
8%
Claude
5%
  • Why it's smaller. The upper bound credits every ChatGPT user (~800M weekly) for every citation. This number only credits users who actually asked the prompt, on the engine that cited you, weighted by how often we held that citation across repeat probes.
  • Still a model. No vendor publishes per-answer impression counts. Search volume is a proxy for AI-query demand; engine-share is a public estimate. Treat this as a defensible floor, not a measurement.
  • Engines without a share. Grok, Kagi, Phind, You, Reddit contribute 0 to likely impressions — same convention as reachable audience.
  • Volume source. Semrush phrase_questions + phrase_this per topic seed keyword (e.g. "ai press release distribution"), cached 30 days. Each AI prompt is matched to the closest question variant by token overlap; unmatched prompts use the seed's volume × 10% as a long-tail proxy.

AI models & their crawlers

Channel
Audience
As of
Source
ChatGPT (GPTBot)
gptbot
800M WAU
2025-10
OpenAI DevDay 2025 keynote — 800M weekly active ChatGPT users.
ChatGPT Search (OAI-SearchBot)
oai-searchbot
800M WAU
2025-10
OpenAI DevDay 2025 — ChatGPT WAU, OAI-SearchBot powers ChatGPT Search.
ChatGPT live browse (ChatGPT-User)
chatgpt_user
800M WAU
2025-10
Same as ChatGPT — fetched on-demand when a user asks a question that needs a live page.
Claude (ClaudeBot)
claudebot
30M MAU
2025-09
Anthropic reporting / Sensor Tower estimates — ~30M MAU across Claude apps.
Claude live browse (Claude-Web)
claude-web
30M MAU
2025-09
Same as Claude — fetched on-demand for live answers.
Perplexity (PerplexityBot)
perplexitybot
22M MAU
2025-07
Perplexity public disclosures — ~22M MAU mid-2025.
Perplexity live browse (Perplexity-User)
perplexity-user
22M MAU
2025-07
Same as Perplexity — fetched on-demand.
Gemini (Google-Extended)
google-extended
400M MAU
2025-05
Google I/O 2025 — Gemini hit 400M MAU.
Meta AI (Meta-ExternalAgent)
meta-externalagent
600M MAU
2025-04
Meta Q1 2025 earnings — Meta AI surpassed 600M MAU across the family of apps.
Apple Intelligence (Applebot-Extended)
applebot
1.4B MAU
2025-02
Apple active device base — Applebot-Extended powers Apple Intelligence + Siri.
Alexa+ (Amazonbot)
amazonbot
100M MAU
2025-03
Amazon disclosures — Alexa active devices.
Doubao / TikTok AI (Bytespider)
bytespider
150M MAU
2025-08
ByteDance disclosures — Doubao MAU.

Search engines

Channel
Audience
As of
Source
Bing + Yandex + Naver + Seznam (IndexNow)
indexnow
1.2B MAU
2025-06
Combined published MAU: Bing ~100M, Yandex ~500M, Naver ~30M, Seznam ~5M — rounded up for shared crawl users.
Google Search
google-indexing-api
4.3B MAU
2025-06
Statista 2025 — Google Search global MAU.
Bing Webmaster (direct)
bing-submit-url
100M MAU
2024-12
Microsoft 2024 — Bing.com MAU.
WebSub / PubSubHubbub
websub
50M MAU
2025-01
Estimated reach of Google's public WebSub hub subscribers (feed aggregators, news bots, RSS readers).

Social networks

Channel
Audience
As of
Source
Bluesky
bluesky
35M MAU
2025-10
Bluesky public count — total registered accounts; per-post reach varies by followers and reposts.

Permanent archives

Channel
Audience
As of
Source
Wayback Machine
wayback
2025-01
Internet Archive — permanent public archive. No per-page view metric.
GitHub Releases mirror
github-release
2025-01
GitHub — public, crawlable mirror. No per-release view metric.

What we don't count

  • Webhook subscribers. Private fan-out feeds. Counted in deliveries but not in reach — we can't see the subscriber's downstream audience.
  • Failed or skipped pings. IndexNow dedup, Bing not-authorized, expired tokens — all excluded.
  • Archive view counts. Wayback and the GitHub mirror don't expose per-page views, so they appear as channels that ran but contribute zero to the reach totals.

We update the audience figures quarterly. If you spot one that's stale or wrong, tell us and we'll fix it.