Firefox profiles let you run completely separate browser environments — different bookmarks, history, extensions, and settings — from the same Firefox installation. This is useful for work/personal separation, testing, development, and privacy.
What is a Firefox Profile?
A profile is a folder on your disk that contains:
- Bookmarks and browsing history
- Saved passwords (via Firefox Lockwise)
- Extensions and their settings
- Cookies and site data
-
about:configcustomizations - Sync settings (each profile can sync to a different Firefox Account)
Default location:
- Linux:
~/.mozilla/firefox/xxxxxxxx.ProfileName/ - macOS:
~/Library/Application Support/Firefox/Profiles/xxxxxxxx.ProfileName/ - Windows:
%APPDATA%\Mozilla\Firefox\Profiles\xxxxxxxx.ProfileName\
Profile Manager
Launch Firefox Profile Manager:
firefox -ProfileManager
# or
firefox --ProfileManager
Or navigate to about:profiles in Firefox.
The Profile Manager lets you:
- Create new profiles
- Delete profiles
- Rename profiles
- Set the default profile
- Launch Firefox with a specific profile
Running Multiple Profiles Simultaneously
By default, Firefox only opens one instance. To open a second Firefox window with a different profile at the same time:
# Create a new window with a different profile (no new instance)
firefox -P "Work" --no-remote
# Or to open in a separate new window
firefox -P "PersonalBrowsing" --new-instance
On macOS:
/Applications/Firefox.app/Contents/MacOS/firefox -P "Work" --no-remote
--no-remote prevents the new instance from connecting to an existing one.
Use Cases
Work/Personal Separation
Profile: Work
- Work email logged in
- Jira/Confluence bookmarks
- No personal history
- Work-specific extensions (password manager, screen recorder)
Profile: Personal
- Personal accounts
- Entertainment bookmarks
- Personal extensions (uBlock Origin, LastPass)
Testing Multiple Accounts
Profile: UserA
- Logged in as user A for testing
Profile: UserB
- Logged in as user B for testing
Profile: Logged-out
- No logins, clean state
Extension Development
Profile: Clean
- No extensions
- about:config defaults
- Test your extension in isolation
Profile: Dev
- Your extension under development
- Browser Toolbox enabled
- Remote debugging enabled
Creating Profiles from Command Line
# Create a new profile
firefox --CreateProfile "MyProfile"
# Or with a specific directory
firefox --CreateProfile "MyProfile /path/to/profile/dir"
Profile Settings Worth Knowing
In about:config, some settings are profile-specific:
- All
browser.*preferences - All
extensions.*preferences - All
devtools.*preferences privacy.trackingprotection.*
Firefox Sync settings are profile-specific — sync different things in different profiles.
Copying a Profile
To clone a profile (useful for testing):
- Close Firefox
- Find your profile folder (listed in
about:profiles) - Copy the folder
- In Profile Manager, create a new profile pointing to the copy
Or programmatically:
# Copy profile directory
cp -r ~/.mozilla/firefox/xxxxxxxx.default ~/.mozilla/firefox/xxxxxxxx.clone
# Then add to profiles.ini manually or via Profile Manager
Firefox Containers vs Profiles
These solve different problems:
| Feature | Containers | Profiles |
|---|---|---|
| Isolation | Per-tab cookie isolation | Complete environment isolation |
| Extensions | Share across containers | Separate per profile |
| History | Shared | Separate |
| Bookmarks | Shared | Separate |
| Performance | No extra overhead | Extra Firefox instance |
| Use case | Same-session account separation | Work/personal split |
Use containers for keeping one site's cookies from leaking to another within the same session. Use profiles for completely separate browsing environments.
Profile Sync Strategy
You can sync different profiles to different Firefox Accounts:
- Profile "Work": sync with work@company.com Firefox Account → work bookmarks/passwords sync to work laptop
- Profile "Personal": sync with personal@email.com → personal data syncs across personal devices
This keeps work and personal data cleanly separated even on the same machine.
Tab Manager Extension and Firefox Profiles
Firefox extensions like Tab Manager & Session Saver store sessions per profile — your work session tabs stay in the Work profile and personal tabs in the Personal profile. This means if you use profiles, each profile gets its own independent tab history.
Automation: Using Profiles with Playwright/Selenium
For automated testing, start Firefox with a specific profile:
// Playwright: launch with persistent context (profile)
const context = await chromium.launchPersistentContext('/path/to/profile', {
channel: 'firefox',
headless: false,
});
// Or start fresh for clean-slate testing
const browser = await firefox.launch();
const context = await browser.newContext(); // Ephemeral profile
Firefox profiles give you granular control over your browser environment — well worth the setup time for power users and developers.
Top comments (0)