Traditional SEO KPIs (impressions, clicks, CTR) break down for AI search because AI Overviews and AI engines often answer queries without users clicking through. The GEO KPIs that matter in 2026: AI Overview impression rate in GSC (where available), AI crawler activity in server logs (OAI-SearchBot, PerplexityBot, ChatGPT-User as citation proxies), referrer traffic from AI engine domains (chatgpt.com, perplexity.ai, claude.ai, gemini.google.com), and citation-rate tracking via third-party tools (Profound, Otterly) for direct attribution.
Measuring SEO in 2026 means measuring two parallel things: how visible you are in traditional search (familiar territory, established tools) and how visible you are in AI-generated answers (new territory, immature tools, real signals if you know where to look).
This pillar walks through the GEO KPIs that actually tell you something, the ones to ignore, and how to build a measurement stack that doesn't require expensive vendors.
Why CTR is collapsing even for top-ranked content
The single biggest measurement shift in 2026 is that average CTR for top-ranked informational content has dropped dramatically. The mechanism is straightforward: Google shows an AI Overview at the top of the SERP, the AI Overview answers the user's question, the user gets what they need without clicking. Your impression still gets logged (you appear in the citation block of the AI Overview), but your click does not.
For Clarivian's SBLOC content cluster, we observed CTR around 0% at average position 6 in May 2026. The impressions were real (hundreds per article per week); the clicks were not (almost none). This is consistent across the GEO community: position 1-10 on informational queries no longer guarantees meaningful click volume.
The implication for measurement: stop optimizing for CTR on informational content. The new KPIs are impression rate (you're appearing in AI citations) and AI referrer traffic (users who do click through from AI engines).
The five GEO KPIs that matter
- AI Overview impression rate in GSC. Google Search Console doesn't yet label AI Overview impressions separately, but they're folded into your total impressions. A page with high impressions and near-zero clicks is almost certainly appearing in AI Overview citations.
- AI crawler activity in server logs. OAI-SearchBot hits per page per week is the cleanest leading indicator of ChatGPT Search visibility. PerplexityBot hits proxy for Perplexity visibility. ChatGPT-User hits indicate users actively prompting ChatGPT to read your URL.
- Referrer traffic from AI engine domains. Small but growing. Filter analytics for chatgpt.com, perplexity.ai, claude.ai, gemini.google.com, copilot.microsoft.com. The compound growth rate matters more than the absolute volume.
- Direct citation tracking (paid tools). Profound, Otterly, Peec AI, and a few others query AI engines for your brand/URL and report which queries cite you. Expensive but the only way to get named-source data.
- Indirect brand mentions. AI engines often mention your brand or insights without linking. Track brand mentions in Reddit, Hacker News, X, and similar conversational sources where AI-influenced citations leak into human discourse.
Setting up AI referrer tracking
In Google Analytics 4, create a custom report with the Source/Medium dimension and filter for any of: chatgpt.com, perplexity.ai, claude.ai, gemini.google.com, copilot.microsoft.com, you.com, phind.com, perplexity.ai/labs. Save the report as 'AI Referrers' and check it weekly.
In your server logs, grep for the same domains in the Referer field. The advantage of log-based tracking is that it catches AI engines that send traffic without standard analytics tracking (rare but possible).
Reading server log signals
The cleanest leading indicator for AI citation visibility is crawler activity, not referrer traffic. Crawlers visit pages they're considering citing; referrers only fire when a user clicks through. Crawler hits are 10-100x more numerous than referrers, which means they give you signal much faster.
For our portfolio (3 sites) we track OAI-SearchBot, PerplexityBot, GPTBot, and ChatGPT-User per page per day via a small Python script that parses Apache access logs and writes a daily JSONL summary. The infrastructure is trivial (under 100 lines of code) and the signal is leading: a page that starts getting OAI-SearchBot crawls is on the path to appearing in ChatGPT Search citations.
AI Overview impressions in GSC
Google Search Console doesn't have a dedicated AI Overview filter yet (as of 2026 mid-year). What you can do:
- Look for pages with high impression-to-click ratios. A page with 500 impressions and 1 click is almost certainly mostly appearing in AI Overview citations.
- Compare 7-day and 28-day impression trends to clicks. If impressions are stable or growing but clicks are flat near zero, that's the AI Overview footprint.
- Use the GSC Search Appearance dimension if Google enables AI Overview as a value (rolling out in some markets).
Direct AI citation tracking tools
Three categories of paid tool exist as of mid-2026:
Citation auditors (Profound, Otterly): you provide your brand name, they query AI engines with thousands of relevant prompts, and report which prompts cite you and which cite competitors.
SERP-style AI trackers (Peec AI): closer to traditional rank-tracking but for AI engines. You provide a query list, they report your visibility in AI answers for each.
Brand-mention monitors (Brand24, similar): not AI-specific but useful for catching the indirect brand mentions that AI citations seed in human conversations.
The honest assessment: paid tools give you data you can't get other ways, but the cost is meaningful and the signal-to-noise ratio is still improving. For most independent sites, DIY measurement (log analysis + analytics filters) catches most of the value.
Building a GEO dashboard
The minimum useful GEO dashboard for an independent site:
- Daily: OpenAI bot hits per page (from log parser), broken down by GPTBot / OAI-SearchBot / ChatGPT-User.
- Weekly: AI engine referrers (from GA4 or analytics), absolute numbers and week-over-week change.
- Monthly: GSC impressions and clicks per page; flag pages with high impression-to-click ratios as AI Overview suspects.
- Quarterly: Schema coverage audit (which pages have FAQPage, Article, HowTo schema; which don't).
This is the dashboard we run for our portfolio. We share the underlying data, anonymized, in our case studies pillar.
Setting up a GA4 AI-referrer report (step by step)
Default GA4 Acquisition reports lump AI traffic into "Other" or fragment it across multiple sources. The fix is a custom Exploration:
- GA4 > Explore > Free Form. Name it "AI Referrers".
- Add Source as a dimension and Sessions, Engaged sessions, Engagement rate, Conversions as metrics.
- Add a filter: Source contains chatgpt.com OR perplexity.ai OR claude.ai OR copilot.microsoft.com OR gemini.google.com OR you.com OR phind.com.
- Set the date range to last 90 days. Save.
Run this weekly. The absolute numbers will be small (typically under 5% of organic for most sites) but the week-over-week trajectory tells you whether your AI visibility is compounding. A flat or declining trajectory means your GEO interventions aren't landing; a rising trajectory means they are.
For Looker Studio dashboards, the same filter pattern applies as a data source filter. You can then chart referrer growth alongside organic and direct, see relative contribution, and spot when AI overtakes a meaningful share.
Looker Studio dashboard recipe
A practical four-panel GEO dashboard:
- Panel 1: AI referrer trend (7-day rolling). Line chart of Sessions from the AI source filter, with a 7-day moving average overlay.
- Panel 2: AI engine breakdown. Stacked bar showing each engine's share of AI traffic over time. Lets you see which engine is growing for your content.
- Panel 3: Landing pages from AI traffic. Table of top pages by AI referrer sessions. Tells you which content is winning AI citations.
- Panel 4: Crawler activity overlay. If you can import server log data (BigQuery export or a separate data source), overlay OAI-SearchBot and PerplexityBot hits as the leading indicator above the referrer-traffic lagging indicator.
Server log parsing for AI bot signals
The minimum viable bot-tracking script (Python, ~80 lines):
import glob, gzip, re, json
from collections import defaultdict
from datetime import date
LOG_GLOB = "/var/log/apache2/yourdomain-access.log*"
RE = re.compile(r'(\S+) \S+ \S+ \[(\d{2})/(\w{3})/(\d{4}):.*?"(?P\S+) (?P\S+) [^"]+" (?P\d+) \S+ "[^"]*" "(?P[^"]*)"')
def bot(ua):
if 'OAI-SearchBot' in ua: return 'OAI-SearchBot'
if 'ChatGPT-User' in ua: return 'ChatGPT-User'
if 'GPTBot' in ua: return 'GPTBot'
if 'PerplexityBot' in ua: return 'PerplexityBot'
if 'ClaudeBot' in ua: return 'ClaudeBot'
return None
by_day = defaultdict(lambda: defaultdict(int))
for path in sorted(glob.glob(LOG_GLOB)):
opener = gzip.open if path.endswith('.gz') else open
with opener(path, 'rt', errors='replace') as f:
for line in f:
if 'GPT' not in line and 'PerplexityBot' not in line and 'ClaudeBot' not in line:
continue
m = RE.match(line)
if not m: continue
b = bot(m.group('ua'))
if not b: continue
d = f"{m.group(4)}-{m.group(3)}-{m.group(2)}"
by_day[d][b] += 1
for d in sorted(by_day):
print(d, dict(by_day[d]))
Schedule via cron daily after Apache log rotation. The output JSONL file is your GEO leading indicator dataset.
What "good" looks like
There are no industry benchmarks for GEO KPIs yet because the field is too young. But internal-baseline targets are reasonable to set:
- OAI-SearchBot hits per indexed page per week: aim for at least 0.5 (one fetch every two weeks). Below this, the page isn't actively in ChatGPT Search's consideration set.
- AI referrer traffic as a percentage of total: should be growing month over month, regardless of absolute level.
- Pages with FAQPage schema as a percentage of total pages: 100% on informational content is the right target. Less than 60% is leaving citations on the table.
- Pages with Article schema including Person author: 100% on authored content. Anonymous content gets cited less.
Track these monthly. Optimize the page-level inputs (schema, Quick Answer box, internal links, freshness updates) when the KPIs are off-target. The infrastructure pays itself back within 60-90 days for any content site with steady publishing.
AI Overview impression detection in GSC: a workaround
GSC doesn't yet separate AI Overview impressions from regular impressions in the standard interface. The workaround pattern:
- Pull the Search Console query data for a representative time window (28 days) via the API.
- For each query, compute the impression-to-click ratio. Queries with ratio above 50 (50 impressions per click) on informational intent are likely dominated by AI Overview.
- Filter to informational queries (questions, "what is", "how to", "vs", "compare"). These are where AI Overview shows aggressively.
- Flag pages that appear repeatedly across these high-ratio informational queries as your AI Overview-heavy pages.
The output: a list of pages where your content is being shown by Google but users aren't clicking through. These are the pages where citation visibility and brand impression are the realistic KPIs, not clicks.
The reverse-flag is also useful: pages with low impression-to-click ratio (under 10) are pages where AI Overview is NOT eating clicks. These are usually commercial-investigation or transactional queries. Prioritize publishing more content in these query patterns if click traffic matters to your business.
Citation tracking on a budget
Profound, Otterly, and Peec AI all charge meaningful monthly fees for AI citation tracking. For independent sites that can't justify that spend, a DIY workflow gets you 70% of the value:
- Build a list of 20-50 queries you want to be cited for. Mix informational and commercial-investigation.
- Once a month, run each query manually through ChatGPT Search, Perplexity, Claude.ai (with web search enabled), and Gemini. Note which answers cite your domain.
- Log the results in a simple spreadsheet: date, engine, query, citation present (yes/no), competitors cited.
- Track month over month. The trend matters more than the absolute count.
The hour-per-month investment gives you the same baseline data the paid tools surface, just at lower frequency. As your content base grows, automate the loop with API access (OpenAI API, Anthropic API, Perplexity API) and a daily cron.
Attribution modeling for AI traffic
The traffic that AI engines drive often shows up as direct or unattributed in analytics because AI engine referrers are inconsistent. Users who copy a URL from a ChatGPT answer and paste it into a new tab arrive without a referrer. Users on mobile AI apps sometimes lose referrer in the handoff. Users on AI search engines with strict privacy settings strip referrer entirely.
The pragmatic model: assume AI engines drive at least 1.5x to 2x more traffic than your analytics shows under the explicit AI referrer filter. The multiplier varies by audience (younger, mobile-heavy audiences lose more referrer than older, desktop-heavy audiences). Build the multiplier into your reporting so AI traffic isn't underweighted in strategy decisions.
For sites that can run UTM-tagged links inside content the AI engines crawl (e.g., your own RSS feed, your own newsletter archive), seeding UTM tags lets you capture attribution that survives the referrer-stripping path. The overhead is small; the data fidelity improvement is meaningful.
FAQ
How do I track AI referrals in Google Analytics?
AI engines send standard referrer headers. Filter your Acquisition reports for source/medium containing chatgpt.com, perplexity.ai, claude.ai, copilot.microsoft.com, and gemini.google.com. The volume is currently small but the trajectory is clearly up.
What's a healthy AI citation rate?
There's no industry benchmark yet. Use your own server logs as a baseline: OAI-SearchBot hits per indexed page per week. A page getting 0.5+ OAI-SearchBot fetches per week is healthier than a page getting zero. Improvement comes from schema, Quick Answer boxes, and link-equity additions.
Why does my GSC show high impressions but no clicks?
AI Overview eats the click. Google shows the AI-generated answer above the organic results; users get their answer and don't click through. Impressions still count, but CTR collapses. This is the new normal for informational queries.
Can I track which AI engine cited which page?
Partially. Server log analysis tells you which AI crawler visited which page, which is a strong proxy. For named-source tracking, you need a paid third-party tool like Profound, Otterly, or Peec AI.