What is a WebRTC leak?
WebRTC (Web Real-Time Communication) is a technology built into most modern browsers that enables peer-to-peer features like video calls, voice chat, and file sharing — without requiring a plugin or app. To establish direct connections between users, WebRTC needs to discover IP addresses using a protocol called STUN (Session Traversal Utilities for NAT).
A WebRTC leak occurs when this IP discovery process exposes your real IP address to websites — even when you are connected to a VPN. Because WebRTC operates at the browser level rather than the network level, some VPNs do not intercept these requests. A website can use a few lines of JavaScript to trigger a WebRTC STUN request and read your actual public IP address, bypassing your VPN entirely.
This is different from a DNS leak. A DNS leak exposes which websites you visit. A WebRTC leak exposes your actual IP address — which is typically a more serious privacy concern.
How to read your results
No WebRTC leak detected means your browser either does not support WebRTC, has it disabled, or your VPN is successfully preventing IP exposure through WebRTC. No public IP addresses outside your VPN were found.
Possible WebRTC leak detected means this test found one or more public IP addresses exposed via WebRTC. If your VPN is active and the detected IP does not match your VPN's exit IP, your real IP address may be visible to websites that use WebRTC.
Local IP addresses (such as 192.168.x.x or 10.x.x.x) are private network addresses — your router's internal assignment to your device. These are visible to any website using WebRTC regardless of VPN status, and are considered lower risk than a public IP leak. However, they can still be used for browser fingerprinting.
How to fix a WebRTC leak
Firefox: Type about:config in the address bar, search for media.peerconnection.enabled, and set it to false. This completely disables WebRTC in Firefox without affecting normal browsing.
Chrome and Edge: Chrome does not allow disabling WebRTC through settings. The most reliable solution is to install a browser extension such as WebRTC Network Limiter (by Google) or uBlock Origin, which can restrict WebRTC IP handling to your default public interface only.
Brave: Go to Settings → Privacy and security → WebRTC IP handling policy → Select "Disable non-proxied UDP." This prevents WebRTC from exposing your local IP address.
Safari: Safari has stricter WebRTC privacy controls by default and is less likely to leak local IPs. No manual configuration is usually required.
Use a VPN with WebRTC leak protection: Some VPN providers — including Mullvad, ProtonVPN, and ExpressVPN — include built-in WebRTC leak protection that routes or blocks WebRTC traffic through the VPN tunnel. Check your VPN's settings or documentation to confirm this feature is enabled.
Which browsers are affected by WebRTC leaks?
WebRTC is enabled by default in Chrome, Firefox, Edge, Opera, and Brave. All of these browsers can potentially expose local and public IP addresses via WebRTC unless additional protections are applied.
Safari implements stricter WebRTC handling and does not expose local IP addresses by default, making it less vulnerable to this type of leak.
Mobile browsers are also affected. Chrome on Android and Safari on iOS both support WebRTC. Mobile VPN users should test their mobile browsers separately from their desktop browsers, as VPN configurations can differ between devices.
Frequently asked questions
about:config and set media.peerconnection.enabled to false to disable WebRTC entirely. In Chrome and Edge, install WebRTC Network Limiter or use uBlock Origin with WebRTC blocking enabled. In Brave, go to Settings → Privacy and security → WebRTC IP handling policy and select "Disable non-proxied UDP." Alternatively, use a VPN that includes built-in WebRTC leak protection.