DNS Leak Checker
Running live test…

How to Disable WebRTC in Chrome, Firefox, Edge, Brave & Safari

WebRTC (Web Real-Time Communication) is a browser feature used for video calls and voice chat, but it can expose your real IP address to any website — even when you are using a VPN. This makes it one of the most underestimated privacy vulnerabilities for VPN users. Check whether your browser is currently leaking via WebRTC using the test below, then follow the guide for your browser.

If the test shows a leak, find your browser in the guide below and follow the steps to fix it.

What Is WebRTC and Why Is It a Privacy Risk?

WebRTC (Web Real-Time Communication) is an open-source browser technology that enables real-time audio, video, and data sharing directly between browsers without requiring a central server as an intermediary. It is the technology powering Google Meet, Discord's web client, browser-based video calling on Facebook Messenger, Jitsi video conferencing, and numerous peer-to-peer file sharing tools. WebRTC is built into every major browser — Chrome, Firefox, Edge, Opera, Brave, and Safari — and is enabled by default.

The privacy problem with WebRTC lies in how it establishes connections. To create a direct peer-to-peer link between two browsers, WebRTC needs to discover your device's real IP addresses — including your local network address and your public IP. It does this through a process called ICE (Interactive Connectivity Establishment), which sends STUN requests to external servers to discover your public IP. This process happens automatically, silently, and without any user notification or consent. Any website can trigger ICE candidate gathering via JavaScript and read the IP addresses returned.

VPNs do not reliably stop WebRTC leaks because they operate at different layers. A VPN encrypts your internet traffic and hides your IP at the network level — all traffic leaving your device goes through the VPN tunnel. But WebRTC operates at the browser level and uses STUN requests that can bypass the VPN tunnel entirely, communicating directly with the STUN server using your real network interface. This means a website can discover your real IP address through WebRTC even if your VPN shows as connected, your IP appears masked on standard IP checkers, and all your other traffic is properly encrypted.

The browsers most affected are Chrome, Firefox, Edge, and Opera, which all expose IP addresses via WebRTC by default with no built-in controls to prevent it. Brave is the notable exception — it includes built-in WebRTC IP leak protection in its privacy settings and restricts ICE candidate exposure by default. Safari has limited WebRTC exposure and only performs full ICE candidate gathering for websites that have been granted explicit camera or microphone permission. The risk is highest for VPN users who visit websites with embedded video calling, live streaming, or peer-to-peer features.

There are two approaches to solving WebRTC leaks. The first is fully disabling WebRTC, which completely prevents any IP exposure but breaks all browser-based video calling and real-time communication. The second is using policy-level controls — specifically the "Disable non-proxied UDP" setting — which prevents WebRTC from exposing IP addresses that are not already routed through the VPN or proxy, while keeping WebRTC functional for legitimate peer-to-peer connections. The guide below covers both approaches for every major browser.

How to Disable WebRTC in Google Chrome

Method 1 — Via Chrome Flags

  1. 1

    Open Chrome Flags

    Open Google Chrome and type chrome://flags in the address bar, then press Enter. This opens Chrome's experimental features page where hidden settings can be toggled.

  2. 2

    Search for WebRTC

    In the search box at the top of the flags page, type 'WebRTC'. This will filter the list to show any WebRTC-related experimental flags available in your Chrome version.

  3. 3

    Set WebRTC IP Handling Policy

    If you see a flag called 'WebRTC IP Handling Policy' or 'Anonymize local IPs exposed by WebRTC', set it to 'Enabled' or 'Disable non-proxied UDP'. This prevents WebRTC from exposing IP addresses that bypass your VPN.

  4. 4

    Relaunch Chrome

    Click the 'Relaunch' button at the bottom of the page to restart Chrome with the new setting applied. Your tabs will be restored automatically after the relaunch.

  5. 5

    Re-run the WebRTC Leak Test

    Return to this page and click 'Re-test' above to confirm WebRTC is no longer exposing your real IP address. If the test passes, you're protected.

Note: This flag may not be available in all Chrome versions. Google occasionally removes or renames experimental flags. If the flag is not present, use the extension method below — it is more reliable and persistent across Chrome updates.

Method 2 — Via Extension (Recommended)

The most reliable method to prevent WebRTC leaks in Chrome is to install a browser extension. The "WebRTC Network Limiter" extension, published by Google, allows you to set a WebRTC IP handling policy that persists across browser updates. Alternatively, uBlock Origin includes a WebRTC leak prevention toggle in its privacy settings.

  1. 1

    Install WebRTC Network Limiter

    Open the Chrome Web Store and search for 'WebRTC Network Limiter'. Click 'Add to Chrome' and confirm the installation. This extension is published by Google and is lightweight — it does not affect browsing speed.

  2. 2

    Configure the Extension

    Click the extension icon in your toolbar (you may need to pin it first via the puzzle icon). Select 'Disable non-proxied UDP (Recommended)' from the policy options. This is the optimal setting for VPN users.

  3. 3

    Verify the Fix

    Return to this page and re-run the WebRTC leak test above. The result should now show 'No WebRTC Leak Detected'. If it still shows a leak, try selecting the 'Force proxy' option in the extension for stricter control.

What does "Disable non-proxied UDP" mean? This policy prevents WebRTC from discovering and sharing IP addresses that are not already routed through your VPN or proxy. Your VPN's IP can still be used for WebRTC connections (keeping video calls functional), but your real IP behind the VPN is never exposed. This is the best balance of privacy and functionality for most users.

How to Disable WebRTC in Mozilla Firefox

Firefox is the easiest browser to fully disable WebRTC in, because it provides a built-in configuration toggle without requiring any extension. This method completely disables WebRTC at the browser engine level.

  1. 1

    Open Firefox Configuration

    Type about:config in the Firefox address bar and press Enter. This opens Firefox's advanced configuration editor, which gives you access to hundreds of hidden browser settings.

  2. 2

    Accept the Warning

    Firefox will display a warning page saying 'Proceed with Caution'. Click 'Accept the Risk and Continue' to access the configuration editor. This is a standard warning for advanced settings — the changes you're about to make are safe and reversible.

  3. 3

    Search for WebRTC Setting

    In the search bar at the top of the about:config page, type media.peerconnection.enabled. This is the master toggle for WebRTC in Firefox. You should see exactly one result.

  4. 4

    Disable WebRTC

    Double-click the media.peerconnection.enabled preference to toggle its value from true to false. Alternatively, click the toggle icon on the right side of the row. The value should now display as false in bold text.

  5. 5

    Confirm WebRTC Is Disabled

    WebRTC is now completely disabled in Firefox. No browser restart is required — the change takes effect immediately. Return to the top of this page and re-run the WebRTC leak test to confirm.

Additional Hardening (Optional)

For broader privacy protection in Firefox, search for privacy.resistFingerprinting in about:config and set it to true. This enables Firefox's built-in fingerprinting resistance, which standardises various browser characteristics (timezone, screen resolution, installed fonts) to make your browser less uniquely identifiable. Note that this setting may change the appearance of some websites and can affect timezone-dependent functionality.

How to Disable WebRTC in Microsoft Edge

Method 1 — Via Edge Flags

  1. 1

    Open Edge Flags

    Open Microsoft Edge and type edge://flags in the address bar, then press Enter. This opens Edge's experimental features page, which works identically to Chrome's flags page since Edge is Chromium-based.

  2. 2

    Search for WebRTC

    In the search box, type 'WebRTC'. Look for a flag called 'Anonymize local IPs exposed by WebRTC' or similar. The exact name may vary by Edge version.

  3. 3

    Enable the Flag

    Set the flag to 'Enabled'. This prevents WebRTC from exposing your local network IP addresses, which is one component of WebRTC leaks. Combined with a VPN, this provides strong WebRTC leak protection.

  4. 4

    Relaunch Edge

    Click 'Restart' at the bottom of the page to apply the change. Return to this page and re-run the WebRTC leak test to confirm the fix is working.

Method 2 — Via Extension

Microsoft Edge supports Chrome extensions through the Edge Add-ons store. You can install the same "WebRTC Network Limiter" extension used in Chrome.

  1. 1

    Open Edge Add-ons

    Navigate to the Microsoft Edge Add-ons store (addons.microsoft.com) and search for 'WebRTC Network Limiter'. Alternatively, enable 'Allow extensions from other stores' in Edge settings and install it from the Chrome Web Store.

  2. 2

    Install and Configure

    Add the extension to Edge and configure it to 'Disable non-proxied UDP'. This prevents WebRTC from exposing IP addresses that bypass your VPN while keeping video calling functional.

  3. 3

    Verify

    Re-run the leak test above. If the test passes, your Edge browser is no longer leaking your real IP via WebRTC.

Note: Microsoft Edge is Chromium-based and shares Chrome's WebRTC implementation. However, Edge has some additional enterprise group policy controls for WebRTC (WebRtcLocalIpsAllowedUrls, WebRtcLocalhostIpHandling) that IT administrators can use to enforce WebRTC IP handling policies across an organisation.

How to Disable WebRTC in Brave Browser

Brave is the only major browser with built-in WebRTC IP leak protection accessible directly from the settings menu — no extensions or hidden flags required. Brave users are already better protected than Chrome, Firefox, or Edge users by default, but you should verify and strengthen the setting.

  1. 1

    Open Brave Settings

    Click the hamburger menu (three horizontal lines) in the top-right corner of Brave and select 'Settings'. Alternatively, type brave://settings in the address bar.

  2. 2

    Navigate to Privacy and Security

    In the left sidebar, click 'Privacy and security'. This section contains Brave's built-in privacy controls, including the WebRTC policy.

  3. 3

    Find WebRTC IP Handling Policy

    Scroll down to the 'WebRTC IP Handling Policy' dropdown. This is a native Brave feature — no extension needed. The dropdown shows four options for controlling how WebRTC handles your IP addresses.

  4. 4

    Select 'Disable non-proxied UDP'

    Choose 'Disable non-proxied UDP' from the dropdown. This is the recommended setting — it prevents WebRTC from exposing any IP address that is not already routed through your VPN or proxy.

  5. 5

    No Restart Required

    The change takes effect immediately — no browser restart is needed. Return to the top of this page and re-run the WebRTC leak test to confirm protection is active.

Brave WebRTC Policy Options Explained

Uses the standard Chromium WebRTC behaviour — exposes all IP addresses. Not recommended for privacy.

Default public and private interfaces

Allows WebRTC to use both your public and private (local network) IP addresses. Less restrictive than default but still exposes IPs.

Only allows WebRTC to use your public-facing IP address. Prevents local IP exposure but still shows your public IP (or VPN IP).

Disable non-proxied UDP (Recommended)

Prevents WebRTC from using any IP address that isn't already routed through a proxy or VPN. This is the optimal setting — keeps video calls working through your VPN while preventing real IP exposure.

WebRTC and Safari

Safari has limited user-facing WebRTC controls compared to other browsers. However, Safari's implementation of WebRTC is inherently less aggressive about IP exposure than Chrome or Firefox. Safari only performs full ICE candidate gathering — the process that exposes IP addresses — for websites that have been granted explicit camera or microphone permission. This means casual browsing on Safari is less likely to trigger WebRTC leaks than on Chrome.

For Advanced Users

  1. 1

    Enable the Develop Menu

    Open Safari → Settings (or Preferences on older macOS) → Advanced → check 'Show Develop menu in menu bar'. This enables Safari's developer tools, which include some WebRTC-related options.

  2. 2

    Access WebRTC Settings

    In the menu bar, click Develop → WebRTC. You may see options like 'Enable Legacy WebRTC API' — toggling this can limit WebRTC behaviour in some scenarios. The available options vary by Safari and macOS version.

Honest note: Safari does not offer full WebRTC disabling at the browser settings level. Apple has not provided a user-accessible toggle equivalent to Firefox's media.peerconnection.enabled. Users who need complete WebRTC control should use Firefox with the about:config method or switch to Brave, which has the most accessible built-in WebRTC IP handling policy.

Should You Fully Disable WebRTC or Just Block Leaks?

Fully disabling WebRTC eliminates all risk of IP exposure through this vector, but it comes with a real usability cost. Browser-based video calling services — Google Meet, Discord web, Jitsi, Facebook Messenger calls, Microsoft Teams in the browser, and any other peer-to-peer communication tool — will stop working entirely. If you rely on any of these services for work or personal communication, fully disabling WebRTC is not practical.

The better approach for most users is to prevent IP leaks through policy-level settings rather than disabling WebRTC entirely. The "Disable non-proxied UDP" option — available natively in Brave and through extensions in Chrome and Edge — blocks your real IP from being exposed while keeping WebRTC functional for legitimate peer-to-peer connections. When combined with a VPN, this setting ensures that only your VPN's IP address is visible to WebRTC, not your real IP. Video calls work normally through the VPN tunnel.

For users who never use browser-based video calling and prioritise maximum privacy above all else, fully disabling WebRTC in Firefox via the media.peerconnection.enabled about:config toggle is the cleanest solution with no trade-offs. If you need video calling, use the desktop applications for those services (Zoom desktop app, Discord desktop app) instead of the browser versions — desktop apps have their own communication stacks and are not affected by browser WebRTC settings.

Brave has the best built-in WebRTC leak protection of any major browser. It includes a WebRTC IP handling policy directly in its privacy settings with no extension required. Tor Browser fully disables WebRTC by default for maximum anonymity. Safari has limited WebRTC exposure and only allows ICE candidate discovery for sites with explicit camera/microphone permission. Chrome, Firefox, and Edge all expose WebRTC IPs by default and require manual configuration or extensions to prevent leaks.

Not sure if your DNS is leaking? Find out in seconds.

Run a Free DNS Leak Test Now

Related Guides

Frequently asked questions

Does disabling WebRTC break video calls?

Yes, fully disabling WebRTC will break browser-based video calling services including Google Meet, Discord web, Jitsi, Facebook Messenger calls, and any other tool that relies on peer-to-peer browser connections. However, using the 'Disable non-proxied UDP' policy option instead of fully disabling WebRTC preserves video calling functionality while preventing your real IP from being exposed. This is the recommended approach for most users who need both privacy and video calling.

Is WebRTC a security vulnerability?

WebRTC itself is not a security vulnerability — it is a legitimate browser technology designed for real-time communication. The privacy concern is that WebRTC's ICE (Interactive Connectivity Establishment) process exposes your device's IP addresses to establish peer connections, and this happens automatically without user consent. Any website can trigger WebRTC and discover your real IP address, even if you're using a VPN. The issue is a privacy design flaw rather than a security exploit.

Does a VPN stop WebRTC leaks?

Most standard VPNs do not stop WebRTC leaks. A VPN encrypts your network traffic and hides your IP at the network level, but WebRTC operates at the browser level and can bypass the VPN tunnel entirely through STUN requests. Some premium VPNs like NordVPN include specific WebRTC leak protection that blocks WebRTC IP discovery at the network layer. However, browser-level controls (disabling WebRTC or setting the non-proxied UDP policy) are the most reliable prevention method.

What is the best extension to block WebRTC in Chrome?

The most reliable Chrome extension for WebRTC leak prevention is 'WebRTC Network Limiter' published by Google themselves. It allows you to set a WebRTC IP handling policy without fully disabling WebRTC. Alternatively, uBlock Origin includes a WebRTC leak prevention toggle in its settings (Settings → Privacy → Prevent WebRTC from leaking local IP addresses). Both extensions prevent your real IP from being exposed while keeping WebRTC functional for legitimate video calling.

Can websites detect if I have disabled WebRTC?

Yes, websites can detect that WebRTC is disabled or restricted. When a website attempts to create an RTCPeerConnection and it fails or returns no ICE candidates, the site can infer that WebRTC has been blocked. This can be used as a fingerprinting signal — the fact that you've disabled WebRTC makes your browser configuration more distinctive. However, this is a minor fingerprinting concern compared to the privacy risk of leaking your real IP address through WebRTC.

Is it safe to disable WebRTC permanently?

Yes, it is completely safe to disable WebRTC permanently if you do not use browser-based video calling. Regular web browsing, streaming video (YouTube, Netflix), audio playback, and virtually all websites work perfectly without WebRTC. The only functionality you lose is peer-to-peer browser features: video calls, voice calls, screen sharing, and P2P file transfer tools that run in the browser. Desktop applications for these services (Zoom desktop app, Discord desktop app) are not affected.

Does incognito mode disable WebRTC?

No. Incognito mode (or private browsing) does not disable WebRTC or prevent WebRTC leaks. Incognito mode only prevents your browser from saving browsing history, cookies, and form data locally — it has no effect on your network traffic or browser APIs like WebRTC. Your IP address is exposed via WebRTC identically in incognito mode and regular browsing. You need to explicitly disable WebRTC or use a policy setting regardless of whether you're browsing in incognito mode.

Which browser has the best built-in WebRTC protection?

Brave has the best built-in WebRTC leak protection of any major browser. It includes a WebRTC IP handling policy directly in its privacy settings with no extension required. Tor Browser fully disables WebRTC by default for maximum anonymity. Safari has limited WebRTC exposure and only allows ICE candidate discovery for sites with explicit camera/microphone permission. Chrome, Firefox, and Edge all expose WebRTC IPs by default and require manual configuration or extensions to prevent leaks.

Stop leaks for good

A VPN with private DNS on every server, a kill switch and WebRTC protection closes every leak this site tests for.

Get NordVPN →

30-day money-back guarantee · We may earn a commission