AI Answer Visibility Tracker

v1.0.0$0.0316/Google AI Overviews sampleSignal Detection

Last updated October 29, 2026

Check whether Google AI Overviews, ChatGPT, Claude, Perplexity, and Gemini name and cite your brand for your buyers' questions. Named and cited rates, competitor rates, and every cited source. Covers AI Overviews on the normal Google results page, not Google AI Mode.

Install

bash
npx @mambalabsdev/mcp-ai-answer-visibility-tracker

Every tool here also runs hosted, with no install at all, through Apify's MCP endpoint.

Features

  • Ask each buyer question 1 to 10 times and see every answer, not one lucky read.
  • Named and cited rates per question and engine, with a 95 percent range and the 10 most cited domains.
  • Up to 20 competitors tracked in the same answers.
  • Google AI Overviews need no key. ChatGPT, Claude, Perplexity, and Gemini run on your own keys, billed to you by that vendor.
  • Pay per event: Google AI Overviews sample at $0.0316.
  • Pay per event: AI engine sample at $0.009.
  • Pay per event: Question rates at $0.003.

Input

brand_namestringrequired

Required. The brand to look for in the answers, as people write it. Matched as a whole word, any case.

brand_domainstringoptional

Your website domain, such as hubspot.com. An answer that cites a page on this domain (or a subdomain) counts as cited. Leave empty to match cited domains on the brand name.

questionsarrayrequired

Required. 1 to 50 questions your buyers ask, one per line, written the way they would type them, such as "best crm for small business".

enginesarrayoptional

Where to ask. google_ai_overview needs no key. openai (ChatGPT), anthropic (Claude), perplexity, and gemini run on your own API key, given below, and the model use is billed to you by that vendor.

samplesstringoptional

How many times each question is asked on each engine, 1 to 10. Answers change from one ask to the next, so the rates come from several samples. Each sample is one charged event. Default 3.

competitorsarrayoptional

Optional. Up to 20 competitors to track in the same answers, one per line, as a name, a domain, or name|domain (Pipedrive|pipedrive.com).

brand_aliasesarrayoptional

Optional. Other ways answers write the brand, such as a product name. Up to 10.

countrystringoptional

Two letter country code for Google, such as us or gb. The answer engines are asked without a country.

languagestringoptional

Language code for Google, such as en or de.

include_answer_textstringoptional

true (default): each sample row carries the answer text (up to 8,000 characters) as well as a 300 character excerpt. false: the excerpt only.

openai_api_keystringoptional

Your own OpenAI key, needed only for the openai engine. Sent only to api.openai.com, never stored, logged, or written to a row.

anthropic_api_keystringoptional

Your own Anthropic key, needed only for the anthropic engine. Sent only to api.anthropic.com, never stored, logged, or written to a row.

perplexity_api_keystringoptional

Your own Perplexity key, needed only for the perplexity engine. Sent only to api.perplexity.ai, never stored, logged, or written to a row.

gemini_api_keystringoptional

Your own Google AI Studio key, needed only for the gemini engine. Sent only to generativelanguage.googleapis.com, never stored, logged, or written to a row.

openai_modelstringoptional

Model for the openai engine, asked with web search on. Default gpt-5-mini.

anthropic_modelstringoptional

Model for the anthropic engine, asked with web search on. Default claude-sonnet-5-5.

perplexity_modelstringoptional

Model for the perplexity engine. Default sonar.

gemini_modelstringoptional

Model for the gemini engine, asked with Google Search grounding on. Default gemini-2.5-flash.

max_charge_usdstringoptional

Optional. The run stops before any charge that would take it past this amount. Leave empty to rely only on the maximum cost per run you set in Apify, which the actor also honors.

Output schema

json
{
  "row_type": "string",
  "input_key": "string",
  "question": "string",
  "engine": "string",
  "model": "string",
  "sample_index": "integer",
  "brand_name": "string",
  "brand_domain": "string",
  "answer_found": "boolean",
  "overview_state": "string",
  "answer_excerpt": "string",
  "answer_text": "string",
  "brand_named": "boolean",
  "brand_cited": "boolean",
  "first_mention_rank": "integer",
  "cited_urls": "array",
  "cited_domains": "array",
  "competitors_named": "array",
  "competitors_cited": "array",
  "samples_run": "integer",
  "answers_found": "integer",
  "brand_named_count": "integer",
  "brand_cited_count": "integer",
  "brand_named_rate": "number",
  "brand_cited_rate": "number",
  "named_rate_low": "number",
  "named_rate_high": "number",
  "top_cited_domains": "array",
  "competitor_rates_json": "string",
  "country": "string",
  "language": "string",
  "row_status": "string",
  "error_reason": "string",
  "billable_events_json": "string",
  "checked_at": "string"
}

Pricing

$0.0316per Google AI Overviews sample
EventFree plan price
Google AI Overviews sample$0.0316
AI engine sample$0.009
Question rates$0.003
Actor Start$0.001082

Pay per event on the Apify platform. Paid Apify plans pay less per event. No subscription, no seat license.

On the Apify free plan the actor stops at $1.50 of charges a month, about 47 Google AI Overviews samples. Any paid Apify plan removes the cap.

Limits

  • AI answers vary. A rate from 3 samples is a rough read; named_rate_low and named_rate_high show how rough. Use more samples for questions that matter.
  • On questions where Google writes the overview live, many samples come back deferred: in a test of 10 long tail questions on 2026-10-28, 8 of 20 samples were deferred, while 10 of 10 samples of 5 common CRM questions were read. Popular questions read best.
  • Google AI Mode, the chat style tab in Google search, is not covered. The actor reads only the AI Overview on the normal Google results page.
  • The answer engines are asked through their APIs with web search on. A consumer app can answer differently, for example with personalization or a different default model.
  • Brand matching is by whole word. A brand name that is also a common word (such as "Notion" in "the notion of") can be over counted; add the domain and aliases, and read the excerpt.
  • Google pages are read from the country you set, signed out, with personalization off.