← Back to blog

Three Months Into GEO — How Do You Actually Measure Results? Four Ways to Track AI Visibility

The hardest part of GEO is not how to do it, but how to know it's working. Keyword rankings, index counts — the classic SEO metrics all break down in front of AI engines. This article gives you four measurable signals: AI crawler trends in your server logs, indexing coverage in Search Console, brand tests inside AI answers, and referral attribution — including our own real data: PerplexityBot jumping from 14 to 460 requests per day during a full-site indexing surge. [Read the GEO measurement guide →]

The bottom line first

Three months into GEO optimization, the biggest trap we hit was not “how to do it” but “how to know it works.”

Keyword rankings, Baidu index counts, Google index counts — these classic SEO metrics all break down in front of AI engines: your rankings can climb while ChatGPT’s answers still never mention you. Conversely, a surge in AI crawler traffic does not mean AI will cite you either.

GEO needs its own measurement system. We break it into a four-layer pipeline, each with a set of actionable signals:

  1. Crawl layer: Do AI crawlers visit? Look at server logs
  2. Index layer: Is your content indexed by AI engines? Look at Search Console coverage
  3. Citation layer: Do AI answers mention you? Run brand tests and business-term tests
  4. Attribution layer: Does it drive real traffic and leads? Track referral attribution

This article documents all four methods, the pass/fail criteria for each, and our own real data — including the PerplexityBot surge from 14 to 460 requests per day during a full-site indexing event, and why citations took several more weeks to stabilize after the crawl surge.


Why traditional SEO metrics fail in front of GEO

People who do SEO are used to three metrics: keyword rankings, index counts, and backlinks. All three fail in front of AI engines, for straightforward reasons:

  • Keyword rankings: AI engines have no “ranking” concept. They synthesize answers from retrieval results and crawled content — there is no position #1.
  • Index counts: Search engines index “pages into their index”; AI engines have no public index query interface (except Google AI Overviews). The only crawl-side signal you can see is in Search Console.
  • Backlinks: AI engines cite your content primarily based on its usability (structured, crawlable, clear conclusions). Link equity plays a far smaller role in AI answer generation than in traditional search rankings.

So measuring GEO means starting from what AI engines actually do — whether they crawl, index, answer with you, and what that brings. The four methods below map to those four behaviors.


Layer 1: Crawl — AI crawlers in your server logs

Method

Group server access logs by User-Agent and count requests per AI crawler. The key UAs to watch:

AI EngineUser-Agent keywords
OpenAIGPTBot, OAI-SearchBot, ChatGPT-User
PerplexityPerplexityBot, Perplexity-User
AnthropicClaudeBot, Claude-SearchBot, Claude-User
Google AIGoogle-Extended
Doubao/Qwen (domestic)Vendor-specific UAs — identify them one by one in the logs

A simple counting command (Nginx):

grep -i "perplexitybot" access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head -20

Pass/fail criteria

  • Crawler never appears → the problem is in the discovery layer: robots.txt blocking, no backlinks and no entry points, or a site too small to bother crawling. Debug in the FAQ order above.
  • Appears but very low volume (single digits per day) → content-layer problem: JS-rendered pages, incomplete body text, or the crawler has not queued the pages yet. Keep improving crawlability; you usually see frequency rise within 1-2 weeks.
  • Volume explodes (order-of-magnitude jump) → infrastructure is working: the crawler decided your site is “worth it.” In our observation on 07-30, PerplexityBot jumped from 14 to 460 requests in one day — because we added llms.txt, opened the AI crawler whitelist, and shipped JSON-LD sitewide.

⚠️ Note: a crawl surge ≠ GEO success. It only means layer 1 is open. Keep reading.


Layer 2: Index — whether content is actually indexed

Once crawlers arrive, the key question is whether content is actually indexed and understood. Signals are limited here, but one method works well:

Method

  1. Search Console (Google): in the performance report, filter by Googlebot and Google-Extended, and check which URLs were crawled and returned 200. This is not identical to “AI indexing,” but Google-Extended crawl data is a good proxy for how much of your content is being read by the AI side.
  2. Robots & sitemap audit: confirm robots.txt allows AI crawlers, sitemap.xml includes every important page, and llms.txt lists core pages with priorities. The first visit from an AI crawler usually arrives through one of these three.
  3. HTML readability self-check: run curl -A "GPTBot" <page-url> and verify the returned HTML contains the full body and JSON-LD. If the crawler gets a shell with no content, the index layer fails by definition.

Pass/fail criteria

  • 200 response + full body + JSON-LD all present → index layer is likely open; move to citation tests.
  • 302/403 responses or missing body → either robots false-positives or JS-rendering issues; go back to layer 1.

Layer 3: Citation — do AI answers actually mention you

This is the core of GEO, and the layer that can’t be automated — it requires conversation tests.

Method (brand test + business-term test)

In every major AI assistant (ChatGPT, Doubao, Qwen, Kimi, Perplexity), run two kinds of tests:

Brand test — ask:

“Do you know X? What does X do?”

Business-term test — ask (from a customer’s perspective):

“Recommend a vendor that does Y.” “We want to deploy a private LLM in-house — who is reliable for this?”

Then check three dimensions:

DimensionWhat to look for
PresenceIs the answer mentioning you at all?
AccuracyIs the information about you correct (business, cases, positioning)?
PositionAre you listed alongside competitors, or mentioned in passing as background?

Pass/fail criteria and timeline

  • 1-4 weeks after infrastructure changes: AI crawlers re-crawl; citations start appearing sporadically (usually for business-term queries).
  • 2-6 weeks after content-layer work: stable appearances in answers; brand tests return accurate info.
  • 8-12 weeks: consistent citations on industry-selection questions — time to move to layer 4 attribution.

⚠️ Our real lesson: PerplexityBot crawl went from 14 → 460 requests in a few days (layers 1 and 2 open), but citations took several more weeks to stabilize. Crawl is fast, citation is slow — that is the normal rhythm. Don’t conclude GEO failed just because crawlers arrived before citations.


Layer 4: Attribution — does GEO bring real money

Layers 1-3 prove “AI can see you”; layer 4 answers “did customers find you because of AI.” Methods:

  1. Tagged conversation traffic: where your links appear inside AI answers, add ?utm_source=perplexity / ?utm_source=chatgpt to key landing-page URLs, and watch those sources in your analytics (Baidu Analytics, GA) for visits and conversions.
  2. Ask leads their source: add “How did you hear about us?” to first contact — record “found us through AI” as its own category. This is the most direct attribution, more accurate than any tool.
  3. Quarterly before/after: compare AI-sourced leads before and after GEO work on a quarterly basis. GEO is a slow variable — don’t judge it on a weekly timescale.

Pass/fail criteria

  • AI-source traffic under 0.5% of visits with zero leads → the citation layer may be “mentioned” rather than “recommended”; check citation quality (are you in the recommendation slot?).
  • AI-source leads appearing consistently → the GEO pipeline is closed; scale up investment or expand content.

Four common mistakes

1. Treating crawl volume as the success metric. Crawl is only layer 1. We’ve seen teams declare GEO victory the moment PerplexityBot traffic rises, only to fail brand tests completely — because the content layer never opened.

2. Testing once and drawing conclusions. AI answers are stochastic; the same question can yield different answers the same day. Test daily for at least a week before concluding, and archive screenshots to compare trends.

3. Watching only one AI engine. ChatGPT working doesn’t mean Doubao works — each engine has its own crawler, index, and citation mechanisms. Test every major engine.

4. Expecting GEO on an SEO rhythm. SEO is weekly; GEO is quarterly. Infrastructure 1-4 weeks, content 2-6 weeks, stable citations 8-12 weeks — that is the normal pace. Don’t quit halfway.


Finally: make measurement a mechanism, not a one-off check

GEO is an ongoing investment like SEO, and measurement must be institutionalized:

  • Weekly: AI crawler trend from server logs (5 minutes)
  • Weekly: one brand test per major AI engine, screenshots archived (15 minutes)
  • Monthly: Search Console index coverage + referral attribution review (30 minutes)
  • Quarterly: citation-quality comparison on business-term tests

Once this mechanism runs, “does GEO work” stops being a mystery — it becomes as quantifiable as SEO.

Further reading:

FAQ

Is there a single unified metric for GEO optimization?

No. GEO is a four-layer pipeline — crawl, index, understand, cite — and each layer has its own signals: crawler volume from server logs, index coverage from Search Console, understanding and citation only via AI conversation tests (brand test + business-term test), and finally referral attribution. Only by combining all four layers can you tell whether GEO is completely ineffective or stuck at a specific layer.

Does a surge in AI crawler traffic mean GEO is working?

Crawling is necessary but not sufficient. A crawler visiting only means your site was discovered — it says nothing about whether the AI engine understood your content or will cite you. Look at three levels separately: crawl volume (server logs) → depth of content read (page dwell, HTML size, whether llms.txt and JSON-LD are fetched) → citation (conversation tests). We took PerplexityBot from 14 to 460 requests per day in a few days, but citations only stabilized several weeks later.

How do I run a brand test, and how often?

In every major AI assistant (ChatGPT, Doubao, Qwen, Kimi, Perplexity), ask "Do you know company X?" and "Recommend a vendor that does Y." Check three things: ① whether you appear at all ② whether the information about you is accurate (business, products, cases) ③ whether you are listed alongside competitors. Frequency: daily for the two weeks right after infrastructure changes, weekly once stable. Screenshot every result and review the trend after a month.

Why is no AI crawler visiting my site at all?

By likelihood: ① robots.txt blocks AI crawler user agents (most common — many people keep old block rules) ② the site is JS-rendered without SSG/SSR, so crawlers get no readable content ③ pages are undiscoverable (no backlinks, no sitemap submission, no internal navigation) ④ the site is too small or updates too rarely for crawlers to consider it worth fetching. Confirm whether crawlers have ever visited via your logs, then debug in this order.

This article comes from AI Enable Harness front-line delivery practice. Need a similar system or optimization service?

Subscribe to Updates

Get notified when new articles are published. No spam, occasional updates only.

Subscribe →