Skip to content
TopRatedVPN
Find VPN

WebRTC leak test

A connected VPN is not the same as a covered one. This checks whether your browser is quietly handing out your real address around the tunnel.

Free, no sign-up, nothing stored. Part of our VPN tool set · data from tests run September 4, 2026.

Free · no sign-up
How it works
  1. Connect your VPN, then run the test
  2. Your browser gathers its own network candidates
  3. Any public IP here is one a website can read
  • Runs entirely in the browser
  • STUN and mDNS candidates
  • Nothing leaves the page
What the test reports Ready
Public IP from WebRTC
Local network IP
Candidates gathered
Leak verdict

Pure browser test — no server involved, nothing leaves the page.

The address our server sees
Public addresses advertisedNot tested yet
Local addresses (harmless)Not tested yet

This test runs entirely in your browser. The candidate addresses never leave your device — nothing is posted back to us. See the privacy policy.

About this tool

WebRTC exists so two browsers can talk to each other directly — video calls, screen sharing, peer-to-peer file transfers. For that to work, each side has to advertise every route the other might reach it on. The browser collects those routes, called ICE candidates, by asking your operating system and a public STUN server what addresses it has.

The trouble is that this happens below the level a VPN operates at. The VPN reroutes your traffic; WebRTC asks the system a question and reports the answer. On some setups the answer still includes the address your ISP gave you, and any page you are on can read it with a few lines of JavaScript. No permission prompt, no camera access needed.

How to read the result

The test opens a throwaway peer connection, collects everything your browser is willing to advertise, and sorts it. Local addresses — the 192.168 and 10. ranges your router hands out — are listed but harmless; they describe your home network and are meaningless on the internet. What matters is the public addresses. If the only public address matches the one our server sees, nothing is escaping. If a second, different one appears, that is the leak, and it is your real address.

A blocked test is a good result too. If your browser refuses to run WebRTC at all — because you disabled it, or an extension intercepts it — there is no channel for the leak to travel through.

Fixing it properly

You can disable WebRTC by hand, but you will break video calls in that browser, and you will have to redo it on every browser and after some updates. The durable fix is a VPN whose apps handle it: they either block the candidate gathering or force it through the tunnel, so the feature keeps working and the address stays hidden. We re-run this exact test on every VPN we rate, on Windows, macOS, iOS and Android, as part of the privacy score — the method is on the how we test page, and the results are in each review.

Questions people ask

  • What is a WebRTC leak?

    WebRTC is the browser feature behind video calls and screen sharing. To connect two people directly it asks your system for every address it can reach the internet on, and hands those to the page. On a VPN, that list can include your real address — so a site sees the VPN address in the connection and your real one in the JavaScript.

  • Does a leak mean my VPN is broken?

    No. The VPN tunnel is working; the browser is going around it. That is why a leak can appear even when the VPN app says you are connected and every other check passes. It is a browser behaviour, which is why it has to be fixed in the browser or by a VPN that blocks it deliberately.

  • How do I stop WebRTC from leaking?

    The reliable fix is a VPN with WebRTC leak protection built into its apps and browser extensions — every VPN in our top three has it on by default. Failing that, Firefox lets you set media.peerconnection.enabled to false in about:config, and extensions like uBlock Origin have a setting to prevent WebRTC from revealing local addresses. Disabling it entirely will break video calls in that browser.

  • Why did the test find several addresses?

    Anything starting 10., 192.168., 172.16–31. or fe80: is a local network address — your router handed it out and it means nothing outside your house. Those are listed separately and are not a leak. Only a public address that differs from the one our server sees counts.

  • Should I test in every browser?

    Yes, if you use more than one. Chrome, Firefox, Safari and Edge each implement WebRTC differently, and an extension or a privacy setting in one will not carry over to another. It is also worth re-testing after a browser update.

  • Does this test send my addresses to you?

    No. The whole check runs in your browser using its own WebRTC implementation. The addresses are shown to you and never posted back to us — the only thing we fetched was the address your request already carried.

More free tools