Measure
AI traffic and crawlers
See the visits, conversions and revenue that AI assistants send to your site, and whether AI crawlers can read your pages at all.
Visibility in answers is the start of the chain, not the end. Two tabs follow it onto your own site. AI traffic shows the sessions, conversions and revenue that arrive from AI assistants, and whether they move together with your visibility. Crawlers shows which AI bots read your site, which pages they read or fail to read, and whether your robots.txt lets them in.
Where to find it
Both are tabs of LLM Analytics in the sidebar:
| Tab | Address | Needs |
|---|---|---|
| AI traffic | https://app.rixe.ai/llm?tab=traffic | Google Analytics 4 connected. A store connection for revenue. |
| Crawlers | https://app.rixe.ai/llm?tab=crawlers | A crawler data source: the WordPress plugin, a log drain, Cloudflare, or an uploaded server log. The robots.txt check needs nothing. |
Connections are set up under Connections in the user menu. See Integrations.
AI traffic
What counts as AI traffic
Rixe reads your GA4 sessions and classifies a session as AI traffic when its source is an AI assistant:
| Shown as | Referrers |
|---|---|
| ChatGPT | chatgpt.com, chat.openai.com, openai.com |
| Perplexity | perplexity.ai |
| Gemini | gemini.google.com, bard.google.com |
| Copilot | copilot.microsoft.com, bing.com/chat |
| Claude | claude.ai |
| One combined row for other assistants | you.com, poe.com, grok.com, x.ai |
Plain bing.com is ordinary search traffic and is not counted.
Is the visibility worth anything?
The first card asks whether your visibility in AI answers moves together with the traffic reaching your site. It pairs days that have both a measurement and traffic data, then shows a rank correlation (Spearman) labelled strong, moderate or weak, with the number of paired days ("from 21 paired days"). Search clicks from Search Console sit beside it as a control: if both rise together, something broader than AI visibility is happening.
Until a fortnight of paired days exists, the card says "Not enough days yet — {have}/{need}" instead of a number.
Movement together, not cause
This measures movement together, not cause. Nothing in this data can separate it from a good month for your whole category. Read it as evidence, not proof.
Sessions and conversions
Three cards show the last 30 days: AI-sourced session, Total sessions and AI share. The table Assistant-based sessions and conversions breaks AI traffic down by assistant, with its AI share, Session and Conversion counts.
AI channel revenue (90 days)
With a store connected (Shopify, ikas or WooCommerce), the revenue card shows two models side by side:
- AI revenue by last-click — orders whose last click came from an AI assistant, with the order count and share of total revenue. This is the conservative figure.
- Multi-touch (equal share) view — credits every touch in the journey equally, so earlier AI touches also count.
True contribution is between the two. Total revenue and a per-assistant table complete the card. Without a store, the card offers Connect your Shopify store (and ikas, WooCommerce) links.
Who arrives from AI?
The demographics card shows visitor age and gender from GA4. Google no longer allows narrowing this to AI referrers, so the figures cover all site visitors, and Google withholds audiences small enough to identify a person, so they are a floor. Google Signals must be on in GA4 for any of it; if it is off, the card tells you where to turn it on (GA4 Admin → Data settings → Data collection).
Crawlers
Are AI crawlers allowed?
At the top of the tab, Are AI crawlers allowed? reads your site's robots.txt — no setup needed.
- Click Check.
- Each AI bot is listed as Allowed or Blocked: GPTBot, OAI-SearchBot, ChatGPT-User, PerplexityBot, Perplexity-User, ClaudeBot, Claude-SearchBot, Google-Extended, Googlebot, Bingbot, CCBot and Meta-ExternalAgent.
- If any are blocked, the card shows Fix: add this to your robots.txt with the lines to add.
Blocking AI bots in robots.txt is the most common reason a site never appears in AI answers.
Getting crawler data in
Crawler visits are recorded from your server-side logs; only bot lines are kept, visitor lines are discarded without being stored. Pick one source:
| Source | How |
|---|---|
| WordPress plugin | Install it and the tab fills on its own. |
| Log drain (Vercel, Netlify, Fastly, your own server) | Under Connections, open the provider, click Generate token, then point your log drain at the URL shown with that Bearer token. The token is shown once. |
| Cloudflare | Under Connections › Cloudflare, connect with a read-only API token (Zone · Analytics · Read). Bot visits are pulled automatically every night; Pull now (last 7 days) refreshes early. |
| Upload log | On the Crawlers tab, click Upload log and choose an nginx/Apache combined access log. Files over 8 MB must be split. |
Cloudflare counts are a lower bound
Cloudflare returns sampled data, and this path cannot prove by IP that a visit really came from the bot it names. An uploaded server log can.
Reading the report
The report covers the last 30 days.
- KPI cards: Bot visits (with the busiest bot), Distinct bots, Verified (visits that passed IP verification) and Uncrawled pages (pages in your sitemap no bot ever came to).
- What did the crawler come for? Every visit is grouped by purpose:
| Purpose | Bots | What blocking it costs |
|---|---|---|
| Live user fetch | ChatGPT-User, Perplexity-User | A person is waiting on this request right now. If it fails, an answer breaks while they watch. |
| Search index | OAI-SearchBot, PerplexityBot, Claude-SearchBot, ClaudeBot, Googlebot, Bingbot | Builds the index assistants answer from. Block it and you vanish from search answers at once. |
| Training crawl | GPTBot, Google-Extended, CCBot, Meta-ExternalAgent, Amazonbot, Applebot | Feeds a future model. Blocking it costs nothing today and your presence in the model tomorrow. |
An unknown crawler is treated as a search crawler rather than ignored. Each purpose shows its visit count and failure rate.
- Agent analytics — three purposes, daily: the three purposes over time, kept apart because summed they lose their meaning.
- Does the crawling bring anyone? For each engine, pages read on the left and visitors who arrived from it on the right, with sessions per crawl. An engine that reads everything and sends nobody is a different problem from one that never comes ("this engine never crawled").
- Pages the crawlers could not read: pages a bot asked for and got an error, with the status code. Failures on live user fetches come first.
- Which bot, how often: every bot with visits per day, and whether it was verified or not verified. A visit that carries a bot's name but comes from an address that does not belong to that company is not counted as a real AI crawl.
- Pages × purpose: which kind of agent read each page, errors, and whether answers Cited the page — the crawl paid off.
- Most crawled pages and Never crawled pages: the second lists pages in your sitemap that no bot has read. Unread pages cannot appear in answers.
Limits and availability
AI traffic and crawler analytics are included in every plan. They depend on your own connections (GA4, a store, a crawler source), not on measurement credits. See Plans and limits.
Common questions
AI traffic is empty. Connect Google Analytics under Connections. The tab shows "No Analytics data" until GA4 is connected and a property is selected.
Why is AI traffic so small compared with my visibility? Many AI answers send no click at all. The revenue models and the correlation card are there to show contribution honestly rather than inflate it.
Some bot visits say "not verified". The visit used a bot's name from an address that does not belong to that bot's company. It is shown, but it should not be read as a real AI crawl.
Related pages
Still stuck? Write to [email protected] and a person will answer.