Use case5 min read2026-07-29

Monitor Google AI Overviews

Google AI Overviews sit above the results your SEO program spent years earning — when they appear. That conditional is the whole discipline: an overview shows for some queries, in some countries, on some days, and any monitoring that ignores the appearing part produces numbers that lie. Monitoring AI Overviews properly means tracking two things separately: whether an overview appeared for the query at all, and how your brand fared inside the ones that did. AgentGEO returns each attempt as a record — including the absences — so both denominators come from the same run.

Read this page with an AI

The deliverable is a weekly table per market: presence rate over your query set, mention rate among present overviews, and citation rate among overviews that carried references — with the raw records behind each cell.

How AI Overviews monitoring works

  1. Fetch with the two parameters this surface actually reads. google_ai_overview honours country and language — the same query can produce an overview in US and none in DE, so pin both per market instead of averaging across them.
  2. Record absences as rows, not errors. "No overview appeared" is half your data. Store it with the same date and query as a hit, flagged present: false.
  3. Compute with two denominators. Presence rate = overviews ÷ queries. Mention and citation rates divide by present overviews only. Blending them turns "Google stopped showing overviews here" into a phantom visibility crash.
aio_monitor.py — presence and mentions, separated
import requests

BRAND = "Acme"
QUERIES = ["best crm for small business", "crm with invoicing", "simple crm for freelancers"]

present, mentioned = 0, 0
for query in QUERIES:
    resp = requests.post(
        "https://api.agentgeo.org/v1/fetches",
        json={
            "query": query,
            "surfaces": ["google_ai_overview"],
            "country": "US",
            "language": "en",
        },
        headers={"Authorization": "Bearer ag_live_your_key_here"},
        timeout=200,
    )
    resp.raise_for_status()
    for answer in resp.json()["answers"]:
        text = answer.get("answerText") or ""
        if text.strip():
            present += 1
            if BRAND.lower() in text.lower():
                mentioned += 1

print(f"presence rate: {present}/{len(QUERIES)}")
print(f"mention rate among present: {mentioned}/{present if present else 1}")

Never report "brand visible in 12% of AI Overviews" without saying which denominator. 12% of all queries and 12% of appearing overviews are different claims, and the gap between them is usually the interesting finding.

Google is also rolling out AI Mode as a separate, fuller answer surface — same monitoring logic, separate surface key. Add google_ai_mode to the run and keep its rows apart from the overview rows; the two surfaces answer differently for the same query, and that difference is worth seeing.

Let your agent run it

Over MCP, the geo-monitor skill — shipped in agentgeo-mcp — runs a saved query set on demand, keeps the two denominators straight and reports the diff against the previous run. Recurring runs can also live server-side as console schedules, so the records accumulate without a laptop awake.

One line to install
claude mcp add agentgeo -- npx -y agentgeo-mcp --key ag_live_...

Alternatives

Rank trackers have started bolting on AI Overview presence checks — convenient if you already pay for one and country-level presence is all you need. Their gap is usually the record itself: you get a presence flag, not the overview's text and references to analyze. Scraping Google's SERP yourself is the hardest DIY target of the six surfaces — the overview renders conditionally, late, and differently per region.

More use cases

Overview citations feed the same pipeline as AI citation tracking, and presence-aware mention rates roll up into share-of-voice monitoring — see all use cases.

Get your presence and mention baseline per market: Get a free AI-visibility audit →

Get my free audit

FAQ

Direct answers to the questions this page raises.

Check presence rate before panicking. Google tunes when overviews appear — per query class, per country — and a presence drop looks identical to a visibility drop in any blended metric. If presence held and mentions fell, then you have a content problem.

No. Some overviews carry linked references, some don't, and the set varies between runs. Track citation rate as its own ratio over overviews-with-references, and store the empty cases — a rising share of citation-less overviews changes what winning here even means.

A separate surface with the same record shape — add google_ai_mode to surfaces and keep its rows separate. Note the parameter difference: google_ai_overview reads country and language; AI Mode records are collected by prompt and country.

No — every plan is paid, and a workspace fetches nothing live until it has one. What costs nothing: the human-run audit, and ag_test_ keys, which return labelled demo records at zero credits.

Keep reading

Where this page leads next.

Run these checks on your own brand

Two ways in. Send a URL and a person runs the fetches for you, free — or connect your agent over MCP, on a plan, and run them yourself. Either way you get the raw answers and their citations, never a score.