AI bots · Perplexity Perplexity-User: fetches for people asking Perplexity
Perplexity-User loads a page because a person asked Perplexity about it, and Perplexity says it generally ignores robots.txt. Here is what Perplexity publishes, with sources, and what you can do.
- Fetches on a user’s request
- robots.txt: partly
- Official IP list
Perplexity-User at a glance
What Perplexity publishes about Perplexity-User, with a link to the page each fact comes from. Copy the robots.txt rule you need, or check whether an IP really belongs to it.
What the operator says about Perplexity-User
Each row links to the page it comes from. “Not published” means we could not find it in the operator’s own documentation.
| Fact | Value | Source |
|---|---|---|
| Operator | Perplexity | Source |
| Official documentation | docs.perplexity.ai | Source |
| robots.txt token | Perplexity-User | Source |
| What it is used for | Fetches on a user’s requestPerplexity says Perplexity-User fetches pages when a user asks Perplexity a question, so the answer can include and link them. It is not used for web crawling or AI training. | Source |
| Follows robots.txt | PartlyPerplexity says that since a user requested the fetch, Perplexity-User generally ignores robots.txt rules. | Source |
| Official IP list | www.perplexity.ai/perplexity-user.json | Source |
| How to verify | IP listMatch both the user agent and the source IP; Perplexity publishes the ranges in perplexity-user.json. It gives no reverse-DNS method. | Source |
| Checked on | — |
Mozilla/5.0 (compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user)As published by the operator. Perplexity says the version number may change.
robots.txt rules
Add one of these groups to the end of your robots.txt. The token is matched case-insensitively.
User-agent: Perplexity-User
Disallow: /User-agent: Perplexity-User
Allow: /A group named for Perplexity-User replaces your User-agent: * rules for it. To keep it out of one folder only, change / to that folder, e.g. Disallow: /private/.
Check a request really came from Perplexity-User
Check an IP against the official list
Open www.perplexity.ai/perplexity-user.json, copy everything and paste it below with the IP from your log. The check runs in your browser.
JSON or one range per line. IPv4 and IPv6 ranges are both read.
Paste an IP address to check it.
Also from the operator’s documentation
- PerplexityBot and Perplexity-User have separate IP lists; Perplexity notes that a Cloudflare free plan allows only one custom IP list, which is not enough for both. Source
Version v1.0Updated Update history
Four facts that decide what to do
Every crawler page has the same table. These four rows answer most questions about a crawler.
What it is used for
Training, search or a user’s request. Blocking a training crawler keeps your pages out of future models; blocking a search crawler also removes you from answers that would have linked back.
Follows robots.txt
“Yes” is the operator’s own statement. “Partly” usually means fetches a person starts may skip robots.txt — ChatGPT-User, Perplexity-User and meta-externalfetcher say so.
Official IP list / reverse DNS
The only way to tell a real crawler from one that copies its user agent. If neither is published, the user agent is just a claim.
Not published
We could not find it in the operator’s own documentation. We do not fill gaps from third-party lists — those disagree with each other and go stale.
Facts were checked against the operators’ pages on the date shown on each crawler page. Operators change their docs; the source link is the place to confirm.
From a name in your logs to a rule
Four steps, all in the browser.
-
1
Find the crawler
Type the name from your logs or the company you are thinking of. Filter by purpose to see, say, every AI training crawler.
-
2
Open its page
Read what the operator says it is for and whether it follows robots.txt. Copy its official user agent to compare with your logs.
-
3
Build the rules
Tick crawlers in the table, choose Block or Allow, then copy or download the robots.txt groups.
-
4
Check the effect
Test the file with the robots.txt tester, and use the IP check on a crawler page to confirm a request is genuine.
How crawlers are grouped and how robots.txt applies
The directory groups crawlers the way TapCub’s bot rules do. robots.txt matching follows RFC 9309: a crawler obeys the one group whose User-agent matches its token, and only falls back to * when no group names it.
- A crawler with its own group ignores every
User-agent: *rule - Tokens are matched without regard to case; a typo matches nothing
- Some names are tokens only — Google-Extended and Applebot-Extended never visit
- Agents without a published token cannot be addressed in robots.txt at all
| Group | What it does | Effect of blocking |
|---|---|---|
| AI training | Collects pages for model training or datasets | Your future pages stay out of that operator’s training, if it follows robots.txt |
| AI search | Indexes pages for AI answers with links | You stop appearing as a cited source |
| AI agent | Opens a page for a person’s request | Assistants cannot open your page — when the agent honours robots.txt at all |
| Search engine | Classic search index | You leave that search engine; some, like Bing, also feed AI answers |
How four robots.txt files treat Perplexity-User
Perplexity-User reads the group whose User-agent line matches Perplexity-User (case does not matter). If there is none it falls back to User-agent: *.
| robots.txt | Result for Perplexity-User | Why |
|---|---|---|
User-agent: Perplexity-User Disallow: / | Blocked | Its own group disallows the whole site. |
User-agent: * Disallow: / | Blocked | No group of its own, so it inherits the wildcard. |
User-agent: * Disallow: / User-agent: Perplexity-User Allow: / | Allowed | A named group replaces the wildcard completely; the * rules no longer apply to it. |
User-agent: Perplexity-User Disallow: /private/ | Allowed except /private/ | Only paths that start with /private/ are off limits. |
Perplexity says robots.txt may not apply to requests a person triggers, so treat these results as a request rather than a guarantee.
Where AI crawler policies go wrong
Most problems come from the token or from what the crawler actually is.
Using a company name as the token
“OpenAI”, “Anthropic” or “ChatGPT” are not tokens. Use the exact token from the directory — GPTBot, ClaudeBot, OAI-SearchBot.
Blocking search with training
Blocking OAI-SearchBot or PerplexityBot removes you from AI answers that would link back. Decide per crawler, not per company.
Trusting the user agent
Anyone can send “GPTBot” in a header. Without an IP or reverse-DNS check the request is unverified.
Blocking by IP and losing the opt-out
Anthropic and Cohere warn that blocking their IPs stops them reading robots.txt, so the opt-out may not stick.
See which crawlers actually came
The directory tells you what crawlers say they do. TapCub separates humans from bots with five detection layers and 197+ rules, and reports AI crawlers on their own.
Bot and AI crawler report
User agent, headers, client signals, ASN and rate — five layers that keep bots out of your human numbers.
Learn moreAI content ledger
Pages each AI crawler read next to the visitors it sent back.
Learn moreCrawl health and compliance
Compare robots.txt and llms.txt with what actually crawled you — evidence for a decision.
Learn morePerplexity-User questions
Still have a question?
Chat with the team behind TapCub — we usually reply within a few hours on business days.
What is Perplexity-User?
Perplexity-User is run by Perplexity. Perplexity says Perplexity-User fetches pages when a user asks Perplexity a question, so the answer can include and link them. It is not used for web crawling or AI training.
Does Perplexity-User respect robots.txt?
Perplexity says that since a user requested the fetch, Perplexity-User generally ignores robots.txt rules.
How do I block Perplexity-User?
Add User-agent: Perplexity-User and Disallow: / to robots.txt. Perplexity says robots.txt may not apply to every request from it, so if it must stay out, block it on the server or firewall as well.
How can I tell a request really came from Perplexity-User?
Match both the user agent and the source IP; Perplexity publishes the ranges in perplexity-user.json. It gives no reverse-DNS method.
Can I block Perplexity-User with robots.txt?
You can write the rule, but Perplexity says this fetcher generally ignores robots.txt because a user asked for the page. To stop it, block its published IPs on your server or firewall.
Does Perplexity-User traffic count as a visitor?
No. A person asked for the page, but Perplexity’s servers made the request. TapCub’s bot rules count it as an AI agent, separate from human visits.
Update history
New features, fixes and data refreshes for this tool, newest first.
-
· v1.0
LaunchedFirst release.
Data this tool relies on
- Bot and AI crawler rules (same as the TapCub product) — checked 2026-11-10, reviewed every 3 months (next review by 2027-02-10)
- AI crawler operator documentation — checked 2026-11-09, reviewed every 3 months (next review by 2027-02-09)
Missing something or found an error? Tell us — requests that come up often go into the next update. All tool updates
Rules state intent. Logs show behaviour.
Install the ≈2 KB script and TapCub separates humans, search engines and AI crawlers from the first visit — free plan included.