Robots.txt Validator & Tester
Paste or fetch your robots.txt, test any URL path against any crawler, and see exactly which rule applies — free, instant, no sign-up.
Need to create a robots.txt first?
Use our free Robots.txt Generator to build one, then come back here to test it.
Fetch Live robots.txt
User-Agent to Test
Paste or fetch a robots.txt first.
Support Our Free Tools
If you find this calculator helpful, please consider supporting our work. Your contribution helps us build and maintain these free tools for everyone.
Buy me a coffeeFree Robots.txt Validator & Tester — Test Any URL Against Any Crawler
Texterfly's Robots.txt Validator & Tester parses your robots.txt file using the same rules as Googlebot — Allow/Disallow priority, longest-match wins, wildcard *, and end-anchor $ support — and shows you exactly which rule applies to any URL path for any crawler.
Paste your robots.txt or fetch it live from your domain. Select Googlebot, Bingbot, GPTBot, or any custom user-agent. Test a single path or batch-test dozens at once. Conflict detection highlights cases where both Allow and Disallow match the same URL and explains which one wins. Sitemaps and Crawl-delay directives are extracted and displayed separately.
Don't have a robots.txt yet? Use our free Robots.txt Generator to create one, then come back here to test it before deploying.
How Robots.txt Parsing Works
User-agent matching
The parser finds the most specific group for the crawling bot. An exact match (e.g. User-agent: Googlebot) takes priority over the wildcard group (User-agent: *). If no explicit group exists, the wildcard group applies. If no wildcard exists, all paths are allowed.
Allow vs. Disallow priority (longest match)
When multiple rules match a URL path, the most specific (longest) pattern wins. If an Allow: /admin/public/ and Disallow: /admin/ both match /admin/public/index.html, the Allow: rule wins because it's longer. If two rules are the same length, Allow always beats Disallow.
Wildcard * in paths
The asterisk (*) matches any sequence of characters. Disallow: /search?* blocks all URLs containing /search? anywhere. Disallow: /*.pdf blocks any URL with .pdf in it. Wildcards are a Google extension to the original spec and are supported by most major crawlers.
End-of-string anchor $
A $ at the end of a pattern anchors the match to the end of the URL. Disallow: /*.pdf$ blocks /file.pdf but not /pdf/download (which has characters after .pdf). Without $, the pattern is a prefix/substring match.
Empty Disallow means "allow all"
Disallow: (with no value) is valid and means the crawler may access all pages. It is equivalent to not having any Disallow rule. This is commonly used as a placeholder.
robots.txt does NOT prevent indexing
A Disallow: rule prevents crawling, not indexing. If another site links to a blocked URL, Google may still index it (showing just the URL, without content). To prevent indexing, use a noindex meta tag or X-Robots-Tag HTTP response header.
Common Crawler User-Agents Reference
| User-agent | Owned by | Purpose | Block to… |
|---|---|---|---|
| Googlebot | Web search indexing | Remove from Google Search | |
| Google-Extended | Gemini AI training data | Opt out of Google AI training | |
| Bingbot | Microsoft | Bing search indexing | Remove from Bing |
| GPTBot | OpenAI | ChatGPT / GPT model training | Opt out of OpenAI training |
| CCBot | Common Crawl | Open research dataset | Opt out of Common Crawl |
| Bytespider | ByteDance | TikTok / Douyin AI training | Opt out of ByteDance AI |
| FacebookExternalHit | Meta | Link preview fetching | Stop Facebook link previews |
| Applebot | Apple | Siri, Spotlight, Apple Search | Remove from Apple Search |
| DuckDuckBot | DuckDuckGo | DuckDuckGo search indexing | Remove from DuckDuckGo |
| AhrefsBot | Ahrefs | SEO backlink database | Block Ahrefs crawling |
| SemrushBot | Semrush | SEO competitive analysis | Block Semrush crawling |
Need to Build a robots.txt from Scratch?
Our Robots.txt Generator lets you select user-agents, add Allow/Disallow rules visually, set Crawl-delay, and add sitemap URLs — then generates a ready-to-deploy file. Use it to create your robots.txt, then test it right here.
Frequently Asked Questions
Does this tester use the same rules as Googlebot?
Yes. The parser implements the Robots Exclusion Protocol as documented by Google: Allow/Disallow priority, longest-match wins when multiple rules match a URL, wildcard (*) support, end-anchor ($) support, and case-insensitive user-agent matching. It is not affiliated with Google, but applies the same parsing logic.
Why does my URL show as blocked even though I have an Allow: rule?
The Allow: rule may be shorter than the Disallow: rule that also matches. The longest (most specific) matching rule wins. Check the "Matched rule" shown in the result — if a Disallow: rule is longer than your Allow: rule, add a more specific Allow: that is at least as long as the Disallow:.
Can I test AI bot blocking (GPTBot, CCBot)?
Yes. Select GPTBot or CCBot from the user-agent presets and test your paths. If your robots.txt has User-agent: GPTBot / Disallow: / this tool will confirm the block is working correctly.
Google isn't crawling my page even though robots.txt allows it — why?
robots.txt controls crawling permission, not crawl priority. Other factors affect how often Google crawls a page: internal link depth, PageRank, crawl budget, server response time, and frequency of content changes. Google Search Console's Coverage report and URL Inspection tool give more specific crawl data.
What is the difference between this tool and Google Search Console's robots.txt tester?
Google Search Console's tester requires a verified site property and tests only Googlebot against your live robots.txt. This tool works without any account, lets you test any user-agent (including AI bots), works on any robots.txt content — live or pasted — and adds features like batch testing, conflict detection, and parsed rule tables.
Explore All Tools
95 free tools — no signup required
All 95 tools are free · No signup · No ads
