Desktop browser settings

Guidelines for designing browser settings

Overview

Firefox's main browser settings (about:settings) enable users to customize their browsing experience. They're organized by different categories and features that can be adjusted or modified based on user need, such as privacy and security, accessibility, syncing, search, and password management.

Please note that the following guidelines and patterns should also be applied to settings beyond about:settings (e.g., Sidebar customization, New Tab drawer).

Overall best practices

Firefox settings should help users easily discover and find ways to personalize their browsing experience through intuitive navigation and recognizable UX design patterns.

Do
Cookies, History, and Site Data including sub-page links to clear and manage browsing data
Cookies, History, and Site Data including sub-page links to clear and manage browsing data

Use progressive disclosure and display what's more important first.

Do
Enhanced Tracking Protection with descriptive text and a learn more link
Enhanced Tracking Protection with descriptive text and a learn more link

Include descriptive text below the label of features that an average user may struggle to understand (e.g. Enhanced Tracking Protection).

Do

Add any new settings within an existing category, whenever possible.

Categories and subcategories

Settings are organized by main categories named after browsing themes (e.g., search, privacy and security, languages). Within those categories you'll find actual sub-category (e.g., Default search engine, Search suggestions) settings contained within a card-like UI.

A picture of the Search category settings

Search settings category and subcategories related to it: Default search engine and Search suggestions

Complete list of Settings information architecture

Main navigation category

Sub-categories

My Firefox

Centralizes everything related to the user's personal experience, making it easy to manage all personal and account-related settings in one place.

Import browser data

Profiles

Mozilla Account

Sync

Devices

Home and Startup

Provide users with a straightforward way to control their initial experience in the browser.

Startup

New windows and tabs

Home

Search

Allows users to easily adjust how they search the web, streamlining access to search customization.

Default search engine

Search suggestions

Address Bar – Firefox Suggest

Search shortcuts

Privacy and Security

Ensures users can quickly find all protective settings in one place, reflecting the importance of safeguarding their online experience.

Protection stats

Cookies, history, and site data

Enhanced Tracking Protection

Additional protections

Proxy settings

DNS over HTTPS

Connection and software security

Autofill and Passwords

Ensures users can quickly find all protective settings in one place, reflecting the importance of safeguarding their online experience.

Passwords

Addresses

Payment methods

Appearance

Emphasizes customization, making it simple for users to adjust the visual aspects of their browsing experience.

Website appearance

Browser appearance

Browsing

Consolidates all settings that influence the core browsing experience, enhancing usability by keeping related features together.

Sidebar

Tab management and navigation

Text navigation and interaction

Downloads

Applications

Performance

Media

Features

Accessibility

Highlight the importance of accessibility and inclusion, making it easier for users with different needs to find and use these features.

Website contrast

Fonts

Zoom

Navigation

Display

Languages

Ensures that users can easily set their preferred language at the browser and website level, as well as translation preferences.

Firefox language

Websites language

Spell checking

Translation

Permissions and data

Website and Firefox permissions under one section clarifies data control, helping users manage privacy and security effectively.

Website permissions

Content

Firefox data collection

Website advertising

Firefox Labs

Encourages user engagement of experimental features, while clearly separating such tools from stable ones.

Browsing

Webpage display

Developer tools

About Firefox

Helps users know where to go for help and updates, potentially reinforcing their connection to the broader Mozilla ecosystem.

Firefox updates

Firefox support link

More from Mozilla

More product offerings by Mozilla.

Firefox for mobile

Mozilla Monitor

Mozilla VPN

Firefox Relay

Solo

When to add a new main navigation category

New settings should fall under an existing main navigation category, either as a new subcategory (card) or as a new configurable option within an existing subcategory.

There shouldn't be a need for new categories on the main page navigation level, as we have tried to capture most, if not all, overarching browsing themes.

You can propose a new main navigation category if a new setting's theme and purpose does not seem to belong under any of the existing categories or subcategories.

Housing a setting in-context vs. in about:settings

When to consider keeping a setting in context vs. in about:settings.

When to deep-link or copy settings.

Where is the action happening in relation to the setting interaction?

Settings will live either in:

  • Context of a feature (e.g., add-ons)
  • about:settings (e.g., Download settings)
  • Both in-context and in about:settings, either as a carbon copy or extra settings (e.g., New Tab)
New Tab customization options within about:settings

New Tab customization options within about:settings

New Tab customization options in-context within a drawer

New Tab customization options in-context within a drawer

Contextual settings are recommended when the action related to the result of the interaction with the setting is in proximity. i.e.:

  • Sidebar settings ⇾ Move sidebar to the right ⇾ the sidebar moves
  • Print ⇾ Scale: 80% ⇾ the PDF preview shrinks
Sidebar customization settings within the sidebar

Sidebar customization settings within the sidebar

Browser layout settings containing sidebar customization settings

Browser layout settings containing sidebar customization settings

The majority of customizations for overarching browsing features (e.g., Translations, Startup, Permissions) will then tend to live in about:settings under a parent category matching such feature.

There can be cases where keeping settings in-context as well as in about:settings can also be beneficial for feature discovery, since most users tend to look for customization options within main settings. (e.g., New Tab)

Deep-linking

Sometimes, setting categories feel closely related (e.g., Appearance and Accessibility). In such cases, we recommend including box links to the related category because users may end up looking for them there too.

Browser appearance settings link out to Extensions and Themes

Browser appearance settings link out to Extensions and Themes

Layout

Cards and boxes

Use cards to contain settings categories. When there is a need to further visually separate information within cards, make use of a box group and/or box item(s).

Saved addresses feature using the box group and item components

Saved addresses' list uses the box group and item components

Inline vs. block form UI elements

Avoid in-lining more than 3 form UI elements (e.g., label + text input + a button) as users tend to read and fill out online forms from top to bottom and to avoid weird visual truncation and wrapping.

Inline form elements should also always be categorically related (e.g., address + zip code, font family + font size)

Inline label, dropdown, and button

Inline label, dropdown, and button

Nesting

Nesting inputs is okay and may happen when a parent feature or customization has further customizable options.

More detailed customization options nested under Search suggestions settings

More detailed customization options nested under Search suggestions settings

Toggle vs. checkbox

When in doubt, use a checkbox for letting users pick their desired configurations within settings. Reserve toggles for moments when a user needs to turn a feature on or off. The trick to tell these needs apart is through the label. A toggle's label should be a fairly brief feature name (e.g., Search shortcuts → Google), whereas a configuration label tends to be a bit more of an explanation of what a user is about to configure / change (e.g., Startup → Open previous windows and tabs).

Nested recent activity customizations

Nested recent activity customizations

Progressive disclosure

When to hide or show certain settings based on user needs and complexity.

Use progressive disclosure (subpages, dialogs, collapsible content blocks/accordions) for settings' users “set it and forget it” or less frequently adjust.

Use progressive disclosure for complex settings in order to reduce cognitive load for users.

Progressive disclosure creates a simpler experience for most users, while advanced users maintain quick access to customization options.

We recommend a box button for any subpages flow (see right below).

Translations using box button for a subpage with more settings

Translations using box button for a subpage with more settings

Subpages

A subpage is a lower-level page or pages used for more complex or rarely touched sub-settings that should not be surfaced on the main category page. Subpages will contain a breadcrumb, so users easily remember where they've navigated from.

More detailed translations settings under a subpage

More detailed translations settings under a subpage

Dialogs

A dialog is interruptive for a purpose. Use dialogs if there is a need for users to take an action or confirm choices via a new flow.

A dialog for adding a custom search shortcut

A dialog for adding a custom search shortcut

Iconography

We add iconography next to the setting category and feature names for better recognition. Not every category necessarily requires an icon, since it can be difficult to come up with a symbol for everything. Try to use an icon whenever possible.

Downloads settings' header includes a download icon

Downloads settings' header includes a download icon

Restoring defaults

Consider a “Reset to default” button addition next to settings that have many combinations and options to be modified. Users may forget the original state of a setting (e.g., ETP, website contrast colors).

Restore New windows and tabs default appearance

Restore New windows and tabs default appearance

Accessibility

  • Clearly label your inputs and fieldsets.
  • Fieldset legends should clearly relate a group of configuration options to one another.
  • “Use the aria-label attribute to provide an accessible name for an element when no visible label exists…” Learn more.
  • Use the aria-description attribute for longer explanations, it “can be longer as it is intended to provide more context and information.” Learn more.