What is a WebRTC leak?
WebRTC lets browsers make real-time audio, video and data connections directly to each other, which powers web calls and screen sharing. To find a direct path, the browser gathers "ICE candidates": the IP addresses where it can be reached. It also asks a public STUN server which public IP address it appears to come from. Any web page can trigger this in JavaScript without asking permission, so a page can learn your real public IP address even if your normal traffic goes through a VPN or proxy that does not handle WebRTC. That is a WebRTC leak.
How this test works
- Your browser creates a WebRTC connection and gathers candidates using Google's public STUN server.
- We extract every IP address found and compare the public ones with the IP address our server sees for your normal web traffic.
- If WebRTC reveals a public IP address that differs from the one websites see, your real IP is leaking.
Modern browsers hide your local IP address behind a random .local name (mDNS), which is not a leak. Everything runs in your browser; the candidates are not sent to our server.
How to fix a WebRTC leak
- Use a VPN app with WebRTC leak protection, or route all traffic through the VPN at the system level rather than with a browser-only proxy extension.
- Firefox: open
about:configand setmedia.peerconnection.enabledtofalse(this disables web calls). - Chrome, Edge and Brave: use a WebRTC-limiting extension, or in Brave set WebRTC IP handling policy to "Disable non-proxied UDP".
- Safari: does not expose local IPs by default; keep it updated.
Also check for IPv6 leaks, and read DNS and WebRTC leaks explained.
Frequently asked questions
Is a local IP like 192.168.1.20 in the results a problem?
It reveals little on its own, but combined with other data it helps fingerprint you. Most browsers now replace it with an mDNS name.
Does incognito mode prevent WebRTC leaks?
No. Private browsing does not change how WebRTC gathers addresses.