curl-impersonate
A special curl build with matching browser TLS/JA3 and HTTP/2 fingerprints, so requests look exactly like real Chrome or Firefox and beat TLS-fingerprint blocking.
Try it now
GPT-4oWhat is curl-impersonate?
curl-impersonate is a fork of curl (and companion wrappers) whose TLS client hello, cipher order, extensions and HTTP/2 settings are modified to be byte-identical to real Chrome, Firefox or Safari. Standard HTTP libraries betray themselves through TLS/JA3 and HTTP2 fingerprints even with a normal user-agent; this tool removes that tell, which is the low-level technique many expensive scraping APIs use under the hood. It runs as a drop-in curl replacement or via Python/Node wrappers, helping requests reach sites that block non-browser TLS signatures.
Pros
- Defeats TLS/JA3 blocking that plain requests cannot.
- Far lighter than launching a real browser.
- Drop-in compatibility with curl workflows.
- Exposes the core trick used by pricey scraping APIs.
- Free and open source.
Cons
- Targets only the transport fingerprint, not JS/cookies.
- Browser profiles must be updated as browsers change.
- Still needs proxies/headers for full stealth.
- Misuse for unlawful access is prohibited.
Compare with Alternatives
| Feature | curl-impersonate | Scrapling | MediaCrawler | Crawl4AI |
|---|---|---|---|---|
| Rating | 0.0 | 0.0 | 4.4 | 0.0 |
| Pricing | Free | Free | Free | Free |
| Starting From | — | — | Free | — |
| API | — | — | — | — |
| Free Tier | — | — | — | — |
| Mobile App | — | — | — | — |
Who is it for
Anti-bot scraping
Reach sites that block by TLS fingerprint.
Request debugging
Compare browser vs client fingerprints.
Lightweight collection
Stay browser-like without Chromium overhead.
API integration
Use wrappers inside Python/Node pipelines.
Security research
Study how TLS fingerprinting detection works.