about:config is Firefox's advanced settings panel — a flat key-value store for hundreds of internal preferences. Most users never touch it. Knowing a handful of settings meaningfully improves privacy and performance.
Accessing about:config
Type about:config in the address bar → Accept the warning → Search for settings.
Every setting has:
- A name (e.g.,
network.trr.mode) - A type (boolean, integer, string)
- A status (Default, Modified, or Locked)
- A current value
Double-click boolean settings to toggle. Double-click integer/string settings to edit.
Settings Worth Knowing
DNS over HTTPS (Forced Mode)
network.trr.mode = 3
Mode values:
- 0: Off (default DNS)
- 1: TRR is tried first, fallback to OS
- 2: TRR preferred, fallback to OS (Firefox's UI default when DoH is enabled)
- 3: TRR only, no fallback
- 5: Explicitly disable TRR
Mode 3 forces all DNS through your DoH resolver. Only use this if your DoH resolver is reliable — if it goes down, DNS stops working.
network.trr.uri = https://1.1.1.1/dns-query
Set your preferred DoH resolver. Alternatives:
-
https://9.9.9.9/dns-query(Quad9) -
https://dns.nextdns.io/YOUR-ID(NextDNS — configurable filtering) -
https://dns.adguard-dns.com/dns-query(AdGuard)
ECH (Encrypted Client Hello)
network.dns.echconfig.enabled = true
network.dns.http3_echconfig.enabled = true
ECH encrypts the SNI (Server Name Indication) in TLS handshakes. Prevents passive observers from seeing which hostnames you're visiting. Works automatically on Cloudflare-hosted sites.
Disable WebRTC Local IP Leaks
media.peerconnection.ice.no_host = true
Prevents WebRTC from advertising your local network IP addresses. WebRTC still works for video calls via relay, but your internal IP (192.168.x.x) isn't exposed to sites.
Note: media.peerconnection.enabled = false disables WebRTC entirely — also stops browser-based video calls.
Fingerprinting Resistance
privacy.fingerprintingProtection = true
Firefox 117+ built-in fingerprinting protection. Standardizes many properties that browsers expose (canvas noise, audio context precision, timezone, etc.) to make your browser less uniquely identifiable.
More aggressive (Tor Browser-level):
privacy.resistFingerprinting = true
Warning: privacy.resistFingerprinting can break some sites (it spoofs more properties including window.screen.width). Use privacy.fingerprintingProtection (new API) for a better balance.
Sanitize History on Shutdown
privacy.sanitize.sanitizeOnShutdown = true
privacy.clearOnShutdown.cookies = true
privacy.clearOnShutdown.history = true
Clears cookies and history when Firefox closes. Good for shared computers or high-privacy profiles.
Form Autofill
signon.autofillForms = false
Disables auto-filling login forms. Useful if you use a password manager extension that handles this itself and you don't want Firefox competing.
Disable Pocket
extensions.pocket.enabled = false
Removes the Pocket (save for later) integration from Firefox's toolbar and menus. Pocket is a Mozilla service — this doesn't affect privacy, just declutters the UI.
Disable Sponsored Content on New Tab
browser.newtabpage.activity-stream.showSponsored = false
browser.newtabpage.activity-stream.showSponsoredTopSites = false
browser.newtabpage.activity-stream.feeds.topsites = false
Removes sponsored tiles from the new tab page.
Settings NOT Worth Changing
javascript.enabled = false: Breaks essentially everything. Not a practical privacy measure.
network.http.sendRefererHeader = 0: Breaks OAuth login flows and many sites. The privacy gain is minimal — Referer is a minor tracker compared to cookies/fingerprinting.
network.http.pipelining = true: Old optimization that's been replaced by HTTP/2 multiplexing. No longer relevant.
User.js — Automating about:config
A user.js file in your Firefox profile directory sets preferences on startup:
// ~/.mozilla/firefox/PROFILE/user.js
user_pref("network.trr.mode", 3);
user_pref("network.trr.uri", "https://1.1.1.1/dns-query");
user_pref("privacy.fingerprintingProtection", true);
user_pref("media.peerconnection.ice.no_host", true);
This ensures your settings survive Firefox updates that might reset modified preferences.
arkenfox user.js: A well-maintained community project that provides a comprehensive, documented user.js for privacy-hardened Firefox. Available on GitHub at arkenfox/user.js. Be aware it's opinionated and may break some sites — read the documentation before applying.
Viewing Your Modified Settings
about:config → Filter by "Modified" status:
- Click the filter icon (looks like a funnel)
- Or search for "Modified" doesn't work — instead look for settings with the Modified label (shown differently from Default)
Alternatively: about:support → Firefox Configuration → Shows all modified preferences and their current values.
Safe Experimentation
about:config settings can break things. The safety net:
- Note the current value before changing
- Right-click → "Reset" to restore any setting to its default
- If Firefox won't start: launch with
--safe-modeflag, or deleteprefs.js(notuser.js) from your profile to restore all defaults
The prefs.js file stores all your about:config changes. Deleting it resets everything to factory defaults.
Top comments (0)