Perplexity · AI crawler
What is Perplexity-User?
The fetch Perplexity makes because a person's search needs your page right now.
On this page
Every AI crawler
What Perplexity-User is
The fetch Perplexity makes because a person's search needs your page right now.
Perplexity-User is the on-demand half of Perplexity's pair: it runs because a person asked something whose answer needs your page, not because a crawl was scheduled.
It is the row on this page closest to a visit, and the one where blocking has the most immediate cost. If the person then clicks through, that arrival is a different event entirely — a human, from perplexity.ai, counted as a visitor.
Who runs Perplexity-User
Coruve attributes this signature to Perplexity.
Coruve files every hit matching perplexity-user under Perplexity, Perplexity’s entry in the classifier. That attribution is a reading of the user agent the request sent, which is a claim the client made about itself rather than a proof — Coruve labels it as such everywhere it is reported.
Why Perplexity has fewer than three fetchers here: Publishes PerplexityBot (index) and Perplexity-User (on-demand) and no separate training crawler; it states that its index crawl is the training input.
We make no claim here about how Perplexity behaves beyond what Coruve records, because this repository holds no dated reading of its documentation. A company’s own documentation is the only source that is authoritative about that company, and it is usually one page — read it before you write a rule that names this token.
How Coruve reads Perplexity-User
Generated by the same functions that label a hit as it arrives, so this table cannot drift from the product.
| What Coruve records | Value |
|---|---|
| User agent contains | perplexity-user |
| Traffic type | crawler |
| Attributed to | Perplexity (Perplexity) |
| Job | On-demand fetcher — Reads your page because a person just asked the assistant about it. |
The row that matters most is the second one. Perplexity-User is recorded as a crawler, never as a visitor, and Coruve does not add the two together anywhere. A program reading your page is not a customer, and a tool that folds the two into one number is quietly inflating every figure built on top of it.
The other side of that line is an assistant referral: a real person, in a real browser, who clicked a link inside an AI assistant and landed on your site. Those are counted as human visits and reported as their own channel, with the assistant named. Both readings are useful and they answer different questions — how often a machine reads you, and how many people an assistant sends you.
What a page script can and cannot see
Analytics that runs as a script in your page cannot see a fetcher that requests your HTML and never runs JavaScript, which is what most crawlers do. Coruve prints counts rather than shares for the crawler half for exactly that reason. Your server or CDN logs are the complete record; AI crawlers vs AI referrals sets out where every method goes blind, including ours.
Naming Perplexity-User in robots.txt
The exact token, in both directions. Copy the one that matches the decision you actually want.
robots.txt matches a fetcher by its product token, so the spelling below is the part that has to be right. Put the reason in a comment beside it: the next person to edit that file will be you, in eighteen months, with no memory of why this line is here.
# Reads your page because a person just asked the assistant about it.
User-agent: Perplexity-User
Disallow: /To leave it allowed explicitly — worth doing when the rest of your file is restrictive and you want the exception on the record — an empty Disallow is the standard way to say “nothing is disallowed”.
# Nothing disallowed for this fetcher.
User-agent: Perplexity-User
Disallow:Read what you actually serve first
Content delivery networks can prepend a managed block to your robots.txt, and some do it by default. Crawlers read the whole merged file, so open your own robots.txt in a browser before you edit anything — if there is a block you did not write, that is where your real policy lives. We found exactly that on this site in August 2026.
Should you block Perplexity-User?
It depends on the job this particular fetcher does — which is why the answer is different for each of an operator's three.
Perplexity-User is an on-demand fetcher. Blocking an on-demand fetcher is turning away somebody who has already found you. There is a person sitting in front of the assistant at that moment, asking about your page; the fetch is the closest thing to a visit a crawler ever produces. It is the one line we would think hardest about.
Three positions are coherent: allow everything, refuse training while staying citable, or refuse everything. The middle one is what most people mean when they say they want to block AI, and it is the one snippets organised by company cannot express. The full argument, with the trade written out for each position, is in Should you block AI crawlers? It is three decisions, not one.
One thing that is true whichever you choose: robots.txt is a request. It became a standard in 2022, as RFC 9309, and compliance with it is voluntary. The large operators document their tokens and by their own account honour them; anything determined to ignore you will ignore you, and the place that stops it is your server or your CDN, not a text file.
Seeing it on your own site
You are about to make a trade. The only number that was ever going to inform it is your own.
Before and after are worth more than any opinion about this token. Coruve classifies every event as it arrives — human, assistant referral, or crawler — and reports the three separately, so you can watch what a robots.txt change actually did rather than guessing.
The checker reads seven days of traffic with no account. If you would rather have the concepts first, the complete guide to AI referral traffic explains what an assistant referral is, how it differs from a crawl, and what any analytics tool can honestly see.