A VPN hides your IP from ordinary web requests, but WebRTC can hand it over through a side door. This test asks your browser to reveal what WebRTC exposes and compares it with the address websites see, then gives a plain verdict.
- Address sites see (this connection)
- —
- Public IPs found by WebRTC
- —
- Local IPs found by WebRTC
- —
- mDNS names (local address hidden)
- —
- WebRTC support
- —
If you are on a VPN and a public WebRTC address differs from the address sites see, your real IP is leaking.
How the test works
WebRTC finds the best path between two peers by gathering ICE candidates: your local network addresses, the public address as seen by a STUN server, and relay addresses if configured. A web page can read those candidates with JavaScript. This page creates a connection, asks two public STUN servers what address they see, and lists everything WebRTC returns. Separately it reads the address your connection to this page arrived from. If WebRTC shows a public address that the page did not otherwise see, your VPN is not covering WebRTC traffic.
What the results mean
Leak detected means a second public address appeared. On a VPN this is your real ISP address and it defeats the purpose of the VPN for any site that runs this same check. No leak with a local address visible is the normal state for most browsers: the LAN address is not a security problem on its own, but Firefox and Brave can hide it and Chrome replaces it with an mDNS name in most configurations. WebRTC disabled is the safest result, at the cost of browser-based video calls.
Your public address on its own is on the homepage. Everything else your browser reveals is listed in the browser info tool. If you are choosing a VPN, the difference between the address it gives you and your own is explained in public vs private IP addresses.