What the robots.txt tester checks

One URL. Every rule that touches it.

The deciding line, the rules it beat, and a lint of the whole file.

User-agent: *
Disallow: /private/
Allow: /private/helplongest match wins
User-agent: PerplexityBot
Disallow: /blocks everything

Standards-based evaluation

0 pts

Applies RFC 9309 exactly as Google documents it: most specific user-agent group, longest matching path, Allow wins ties, wildcards and $ anchors.

File health1 error
  • Disallow: / under User-agent: *
  • No Sitemap: line
  • Crawl-delay ignored by Googlebot
line 12

Deciding line

0 pts

Shows the single rule that decides the verdict, its line number, and every other rule in the group that matched but lost on length.

18 crawlers3 roles
  • OAI-SearchBotOpenAIsearch
  • Claude-UserAnthropicbrowse
  • PerplexityBotPerplexitysearch
  • Google-ExtendedGoogletrain

30+ crawlers at once

0 pts

After the crawler you picked, the same path is evaluated for Googlebot, Bingbot, every major AI crawler and the SEO tool bots.

73
Health score
9 issues · 2 critical
  • Meta tags
  • Headings
  • Images
  • Schema
  • Mobile

File lint

0 pts

Flags a wildcard Disallow: /, missing Sitemap lines, blocked CSS and JavaScript, duplicate groups, unsupported directives, BOMs, oversize files and paths that can never match.

/sitemap.xml1,204 URLs
<urlset>
<loc>
200
<loc>
404
<lastmod>2026-09-01

Sitemap declarations

0 pts

Validates that every Sitemap: line is an absolute URL, since relative ones are silently ignored.

<html lang="en">
<link rel="canonical">
<meta name="description">
<main>
text 18%

Annotated source

0 pts

The whole file with line numbers, the deciding line highlighted, so you can fix it without guessing.

Why it matters

One character can hide a section. From every search engine.

robots.txt is the one file where a single character removes a section of your site from every search engine. Most mistakes are invisible until traffic drops.

01

The longest rule wins, not the first

Crawlers do not read robots.txt top to bottom. The longest matching path decides, and Allow beats Disallow on ties. That is why an Allow rule added "below" a block often does nothing.

Standards-based evaluationDeciding line
02

Groups shadow the wildcard

If a crawler has its own User-agent group, the wildcard group does not apply to it at all, even if the specific group is empty. Bots you named in 2023 may be ignoring rules you added in 2026.

30+ crawlers at once
03

Blocking assets breaks rendering

Google renders pages to rank them. A Disallow on your CSS or JavaScript folder makes the page look empty, which is worse than not blocking anything.

File lint
How to improve

Fix what costs traffic first. Then tidy the rest.

  1. 1

    Test the URLs that matter

    Start with your homepage, a product or article page, and any path you deliberately blocked. Test each for Googlebot and for the AI crawlers you care about.

  2. 2

    Read the deciding line, not the file

    The result names the exact line. If it is the wrong one, either narrow the Disallow path or add a longer Allow path for the section you want open.

  3. 3

    Fix errors before warnings

    A wildcard Disallow: /, a relative Sitemap URL, or a blocked assets folder cost traffic today. Crawl-delay and unknown directives are just noise.

  4. 4

    Keep one group per crawler

    Duplicate User-agent groups are handled differently by different crawlers. Merge them so the behaviour is predictable.

  5. 5

    Add the sitemap and re-test

    Declare your XML sitemap with an absolute URL, then re-run the tester for the same URLs to confirm nothing regressed.

Score after fixes
41 → 93
F
D
C
B
A
robots.txt
llms.txt
FAQPage

Stop finding crawl problems by hand

SiteLift audits robots.txt, sitemaps and indexability on a schedule, publishes AI-ready content, and tells you the moment a deploy blocks a crawler.

No credit card required

Frequently Asked Questions

Everything you need to know about the robots.txt tester.

It parses the file into user-agent groups, picks the group whose token is the longest prefix match for your crawler (otherwise the * group), then applies the longest matching Allow or Disallow path. Ties go to Allow. This matches RFC 9309 and Google's published behaviour.