Get cited by AIPerplexity

How to get cited by Perplexity

To be cited by Perplexity, a page first has to be readable: it must fetch cleanly, carry its real text in the raw HTML before any JavaScript runs, and stay open to PerplexityBot in robots.txt.

5 min read Lantad

Perplexity answers a question by retrieving pages, synthesizing them, and listing the sources it used as numbered links. A page can only become one of those sources if Perplexity can reach it, fetch it, and read the actual words on it. Those are prerequisites, not guarantees, and no page can be promised a citation.

This page walks through what makes a page readable and citable to Perplexity, in the order that matters. Each step maps to something Lantad measures directly: whether the page fetches, whether PerplexityBot is allowed in robots.txt, how much of your visible text survives in the raw HTML, and whether structure and schema label it. Get those right and the page is eligible to be cited. What Perplexity does after that is up to Perplexity.

What it takes, in short

  • Make sure the page actually returns
  • Keep PerplexityBot allowed in robots.txt
  • Serve the content in the raw HTML
  • Give the content a machine-readable structure
  • Make the page substantive and specific
  • PerplexityBot Search. Crawls to surface and link pages in results, and follows robots.txt.
  • Perplexity-User User fetch. Perplexity documents that this generally does not apply robots.txt disallow rules, because it acts on a direct request.
Perplexity's two published tokens, from Lantad's registry. They treat robots.txt differently.

How Perplexity reads the web

Perplexity is an answer engine: it responds to a query with a synthesized answer and a numbered list of source links. It reaches the web with two named agents it documents publicly. PerplexityBot crawls pages to surface and link them in Perplexity's search results, and Perplexity-User fetches a specific page in response to a user's request during a session. Perplexity publishes both user-agent tokens and the IP ranges they originate from, so operators can identify and verify these fetchers. The two agents treat robots.txt differently: PerplexityBot follows robots.txt directives, while Perplexity's own documentation states that Perplexity-User generally does not apply robots.txt disallow rules because it acts on a direct user request. Like most AI crawlers, these agents work from the HTML the server returns rather than a full browser render, so text that only appears after client-side JavaScript runs can reach them as an empty shell. What Perplexity cites is drawn from the pages it retrieves, which is why being fetched and read is a prerequisite for being cited and never a guarantee of it.

What it takes to be readable and citable

  1. Make sure the page actually returns

    An AI crawler can only read a page it can fetch. Confirm the URL returns a 200 status, resolves without a chain of redirects, and is not so large that it gets truncated. Lantad's Retrievability check reports the status, redirects, and size a crawler sees. A page that times out or returns a 404 is invisible before any of the later steps matter.

    fetch

    • GET / as an identified crawler 429
    • content-type is HTML false
    • usable content received none
    The allbirds.com capture of 15 July 2026: a real store answering an identified crawler.
  2. Keep PerplexityBot allowed in robots.txt

    robots.txt decides which crawlers may fetch you, and vendors use different user-agent tokens. PerplexityBot follows robots.txt, so a disallow rule on a path stops it from crawling and indexing that page for Perplexity's search results. Perplexity-User is different: it fetches on a direct user request, and Perplexity's documentation states it generally does not honor robots.txt disallow rules, so blocking it there is not reliable. The dependable control is to keep PerplexityBot allowed on the pages you want surfaced. Lantad's Access check reports the exact robots.txt rule that applies to each Perplexity token.

    • Returns HTML Blocking A 4xx or 5xx ends the scan. Nothing downstream is measurable.
    • Crawler allowed Blocking robots.txt and the live server both have to permit the token.
    • Readable without JS Blocking Most AI crawlers do not execute JavaScript.
    • Structured Improves Headings and schema make the content extractable.
    • Cited Not promised The engine decides. No configuration can guarantee it.
    The order a page has to pass. Failing an earlier rung makes the later ones irrelevant.
  3. Serve the content in the raw HTML

    Most AI crawlers do not run JavaScript, so content injected client-side reaches them as an empty shell. If your main text loads through a framework after the page renders, a crawler may receive a page with no substance. Lantad measures this as Prose Parity: the share of the rendered, human-visible text that is present in the raw HTML. Aim for the raw HTML to carry the same words a visitor sees.

    Sample Illustrative, not a measurement of any real site.

    What the crawler gets

    • <div id="root"></div>
    • a script bundle
    • no product copy
    • nothing to quote

    What the visitor gets

    • the full copy
    • headings and prose
    • assembled in the browser
    • invisible on the left
    Sample illustration of a client-rendered page as each side receives it.
  4. Give the content a machine-readable structure

    Headings, semantic HTML, and structured data help a machine extract and attribute your content. A clear outline of H1 and H2 headings tells a reader what the page covers, and schema.org or JSON-LD labels what the content is. Lantad scores Structure and Schema separately so you can see whether the outline and the labels are present. Structure does not guarantee citation, but unstructured text is harder to lift a clean quote from.

    • One h1, then ordered h2s A machine reads the outline before it reads the prose.
    • Semantic containers main, article and section, rather than nested unlabelled divs.
    • A recognised business type in JSON-LD Organization, LocalBusiness, SoftwareApplication and similar.
    • Server-rendered, not injected JSON-LD added by JavaScript is not in the HTML a crawler receives.
    What the structure and schema checks look for. Together they are 25% of the score.
  5. Make the page substantive and specific

    Being fetched, allowed, and structured makes a page readable. What gets cited is drawn from the content itself, so the page should answer a real question directly and completely. Write the specific claim, figure, or definition a reader would quote, near the top and in plain text. Thin or padded pages give an answer engine little to attribute. Readable and allowed comes first, and citation, if it happens, follows from substance.

    Sample Illustrative, not a measurement of any real site.

    Hard to cite

    • one long undivided block
    • claims without specifics
    • no clear answer sentence
    • nothing quotable in isolation

    Easy to cite

    • a direct answer up front
    • specific figures and dates
    • sections that stand alone
    • a quotable sentence per idea
    What a source-listing engine can and cannot do with a page.

Written by

Lantad

Common questions

Does allowing PerplexityBot guarantee I will be cited?

No. Allowing PerplexityBot and returning readable HTML makes your page eligible to be crawled and considered. Whether Perplexity cites it in a given answer depends on the query and the content, and no tool or setting can promise a citation. The goal is to remove the reasons a page would be skipped: blocked access, an empty raw HTML shell, or a page that does not answer the question.

What is the difference between PerplexityBot and Perplexity-User?

They are two named agents Perplexity documents. PerplexityBot crawls pages to surface and link them in Perplexity's search results and follows robots.txt. Perplexity-User fetches a specific page in response to a user's request during a session, and Perplexity states it generally does not apply robots.txt disallow rules because it acts on that direct request. Each identifies with its own user-agent token, and Perplexity publishes the IP ranges for both. Lantad reports the robots.txt rule that applies to each token.

My content shows when I load the page in a browser. Why might Perplexity not see it?

Most AI crawlers read the HTML the server returns and do not run JavaScript. If your text is injected client-side after the page loads, a browser will show it but a crawler may receive an empty shell. Lantad's Prose Parity check compares the raw HTML against the rendered page and shows exactly which text a crawler is missing.

See what Perplexity can read on your site

Run a free scan: paste a URL and see exactly what AI crawlers can and cannot read, with a graded report and ranked fixes.