How to Apply a Theme from Windows Terminal Themes to Windows Terminal

Updated

You apply a theme from windowsterminalthemes.dev by copying its color scheme JSON, pasting it into the schemes array in Windows Terminal's settings.json, then referencing that scheme's name in your profile or defaults. This works for any theme on the site, and the change takes effect as soon as you save the file — no restart required in most recent versions of Windows Terminal.

What you need before starting

  • Windows Terminal installed (any recent version that supports color schemes).
  • Access to settings.json. Open Windows Terminal, click the dropdown arrow, and choose Settings. In current versions this opens the Settings UI; use Open JSON file (bottom-left) to edit the raw file.
  • A theme you like from windowsterminalthemes.dev. The site lists hundreds of options such as Dracula, GruvboxDark, Catppuccin Mocha, One Half Dark, and Nord-style palettes, with a live preview of terminal output and a codeblock preview.

Step 1: Copy the color scheme

  1. Go to windowsterminalthemes.dev.
  2. Use Select dark themes or Select light themes to filter, then pick a theme from the list (for example, 3024 Night or Dracula).
  3. Copy the color scheme JSON the site provides for that theme.

The site shows a preview of how the theme looks in a terminal and in a codeblock, so you can judge contrast before committing. Note that the page requires JavaScript to run — if the theme list or preview doesn't load, enable JavaScript in your browser.

Step 2: Paste it into settings.json

Open settings.json and find the "schemes" array. It looks like this:

"schemes": [
    {
        "name": "Existing Scheme",
        "background": "#000000",
        ...
    }
],

Paste the copied scheme as a new object inside that array, separated from the previous entry by a comma:

"schemes": [
    {
        "name": "Existing Scheme",
        ...
    },
    {
        "name": "3024 Night",
        "background": "#090300",
        "foreground": "#a5a2a2",
        "cursorColor": "#a5a2a2",
        "selectionBackground": "#4a4543",
        "black": "#090300",
        ...
    }
],

Keep the "name" value exactly as the theme provides it — you'll reference it in the next step, and a mismatch means the scheme won't be found.

Step 3: Point a profile (or all profiles) at the scheme

To apply the theme to one profile, add colorScheme to that profile:

{
    "name": "Windows PowerShell",
    "colorScheme": "3024 Night"
}

To apply it everywhere, put it in "defaults" instead:

"defaults": {
    "colorScheme": "3024 Night"
}

defaults applies to every profile unless a profile overrides it with its own colorScheme.

Step 4: Save and verify

Save settings.json. Windows Terminal reloads the file automatically, so the new colors should appear immediately. If nothing changes:

  • Check for JSON errors. A missing comma or stray bracket breaks the whole file. Windows Terminal usually shows an error and offers to open the file for repair.
  • Confirm the scheme name matches. The string in colorScheme must match the name field in the scheme object character for character, including capitalization.
  • Verify the scheme is inside schemes. A scheme pasted outside the array is ignored.
  • Restart if needed. Older builds may require closing and reopening the terminal.

Choosing a theme

The site's filters and previews are the practical way to decide. Dark themes suit low-light environments and are the majority of the catalog; light themes work better in bright rooms or for projection. Use the codeblock preview to check whether syntax colors stay readable, and the terminal preview to check foreground/background contrast. Themes like Dracula, GruvboxDark, and Catppuccin variants are widely used and tend to have well-tested contrast, but the right pick depends on your display and preference.

Common pitfalls

  • Copying only part of the JSON. The scheme needs all color keys to render correctly; copy the full block.
  • Editing the Settings UI instead of JSON. The UI can change colors per profile, but adding a named scheme is done in settings.json.
  • Duplicate scheme names. Two schemes with the same name cause unpredictable results — rename one.
  • Assuming the site installs anything. windowsterminalthemes.dev is a browse-and-copy catalog; you apply themes manually through settings.json.