What is documented

The two agents have different documented purposes. PerplexityBot concerns search crawling, while Perplexity-User fetches a page in the context of a user action. Combining both under “AI crawler” destroys useful signal: routine discovery and a request-specific fetch become indistinguishable.

Separating roles supports a narrower question: what kind of access are we observing? Bot indicates the documented search crawl, while User indicates a request-triggered product fetch. Neither describes the private index, ranking, or the complete path from query to answer.

Section sources:[1] Perplexity Docs

How to verify an agent

Do not trust a User-Agent alone; it can be copied. Match the address against the current official IP endpoint and preserve list version and verification time. If DNS verification is used, perform reverse and forward-confirmed reverse lookup. A mismatch remains claimed or unknown rather than entering verified-bot statistics.

What to record

A minimum event stores timestamp, URL, status, response size, complete User-Agent, IP-verification result, and role. Raw IPs are unnecessary in long-term analytics: after network verification they can be truncated and HMAC-hashed under the privacy policy. PerplexityBot and Perplexity-User aggregates remain separate.

A short reproducible check can use one URL: send a normal HEAD/GET, record the server response, match the User-Agent and IP against the current official list, and repeat a week later. A changed list or response should create a new verification version rather than silently rewriting the old one.

Section sources:[1] Perplexity Docs

What the log does not prove

A successful 200 response proves delivery to that request. It does not reveal index inclusion, retrieval selection, use of a fact, a displayed link, or a human referral. Citation requires an archived answer with visible attribution to the specific URL.

Worked example

If the server sees a request with the PerplexityBot user agent, first record the time, URL, status, and verified IP range. That is an observed crawl. If a later Perplexity answer links to the same URL, that is a separate observation: the match does not prove that this crawl produced the citation. Keep two rows in the report rather than one conversion.

Action checklist

Before classifying a request, check the user agent, the official range list, forward and reverse DNS confirmation, URL, and response code. Separate crawler, user fetch, and unknown automation. Do not block an agent by name alone; record the rule and risk first. Support any citation claim with a separate archived answer.

What remains unknown

Perplexity's documentation explains the roles of PerplexityBot and Perplexity-User, but it does not reveal which fetched documents entered a particular answer's candidate set or why one link became visible while another did not. A verified Perplexity-User request therefore remains a user-triggered fetch unless the answer and its exact URL are preserved separately.

Reporting decision

Keep separate fields in analytics for verified crawl, user fetch, referrer, and observed citation. A combined number is acceptable only as a technical request count, not as an answer-influence metric. Each week, test classification rules against several real log entries.

What this does not prove

  • IP ranges and agent purposes can change; recheck documentation before changing a firewall or report.

Sources

  1. 1
    Perplexity crawlersPerplexity Docs · official · 11 Sept 2026

Correction history

No material corrections have been published.