HeadlessChrome

browser-automation HeadlessChrome

Headless Chrome web crawler for testing

About this crawler

HeadlessChrome is a web crawler identified by the regular-expression pattern HeadlessChrome in the User-Agent request header. It is categorised as browser-automation. Use the regex above to detect, log, allow, or block HeadlessChrome traffic in your web server, CDN edge rules, or robots.txt.

Block-rate · top 25k sites

0.065%
latest snapshot
2026-06-04
matched key: HeadlessChrome
2026-05-012026-06-040.11%

Technical details

Name
HeadlessChrome
Pattern
HeadlessChrome
Tags
browser-automation
Reference
https://developer.chrome.com/blog/headless-chrome/
Added
2019/06/17
rDNS suffixes
.pptr.dev, .puppeteer.dev
Instances
3 known sample(s)

rDNS verification (FCrDNS)

Verify a request is genuinely HeadlessChrome with forward-confirmed reverse DNS: the client IP's PTR record must end in one of the suffixes below and a forward A/AAAA lookup of that hostname must return the same IP. UA strings alone are spoofable; FCrDNS is not.

Sample User-Agent strings

Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/74.0.3729.169 Safari/537.36
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/69.0.3494.0 Safari/537.36
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/76.0.3803.0 Safari/537.36

Block this crawler

robots.txt — disallow HeadlessChrome:

User-agent: HeadlessChrome Disallow: /

Apache .htaccess — return 403:

RewriteEngine On RewriteCond %{HTTP_USER_AGENT} HeadlessChrome [NC] RewriteRule .* - [F,L]

Nginx — return 403 inside a server block:

if ($http_user_agent ~* "HeadlessChrome") { return 403; }
← back to all crawlers