guide · static export
Software

Fix Windows Terminal profiles disappearing after a 25H2 update

Restore your Windows Terminal profiles, color schemes and keybindings after a 25H2 cumulative update wiped the settings file.

by@guidox updated:10/26/26 time:15 min level:Intermediate works on:Windows 11 25H2, Windows Terminal (Store) tools:Windows Terminal, Text editor
TL;DR

Your profiles live in **settings.json** inside the Windows Terminal package folder. Restore it from the automatic **state.json / settings.json.backup**, or rebuild from your dotfiles.

Before you start

Requirements

  • Windows 11 25H2
  • Windows Terminal installed from the Microsoft Store (https://aka.ms/terminal)
  • A text editor (Notepad, VS Code)
Step by step

Instructions

01

Decide which recovery tier applies

Pick the lightest path that recovers what you lost.

Budget tier:    Open settings.json, keep defaults, re-add profiles manually
Sweet spot:     Restore settings.json from the LocalState backup file
No-compromise:  Reinstall Windows Terminal and import settings.json from your dotfiles / cloud
02

What actually matters here

The only file that defines profiles, schemes and keybindings is **settings.json**. Fragment files, elevated profiles and the state file are secondary. If you have your old settings.json anywhere - OneDrive, GitHub, a backup - you are done in two minutes.

Matters:   settings.json
Secondary: state.json (window layout), elevated-state.json
Not a fix: Reinstalling the whole OS, resetting Windows
⚠ warningDo not edit settings.json while Terminal is open with that same file - it can overwrite your changes on close.
03

Open the Terminal LocalState folder

Press **Win + R**, paste the path and press Enter. This is where Windows Terminal keeps settings.json for the Store version.

%LocalAppData%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState
tipIf you use Windows Terminal Preview, the folder name is Microsoft.WindowsTerminalPreview_8wekyb3d8bbwe.
04

Restore settings.json

Look for **settings.json.backup**, **settings.json.old**, or any copy you made. Rename the backup to **settings.json**, overwriting the current one. Open Windows Terminal; your profiles come back immediately. If no backup exists, create a new settings.json by letting Terminal regenerate defaults, then paste your old profile blocks under the "profiles" > "list" array.

copy settings.json settings.json.broken
ren settings.json.backup settings.json
05

Prevent the next loss

Enable Windows Terminal's **Sign in with GitHub** sync (Settings > Startup) if you want cloud sync, or just copy settings.json into a dotfiles repo. A one-line scheduled script that copies the file into OneDrive weekly is enough.

copy "%LocalAppData%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json" "%OneDrive%\Backups\terminal-settings.json"
tipIf you install Terminal via winget, add the backup command to a weekly scheduled task.
06

What to skip

Skip reinstalling Windows Terminal before you have copied settings.json out - an uninstall can purge LocalState. Skip "terminal theme marketplaces" that bundle executables; stick to JSON scheme files you can read. Skip switching to a different terminal emulator just because of one broken update - Windows Terminal is actively maintained on the Microsoft Store page.

Troubleshooting

Common issues

settings.json has JSON errors on launch

Open the file in VS Code - it highlights the exact line. The common culprit is a trailing comma after the last profile.

LocalState folder is empty

Launch Windows Terminal once. It regenerates a default settings.json. Then paste your old profiles back in.

Profiles return but icons are missing

The 'icon' paths point to files that moved. Use a web URL for the icon or copy icons into LocalState and reference them with a full path.

FAQ

Frequently asked

Where is settings.json for the non-Store (unpackaged) version?

Under %LocalAppData%\Microsoft\Windows Terminal\settings.json.

Can I share settings.json between PCs?

Yes. Keep it in a dotfiles repo or OneDrive and symlink it into LocalState.

Does Windows Terminal auto-backup settings?

It writes a .backup file when it detects a schema change, but not every update does. Make your own backup.

How to undo this

Delete settings.json inside the LocalState folder and relaunch Windows Terminal. It will regenerate a clean default settings.json.

Interactive version: checklist, feedback, related guides →

Free · no account needed · tracks your progress