DEV Community

Weather Clock Dash
Weather Clock Dash

Posted on

Firefox about:config: The Settings That Actually Matter for Developers

about:config is Firefox's advanced settings panel — hundreds of knobs most users never touch. Here's which ones are actually useful for developers (not the paranoia list, not the full list — the practical ones).

Accessing about:config

Type about:config in the address bar. Accept the warning. Search for settings by name.

Settings are:

  • Boolean: true/false toggle (double-click to toggle)
  • Integer: number (double-click to edit)
  • String: text value (double-click to edit)

Reset to default: right-click any modified setting → Reset.

Development Convenience

// Show full URL in address bar (no truncation)
browser.urlbar.trimURLs = false

// Disable Accessibility Service (can improve DevTools performance on Windows)
accessibility.force_disabled = 1

// Allow invalid SSL certificates on localhost (useful for local HTTPS dev)
// Note: changes security.tls.insecure_fallback_hosts or use about:certificate-error workaround
// More commonly: visit about:certificate-error on the localhost page, click Advanced > Accept Risk

// Enable CSS Grid and Flexbox inspector badges in DevTools
// These are now on by default in recent Firefox, but if not:
devtools.inspector.flexboxHighlighter.enabled = true
Enter fullscreen mode Exit fullscreen mode

Performance Tweaks

// Number of HTTP connections per server (default: 6, max 15)
network.http.max-persistent-connections-per-server = 10

// DNS cache size (default: 400 entries)
network.dnsCacheEntries = 1000

// Disk cache size in KB (default: 256000 = 256MB)
browser.cache.disk.capacity = 512000

// Enable hardware acceleration (if disabled for troubleshooting)
gfx.direct2d.disabled = false  (Windows)
layers.acceleration.force-enabled = true  (verify your GPU supports this)
Enter fullscreen mode Exit fullscreen mode

Privacy / Security

// Force prefers-color-scheme: dark (dark mode for all sites)
ui.systemUsesDarkTheme = 1

// Disable WebRTC IP leak (important if using VPN)
media.peerconnection.ice.default_address_only = true

// Disable Pocket integration
extensions.pocket.enabled = false

// Disable telemetry
toolkit.telemetry.unified = false
toolkit.telemetry.enabled = false
datareporting.healthreport.uploadEnabled = false

// Disable Firefox Studies (Shield)
app.shield.optoutstudies.enabled = false
Enter fullscreen mode Exit fullscreen mode

Tab and Session Behavior

// Load previous session tabs lazily (only load when clicked)
browser.sessionstore.restore_on_demand = true

// How often Firefox saves session data (default: 15000ms = 15s)
browser.sessionstore.interval = 15000  
// Lower for more frequent saves, higher for less disk I/O

// Number of closed tabs Firefox remembers for Ctrl+Shift+T
browser.sessionstore.max_tabs_undo = 25  (default: 10)

// Number of closed windows Firefox remembers
browser.sessionstore.max_windows_undo = 5
Enter fullscreen mode Exit fullscreen mode

Display / UI

// Default font size (default: 16, you can set to anything)
font.size.variable.x-western = 16

// Minimum font size (prevents sites from using tiny text)
font.minimum-size.x-western = 0  (set to 10 or 12 to enforce minimum)

// Scroll speed multiplier
mousewheel.default.delta_multiplier_y = 100  (increase to scroll faster)

// Smooth scrolling
general.smoothScroll = true  (already default true)
Enter fullscreen mode Exit fullscreen mode

Network / Fetch Behavior

// Speculative pre-connections (Firefox pre-connects to hovered links)
network.http.speculative-parallel-limit = 6  (0 to disable)

// Prefetch linked pages
network.prefetch-next = true  (false to disable)

// Send referer header only to same-domain origins
network.http.referer.XOriginPolicy = 2  (stricter privacy)

// Upgrade insecure requests automatically
dom.security.https_only_mode = true  (same as HTTPS-only mode UI toggle)
Enter fullscreen mode Exit fullscreen mode

about:config for Web Developers Specifically

// Enable experimental CSS features (varies by Firefox version)
// Check about:config for "layout.css.experimental" to see what's available

// Enable Service Worker debugging in private windows
dom.serviceWorkers.testing.enabled = false  (true to enable testing)

// Allow CORS preflight cache (useful for API debugging)
// Not typically an about:config setting — handle at server level

// Enable Web Sockets in DevTools network panel
// Usually enabled by default; check devtools.netmonitor.features.webSockets
Enter fullscreen mode Exit fullscreen mode

How to Find Settings

Searching in about:config is good for known settings. To discover new ones:

  1. The arkenfox user.js project documents hundreds of settings with explanations — good reference even if you don't use it as a config file.

  2. Mozilla's wiki has category:Firefox_configuration pages.

  3. When debugging a specific behavior, add your suspicion to about:config search.

user.js: Persisting Settings

Changes in about:config are lost if Firefox resets its profile. For settings you want to persist across Firefox updates:

Create user.js in your profile folder (same location as prefs.js) with:

user_pref("browser.urlbar.trimURLs", false);
user_pref("browser.sessionstore.max_tabs_undo", 25);
user_pref("media.peerconnection.ice.default_address_only", true);
Enter fullscreen mode Exit fullscreen mode

Firefox reads this file at startup and applies the settings. The file overrides prefs.js, so your preferences survive profile updates.


The most impactful ones for most developers: browser.sessionstore.restore_on_demand (reduces RAM from session restores), network.http.max-persistent-connections-per-server (slightly faster multi-resource pages), and the privacy settings above.

Top comments (0)