Settings Sync can stop working for a few common reasons: a sign-in issue, a keychain problem on Linux, a conflict between machines, or an incompatibility between Stable and Insiders builds. Most problems are fixable without losing any settings.
This guide walks through the fixes in order from quickest and safest to more involved. Start at the top and work down until sync works again.
Check the sync log
The fastest way to find the cause is to check the Settings Sync log.
Open the Output panel with Ctrl+Shift+U (Windows/Linux) or Cmd+Shift+U (macOS). In the dropdown at the top right of the Output panel, select Log (Settings Sync).
Look for error messages. Common entries include authentication failures, network timeouts, and keychain access errors. If the log mentions a keychain or credential store problem, jump to the keychain section below.
If the error is authentication-related, also check the Account log in the same Output panel dropdown.
Quick reset: turn sync off and on
The simplest fix that works for many intermittent problems is to cycle sync off and back on.
Turn sync off
Click the Manage gear button at the bottom of the Activity Bar. Select Settings Sync is On, then choose Settings Sync: Turn Off. When prompted, do not check the checkbox to clear cloud data.
Turn sync back on
Select Backup and Sync Settings from the Manage gear menu. Sign in with the same account you used before. Your settings are restored from the cloud.
If you use the same account on multiple machines, check that sync is working on another machine first. If one machine syncs fine and another does not, the problem is local to that machine.
Verify what is configured to sync
It is possible Settings Sync is working but the categories you expect are not enabled.
Open the Command Palette and run Settings Sync: Configure. Make sure the checkboxes for the categories you want are selected:
- Settings
- Keyboard Shortcuts
- User Snippets
- User Tasks
- UI State
- Extensions
- Profiles
If Profiles is unchecked, your profiles are not syncing even though everything else is. Check it and sync resumes for profiles too.
Also check the Manage gear menu. If it says Settings Sync is On, sync is active. If it says Backup and Sync Settings, sync is off.
Resolve merge conflicts between machines
If you set up sync on a second machine and your settings did not arrive, VS Code may be waiting for you to resolve a conflict.
When you sign in on a second machine, VS Code shows a Merge or Replace dialog. If you closed it without choosing, or if conflicts appear later, check for unresolved conflicts.
Run Settings Sync: Show Synced Data from the Command Palette. Look at the Remote backup view for the settings you are missing. If you see them there but not locally, a merge may have failed.
To force a clean sync from the cloud, turn sync off, then turn it back on and choose Replace Local when prompted. This overwrites your local settings with what is in the cloud.
Fix Stable and Insiders incompatibility
VS Code Stable and Insiders use separate sync services by default. If you linked them and sync suddenly stopped working on Stable, the cause is likely a data format incompatibility.
This happens when the Insiders build introduces a new data format that the older Stable build cannot read. Settings Sync disables itself on Stable to prevent data corruption.
The fix is to update VS Code Stable to the latest version. Open the Command Palette and run Code: Check for Updates. After updating, turn Settings Sync back on.
If you want to unlink Stable and Insiders, turn sync off on both, then turn it back on each using its own default sync service. They will stop sharing data.
Fix Linux keychain issues
On Linux, Settings Sync stores authentication tokens in the system keyring. If the keyring is locked, misconfigured, or missing, sync fails. This is the most common cause of sync problems on Linux.
Diagnose the keychain
Start VS Code from the terminal with verbose logging to see which keyring backend is in use:
code --verbose --vmodule="*/components/os_crypt/*=1"Look near the top of the output. A working setup shows the detected desktop environment and the selected backend. If the detection fails or the backend is wrong, the keyring is not configured correctly.
GNOME or Unity
The most common error is "Cannot create an item in a locked collection." This means your Login keyring is locked.
Open Seahorse (Passwords and Keys) from your applications menu. Under Passwords, find Login. If it shows a lock icon, right-click and select Unlock. Make sure the keyring unlocks automatically when you log in.
KDE
KDE 6 is not fully supported yet. As a workaround, force VS Code to use kwallet5 by setting the password store.
Open KWalletManager and make sure the default kdewallet is open. If it is closed, open it.
Configure the password store
If your desktop environment is not detected correctly, manually set the keyring backend. The recommended setup is gnome-libsecret, which works with any keyring that implements the Secret Service API (gnome-keyring, kwallet5, KeepassXC).
First, install gnome-keyring if it is not already present. On Ubuntu or Debian, run sudo apt install gnome-keyring. On Fedora, run sudo dnf install gnome-keyring.
After installing, open the Command Palette, run Preferences: Configure Runtime Arguments, and add this to argv.json:
"password-store": "gnome-libsecret"Restart VS Code and try sync again.
| password-store value | When to use |
|---|---|
gnome-libsecret | Recommended. Works with gnome-keyring, kwallet5, KeepassXC |
kwallet5 | Force KDE kwallet5 specifically |
basic | Last resort. Insecure, stores keys in memory only |
The basic option is not recommended. It uses an in-memory key based on a hardcoded string, which any process could theoretically decrypt. Only use it if no other keyring works and you accept the security risk.
Flatpak
If you installed VS Code as a Flatpak, grant D-Bus permissions to the keyring:
flatpak override --user --talk-name=org.kde.kwalletd5 --talk-name=org.freedesktop.secrets com.visualstudio.codeRestore settings from backups
If settings were lost or overwritten, VS Code keeps backups.
Run Settings Sync: Show Synced Data from the Command Palette. Two views are available:
- Synced Machines: Shows every machine connected to your sync account. You can disable sync on a machine from here.
- Synced Data (Remote) and Synced Data (Local): Shows versioned backups of each category.
To restore from a backup, open the relevant view, find the version you want, and select the restore action. Local backups are kept for 30 days. Remote backups keep the latest 20 versions of each resource.
You can also open the local backups folder directly with Settings Sync: Open Local Backups Folder. The folder is organized by preference type with timestamped JSON files.
Switch to a different account
If your sign-in is not working, switch accounts.
Turn sync off with Settings Sync: Turn Off. If you want to keep your existing cloud data, do not check the clear checkbox. Turn sync back on and sign in with a different Microsoft or GitHub account.
Note that GitHub Enterprise accounts are not supported for Settings Sync.
Clear cloud data as a last resort
If nothing else works and you are willing to start fresh, clear your cloud data.
Turn sync off and check the Clear All Cloud Data checkbox. This permanently deletes your synced data from the server. When you turn sync back on, it is like signing in for the first time.
Before doing this, export any settings or profiles you want to keep. See /vscode/how-to-export-import-and-share-a-vs-code-profile to save profiles locally, and /vscode/how-to-turn-on-vs-code-settings-sync-and-choose-what-syncs if you need to review how to set sync up again.
Rune AI
Key Insights
- Check the Log (Settings Sync) output panel first for error messages.
- Turn sync off and on without clearing cloud data as a quick reset.
- On Linux, most sync failures are keychain issues: install gnome-keyring and set password-store to gnome-libsecret.
- Restore lost settings from local or remote backups via Settings Sync: Show Synced Data.
- Check Settings Sync: Configure to make sure the right categories are enabled.
Frequently Asked Questions
Will turning Settings Sync off and on delete my settings?
Why did Settings Sync disable itself automatically?
Can I sync settings without using the OS keychain?
Conclusion
Start with the simplest fixes first: check the sync log, verify the sync configuration, and turn sync off and on. For Linux users, keychain configuration is the most common cause. Restore from backups if settings get lost, and only clear cloud data as a last resort.
More in this topic
How to Use VS Code with WSL 2 on Windows
Run VS Code connected to Windows Subsystem for Linux so you can develop in a full Linux environment with native tools, terminals, and debugging, all from Windows.
20 Best VS Code Extensions for Web Developers in 2026
Twenty carefully chosen VS Code extensions every web developer should know. Covers formatting, linting, frameworks, debugging, Git, and developer experience.
How to Install, Disable, Update, and Uninstall VS Code Extensions
Learn how to install, disable, update, and uninstall VS Code extensions from the Marketplace and the command line. Step-by-step instructions for every action.