Firefox Sync is Mozilla's free browser synchronization service. It's end-to-end encrypted — Mozilla cannot read your synced data. But it's more than just "sync bookmarks across devices." Here's a technical look at what it does, how the encryption works, and the less-known features.
What Firefox Sync Syncs
Sync covers:
- Bookmarks — full folder structure and tags
- History — up to 60 days of browsing history
- Passwords — saved logins (encrypted)
- Open Tabs — see open tabs from other devices without sending them
- Extensions — install list syncs (not extension data)
- Preferences — some about:config settings (not all)
- Address Bar settings — search engine choices
What it doesn't sync:
- about:config overrides (most of them)
- Extension data (extension-specific preferences)
- Cookies (intentionally — security)
- Firefox Containers configuration
The Encryption Model
Firefox Sync uses end-to-end encryption:
- Your Firefox Account (FxA) password is used to derive an encryption key via PBKDF2
- Your data is encrypted locally before being uploaded
- Mozilla's servers store only ciphertext — they cannot decrypt your data
- The key never leaves your device
This is different from Chrome Sync, which sends data to Google's servers where Google can technically access it (though it's also encrypted in transit and at rest).
The trade-off: if you forget your FxA password and don't have a recovery key, your synced data is permanently lost — Mozilla can't recover it.
Setting Up Firefox Sync
Settings → Sync → Sign In (or create account).
Firefox Account (FxA) is required. FxA is free and works with any email address.
Recovery Key: after signing in, Settings → Sync → Firefox Account → More options → Recovery Key. Generate and save this key. If you lose your password, the recovery key lets you decrypt your data. Store it securely (1Password, Bitwarden, or printed paper).
Synced Tabs: The Best Feature
Other devices' open tabs appear in:
- Address bar: type part of a URL and it suggests matching tabs from other devices
- "Firefox View" (the tab icon with a Fox in Firefox 106+) → Tabs from Other Devices
- History sidebar → Synced Tabs section
This is the fastest way to move work between devices without emailing yourself links. "I was reading this on my laptop, pull it up on phone" becomes instant.
Mobile use case: on Android/iOS Firefox, synced tabs show your desktop browser's open tabs. Continue researching on mobile during commute.
About: URLs for Sync Debugging
about:sync-log — shows detailed sync logs. If sync isn't working, this log shows error messages, sync attempts, and conflicts.
about:sync — shows sync status (connected, last sync time, engine states).
about:accounts — manage the Firefox Account sign-in.
Selective Sync
You can enable/disable specific data types. Settings → Sync → Choose what to sync:
- Deselect History if you don't want browsing history syncing (e.g., work computer browsing to stay separate)
- Deselect Open Tabs if you want tab privacy per device
- Keep Bookmarks and Passwords enabled — these are most valuable
Device Management
Settings → Sync → Manage Account → Device Manager (or visit accounts.firefox.com).
Remotely disconnect devices (useful if you no longer use an old device or need to remove a stolen device). This revokes the sync key on that device.
Firefox Sync API for Extensions
Extensions can read/write data via the Sync storage API:
// Store data in sync (syncs across devices)
await browser.storage.sync.set({
userPreferences: { theme: 'dark', fontSize: 16 }
});
// Read synced data
const { userPreferences } = await browser.storage.sync.get('userPreferences');
// Quota: storage.sync has a per-item limit of 8KB
// and a total limit of ~100KB
This is how extension settings sync between devices. Exceeding the quota silently fails — always check for quota errors in production extensions.
Firefox Relay (Related Service)
Firefox Relay is a separate Mozilla service that creates email aliases (not part of Sync). If you sign up for services using a Firefox Relay address, your real email stays private. Breach notifications show Relay addresses, not your real one.
Free tier: 5 email aliases.
Premium: unlimited aliases, custom domain.
Available as a Firefox extension from AMO.
Troubleshooting Sync
Sync is slow/not working:
- Check
about:sync-logfor errors - Settings → Sync → Sync Now (force manual sync)
- Disconnect and reconnect (Settings → Sync → Sign Out → Sign back in)
Duplicate bookmarks after resync:
Occurs when syncing after a long offline period. Firefox tries to merge local and remote states. Clean up duplicates via Bookmarks Library → sort by Name, manually delete duplicates.
Password conflicts:
If the same password was changed on two devices before sync, Firefox keeps both — you see duplicates. Delete the older one.
Containers not syncing:
Containers use extension storage, not Firefox Sync. The Container Tabs extension's data syncs via browser.storage.sync, but Firefox's built-in container system doesn't sync across devices (as of Firefox 130).
Privacy Comparison: Firefox Sync vs. Google Sync
| Feature | Firefox Sync | Google Chrome Sync |
|---|---|---|
| Encryption | E2E (Mozilla cannot read) | Encrypted, but Google can access with passphrase disabled |
| Account required | Firefox Account (Mozilla) | Google Account |
| Password recovery | Recovery key required | Google account recovery |
| Password manager | Built-in, syncs | Google Password Manager |
| Open source | Yes (sync protocol published) | Partially |
Top comments (0)