AI Search Visibility Tracker: AI Overviews & AI Mode Citations
Pricing
from $7.00 / 1,000 ai overview checks
AI Search Visibility Tracker: AI Overviews & AI Mode Citations
[$0.008/check] Does Google's AI cite your brand? Track queries across Google AI Overviews & AI Mode: full AI answers, cited sources with positions, brand & competitor citation/mention detection, and share of voice. Generative engine optimization (GEO/AEO) monitoring as clean JSON.
Pricing
from $7.00 / 1,000 ai overview checks
Rating
0.0
(0)
Developer
Jaybird Technologies
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Share
AI Search Visibility Tracker — Google AI Overviews & AI Mode Brand Citations
Does Google's AI cite your brand? For every query you track, this Actor captures the Google AI Overview and AI Mode answer, extracts every cited source with its position, and — when you add your brand — tells you whether you were cited, mentioned, and what your share of voice is against competitors. Clean JSON, ready for dashboards, schedules, and AI agents.
🔍 AI Overview scraper · 🤖 AI Mode scraper · 🏷️ Brand & competitor citation detection · 📊 Share of voice + run summary report · 🌍 Geo-localized (any country/language/device) · 💰 From $0.008/check
{"query": "best crm for small business","engine": "aiOverview","status": "ok","aiAnswerPresent": true,"answerText": "The best CRM for a small business depends on your primary focus…","sources": [{ "position": 1, "url": "https://www.example.com/best-crm", "domain": "example.com", "title": "Best CRM Software Compared" },{ "position": 2, "url": "https://www.hubspot.com/products/crm", "domain": "hubspot.com", "title": "HubSpot CRM" }],"brandMentioned": true,"brandCited": true,"brandCitationPositions": [2],"competitorMatrix": {"pipedrive.com": { "cited": true, "mentioned": true, "positions": [4] },"zoho.com": { "cited": false, "mentioned": false, "positions": [] }},"shareOfVoice": 0.5,"country": "us","language": "en","device": "desktop","scrapedAt": "2026-07-02T12:00:00.000Z"}
What does AI Search Visibility Tracker do?
Google now answers a large share of searches directly — with an AI Overview above the classic results, and with AI Mode, its fully conversational search surface. If the AI's answer recommends your competitors and never cites you, that traffic is gone before anyone sees a blue link. This is what generative engine optimization (GEO/AEO) teams and agencies are hired to fix — and you can't fix what you don't measure.
For each query × engine pair, the tracker:
- Runs the query on Google, geo-pinned to your chosen country — AI Overviews over a dedicated captcha-free SERP route, AI Mode in a real hardened browser
- Captures the AI Overview or AI Mode answer — full text and every cited source with its position
- Detects whether an AI answer was shown at all (
aiAnswerPresent— AI Overviews don't trigger on every query, and knowing that is the data point) - Matches your brand and competitors against citations (by domain, subdomains included) and against the answer text (by name and aliases)
- Computes share of voice: your citations ÷ (your citations + competitor citations)
Why use this tracker?
- Built for reliability. This category is young and shaky — the most-used tracker holds a 1★ rating and another entrant completes fewer than 1 in 5 runs. This Actor routes each surface through the path that's most reliable for it: AI Overviews travel a dedicated captcha-free SERP route (no browser to block), and AI Mode runs in a hardened real browser with warmed sessions, escalating proxies, and consent handling. No login, no API keys, no bring-your-own-SERP-API.
- Tracker, not just a scraper. Raw AI Overview extraction exists elsewhere. The value here is the packaging: brand-match detection, competitor matrix, citation positions, and share of voice per query — the numbers a GEO report is actually made of.
- Deferred generation handled. Google often generates AI Overviews asynchronously after the page loads. Checks wait for generation to resolve and retry when it doesn't — a check never silently reports "no AI answer" because Google was slow. If it can't be resolved after retries, the row is marked
failedand not charged. - Real localization.
countryCodeisn't just passed through — checks run from a residential exit IP in that country with matchinggl,hl, andAccept-Language, so an agency in Berlin trackingderesults sees what German users see. - Priced to run daily. AI Overview checks are $8 per 1,000 — versus $10–15 per 1,000 at the closest alternatives. AI Mode checks are $0.06 — 70% below Apify's own Google Search Scraper ($0.20/result) and 25–33% below the $0.08–0.09 AI visibility trackers.
- A summary that answers the question. Besides per-check rows, every run writes a
SUMMARYreport: brand citation rate, average share of voice, the top domains Google's AI cites in your niche, and the exact queries where your brand is missing — your GEO to-do list, one JSON object.
What data can you extract?
| Field | Description |
|---|---|
query, engine | The check: one row per query per surface (aiOverview, aiMode) |
status | ok, no_ai_answer, or failed (failed rows are never charged) |
aiAnswerPresent | Whether Google showed an AI answer for this query |
answerText / answerHtml | Full AI answer text (HTML optional via input toggle) |
sources[] | Every cited source: position, url, domain, title |
brandMentioned / brandCited | Name/alias found in answer text; domain found in citations |
brandCitationPositions[] | Where in the citation list your brand appears |
competitorMatrix | Per-competitor cited / mentioned / positions |
shareOfVoice | Brand citations ÷ (brand + competitor citations), 0–1 |
country, language, device, scrapedAt | Check context for time-series analysis |
How to track your AI search visibility
- Enter your queries (the searches your customers make, not your brand name — "best crm for small business", not "HubSpot")
- Pick the engines — AI Overview, AI Mode, or both
- Optionally add brandName, brandDomain, brandAliases, and competitorDomains to unlock brand detection and share of voice
- Set countryCode / languageCode / device for the market you care about
- Run it — or better, schedule it (see below)
Track daily (recommended)
Visibility in AI answers moves constantly — Google regenerates answers, citations rotate, and competitors publish. Create a Schedule in Apify Console (e.g. every morning at 6:00), point it at this Actor with your saved input, and you get a dataset per day. Feed those into Looker Studio, Google Sheets, or your warehouse via integrations and you have a longitudinal GEO dashboard: share of voice over time, per query, per market.
Ask it from an AI agent (MCP)
"Is my brand cited by Google's AI for this query?" is a question AI agents ask naturally. This Actor is exposed through Apify's MCP server, so you can wire it into Claude, or any MCP-capable agent, and get structured visibility answers inside the conversation.
How much will it cost?
Pricing is pay-per-event — you pay per check, not per compute-hour:
| Event | Price | When it's charged |
|---|---|---|
| AI Overview check | $0.008 | Per completed check, whether or not an AI answer was present |
| AI Mode check | $0.06 | Per completed check — AI Mode answers are JS-streamed and need a real browser with premium proxies, a much heavier retrieval |
| Brand match detected | $0.002 | Bonus, only when your brand domain matches a citation |
| Actor start | $0.00005 | Once per run |
Examples: a one-off 1,000-query AI Overview audit: $8. 50 queries tracked daily on AI Overviews: $0.40/day (~$12/month). Add AI Mode for the full two-surface feed: $3.40/day.
How that compares: Apify's own Google Search Scraper charges $0.20 per AI Mode result — we're 70% below it. AI visibility trackers on the Store run $0.08–0.09 per check on any surface — our AI Overview checks are a tenth of that, and AI Mode checks 25–33% less.
Why checks without an AI answer are still charged: the Actor does the same full retrieval work to verify no AI Overview triggered — absence is only ever reported from a verifiably healthy results page — and for a tracker, "your query stopped triggering an AI Overview" is exactly the alert you want. What's never charged: rows with status: "failed".
Subscription tiers (Bronze → Diamond) get automatic per-event discounts of up to ~10%.
Input
Minimal input:
{"queries": ["best crm for small business", "crm with free tier"]}
Full brand tracking:
{"queries": ["best crm for small business", "best sales pipeline software"],"engines": ["aiOverview", "aiMode"],"brandName": "HubSpot","brandDomain": "hubspot.com","brandAliases": ["HubSpot CRM"],"competitorDomains": ["pipedrive.com", "zoho.com", "salesforce.com"],"countryCode": "us","languageCode": "en","device": "desktop"}
Output
One dataset item per query × engine (see the example at the top). Items with status: "no_ai_answer" have aiAnswerPresent: false and empty sources — that's a real, billable finding, not an error. Items with status: "failed" include an errorMessage and are not charged.
Run summary report
Every run also writes a SUMMARY record to the key-value store (linked from the run's Output tab) that answers the visibility question directly — no aggregation needed:
{"totalChecks": 40,"checksWithAiAnswer": 31,"byEngine": { "aiOverview": { "checks": 20, "withAiAnswer": 13, "withoutAiAnswer": 7 }, "aiMode": { "checks": 20, "withAiAnswer": 18, "withoutAiAnswer": 2 } },"brand": {"name": "HubSpot","citationRate": 0.45,"averageShareOfVoice": 0.38,"answersWithoutBrandCitation": [ { "query": "best free crm", "engine": "aiOverview" } ]},"topCitedDomains": [{ "domain": "salesforce.com", "citations": 14, "appearsInChecks": 9 },{ "domain": "reddit.com", "citations": 11, "appearsInChecks": 8 }]}
topCitedDomains is competitive intel on its own: the domains Google's AI trusts in your niche — the sites to study, pitch, or get cited by. answersWithoutBrandCitation is your GEO work queue.
Tips
- Mix query types. Informational queries ("how to…", "what is…", "best…") trigger AI Overviews far more often than navigational ones. Tracking a few non-triggering queries is useful — you'll see when Google starts answering them.
- Aliases matter for mentions. The AI often writes "HubSpot's free CRM" rather than your exact product name. Add the variants people actually say.
- Competitor domains drive share of voice. Without
competitorDomains,shareOfVoicestays null — the metric is defined against a competitive set. - AI Mode nearly always answers; AI Overviews don't. Expect
aiAnswerPresent: falsemostly on theaiOverviewengine — that asymmetry is itself insight. - Different markets, different runs. One run = one country/language/device combination, so each dataset is a clean cohort. Schedule one run per market.
Integrations
Works with all Apify integrations: export to Google Sheets, BigQuery, Airbyte, Make, Zapier, n8n, or fetch the dataset via the Apify API (…/datasets/{id}/items?format=json). Webhooks can notify Slack when a run finishes — or when your share of voice moves.
FAQ
Which AI search engines are supported?
Google AI Overviews and Google AI Mode. The engines input and output schema are designed so ChatGPT Search and Perplexity can be added without breaking changes — they're on the roadmap.
Why does my query show aiAnswerPresent: false?
Google doesn't generate an AI Overview for every query — trigger rates vary by query type, country, and device, and Google adjusts them constantly. The check verified that the results page rendered fine and no AI answer was shown. That verification costs the same retrieval work as a capture, which is why it's a billable check (documented above — no surprises).
How is shareOfVoice calculated?
brand citations ÷ (brand citations + competitor citations) within one AI answer, using citation counts by domain (subdomains included). It's null when you haven't configured a brand domain and competitors, or when neither side is cited; it's 0 when competitors are cited and you aren't — which is the number that should worry you.
Does it handle Google's deferred AI Overview generation?
Yes. When Google renders the AI Overview container but generates the answer asynchronously, the check waits for generation to settle and retries on timeout. It never reports aiAnswerPresent: false just because generation was slow — that distinction is load-bearing for a tracker.
Can I use this as a plain Google AI Overview scraper or AI Mode scraper?
Yes — leave the brand fields empty and it's a straight scraper: full answer text (answerText, optional answerHtml) plus every cited source with position, for either surface. The brand/competitor analytics only activate when you configure them.
How do I export results to Excel, CSV, or Google Sheets?
The dataset downloads in JSON, CSV, Excel, XML, or HTML straight from the run's Storage tab (or via API with ?format=csv). For recurring exports, the Google Sheets integration appends each scheduled run to a sheet automatically.
Can an AI agent read the results without parsing every row?
Yes — the SUMMARY key-value record is designed for exactly that: one JSON object with citation rate, average share of voice, top cited domains, and the queries missing a brand citation. Agents connected through Apify's MCP server can call the Actor and read the summary in one round trip.
Is this legal?
The Actor scrapes only publicly available search results, operates no accounts, and stores no personal data. You're responsible for using the extracted data in compliance with applicable laws and Google's terms in your jurisdiction.
Can I run it for markets outside the US?
Yes — set countryCode and languageCode. Checks are geo-pinned to the target country (country-routed SERP requests for AI Overviews, in-country residential exit IPs for AI Mode) with matching search parameters and headers, so localized AI answers are the real thing, not a US proxy of them.
Keywords: AI visibility, AI overview scraper, AI overview tracking, AI mode scraper, generative engine optimization, GEO, AEO, LLM SEO, brand citations, AI search monitoring, share of voice, answer engine optimization, ChatGPT SEO, brand visibility in AI search.