Anonymity checker: what your browser gives away
To show you this page, your browser sent us a request. We read it the way any website could: the network it came from, the extra notes attached to it (called headers) and the name your browser gives itself (the User-Agent). You get a grade, plus a short reason for every point we take off.
Your real IP can also slip out another way, so try the WebRTC leak test and the DNS leak test too.
What we found
Your request mentions a proxy
We found X-REAL-IP in your request. A proxy adds headers like these on the way through, and they tell every site you visit that a proxy is involved. X-Forwarded-For can even carry your real IP.
Looks like an everyday browser
Your User-Agent is the kind a normal web browser sends.
No language preference sent
Browsers normally tell sites which languages you read, in a header called Accept-Language. Yours did not, and leaving it out is a habit of automated programs.
Accept header too plain
When a browser asks for a page, it lists the kinds of content it can show (the Accept header). Your request sent only */* or nothing at all, which is typical of scripts.
How your score is worked out
Every visit starts with 100 points. We take some away for each of these things, because each one makes a request stand out from ordinary browsing:
- -30 if a header gives away that a proxy is in use (X-Forwarded-For, Via and similar).
- -25 if the User-Agent names a program such as python-requests, curl or wget instead of a browser.
- -20 if your IP's reverse DNS name points to a cloud or hosting company (AWS, GCP, OVH and others).
- -20 if no User-Agent arrives at all.
- -10 if your language preference (Accept-Language) is missing.
- -8 if the Accept header is missing or just
*/*.
For comparison, an everyday browser on a home connection usually scores 95-100, while a basic Python script tends to land around 30-50. Send that same script through one of our residential proxies with a proper User-Agent and browser-like headers, and it can climb past 90.
What this test can't see
We only see your request once it reaches our server. Some things never show up there:
- Leaks through WebRTC - the video-call feature in your browser telling a page your real IP. Use the WebRTC leak test.
- Leaks through DNS - the lookups that turn site names into addresses going around your proxy. Use the DNS leak test.
- Canvas, font and hardware details - small facts about your browser and device that scripts on a page can read, known together as a fingerprint. See the browser fingerprint tool.
- How you move around a page - mouse movement, scrolling and timing. Some sites watch these too, and no proxy changes them.
Low score? Common causes and fixes
Under 90? Go through these from the top:
- On a datacenter proxy? Some sites are stricter with addresses from hosting companies. For those, a residential or mobile proxy, which uses addresses from home and phone networks, is usually the better fit.
- Writing a script? Give it the User-Agent of an up-to-date Chrome, Safari or Firefox instead of the default its library sends. In a normal browser there's nothing to change here.
- Have the script send Accept and Accept-Language headers as well. The easy way is to copy the values your own browser sends.
- Make sure your proxy doesn't add X-Forwarded-For or Via. Our proxies are elite, also called high-anonymity, which means they leave those headers out.
- Running several separate browser profiles? Tools such as Multilogin, Dolphin Anty or GoLogin give each profile its own WebRTC, canvas, font and audio details. Most beginners won't need one, and each website's terms still apply whichever tool you use.