Free tools Windows power users keep installed
One-click scans. No signup required.
The most reliable way to customize Windows Terminal is to use Settings for quick changes, then use settings.json for repeatable defaults, profile-specific behavior, keyboard actions, and layouts. Start by identifying whether your copy is the packaged stable build, packaged Preview build, or an unpackaged install; each stores its configuration in a different place.
This guide builds a practical setup in layers: application appearance, shared profile defaults, individual shell profiles, and workflow actions such as panes and startup layouts. You can apply only the sections that solve a real annoyance instead of changing every option at once.
As an Amazon Associate I earn from qualifying purchases.
Choose the right configuration route first
Windows Terminal exposes the same configuration through two routes. The Settings interface is safest for one-off changes because controls validate values and show the available choices. The JSON file is better when you want to copy a setup to another machine, review all changes in one place, apply a value to every profile, or use features that are not exposed in the graphical interface.
| Route | Best use | Trade-off |
|---|---|---|
| Settings UI | Quick changes to startup, profiles, appearance, and actions; useful when you want visible controls and previews. | Many repeated settings are slower to maintain and harder to copy or review as a single configuration. |
settings.json |
Precise edits, shared defaults, custom themes, reusable profile definitions, and deliberate key bindings. | JSON syntax and Windows paths require care, and the correct file location depends on how Terminal was installed. |
Open Settings without hunting for the file
- Launch Windows Terminal.
- Open the tab menu and choose Settings. In some releases, the menu is opened from the down-arrow beside the new-tab button.
- Use the category list for ordinary changes. The Startup area controls launch behavior, Profiles contains shared defaults and individual shells, and profile Appearance contains visual settings.
- When you need the raw configuration, use the option in Settings that opens the JSON file. This avoids editing the wrong installation’s file.
Find the file for your installation type
Microsoft documents separate locations for the three supported installation routes. The package identity is part of the path, so copying a path for one route into another route will not work.
#1 Best Overall
| Installation route | Typical settings file | Important qualification |
|---|---|---|
| Packaged stable (for example, the Store release) | %LOCALAPPDATA%PackagesMicrosoft.WindowsTerminal_8wekyb3d8bbweLocalStatesettings.json |
Use this only for the stable packaged identity. |
| Packaged Preview | %LOCALAPPDATA%PackagesMicrosoft.WindowsTerminalPreview_8wekyb3d8bbweLocalStatesettings.json |
Preview has a different package folder and can expose features before stable. |
| Unpackaged installation | %LOCALAPPDATA%MicrosoftWindows Terminalsettings.json |
Applies to builds installed outside the packaged Store identity, such as some GitHub, Windows Package Manager, Chocolatey, or Scoop routes. |
If you are unsure which route you have, open Settings from the running app and use its JSON link rather than guessing. Windows Terminal can also be installed from the Store, GitHub, Windows Package Manager, Chocolatey, or Scoop; a GitHub build does not automatically update itself according to Microsoft’s installation guidance.
Do not edit defaults.json
Hold Alt while opening Settings to display the generated defaults.json view. It is useful for discovering available properties and their documented defaults, but Microsoft warns that edits to this generated file are ignored. Put your changes in settings.json instead.
Understand the settings hierarchy
Most confusing behavior comes from putting a valid setting at the wrong scope. Think of Terminal as three layers:
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →- Application settings: affect the Terminal window as a whole, including the app theme and tab behavior.
profiles.defaults: shared profile appearance and behavior inherited by every shell.- Individual profile entries: overrides for one shell, such as its command line, starting directory, icon, or tab title.
An individual profile value wins over a value inherited from profiles.defaults. Keep genuinely universal choices—such as a font size that is readable everywhere—in the defaults block. Keep shell-specific paths and icons in that shell’s profile entry.
A minimal layered example
The following fragment illustrates the placement of common settings. It uses escaped backslashes because JSON treats a single backslash as an escape character.
{"profiles":{"defaults":{"fontFace":"Cascadia Mono","fontSize":12,"cursorShape":"bar"},"list":[{"name":"PowerShell work","commandline":"pwsh.exe","startingDirectory":"C:\Work","tabTitle":"Work PS","icon":"C:\Work\icons\powershell.png"}]}}
Here, every profile receives the font, size, and cursor shape. Only the named PowerShell profile starts in C:Work, uses a custom tab title, and displays the selected icon. If a later profile overrides fontSize, that profile uses its own value.
Rank #2
- Used Book in Good Condition
How to customize Windows Terminal profiles
Profiles are the practical boundary between shells. Microsoft includes Windows PowerShell, Command Prompt, and Azure Cloud Shell profiles by default. Installed Windows Subsystem for Linux distributions are automatically given profiles as they become available.
Set the default shell and launch behavior
- Open Settings and select Startup.
- Choose the profile that should open when a new Terminal window starts. Pick the shell you use most often rather than the one that happens to be listed first.
- Decide whether Terminal should open a single tab, restore a previous session where supported, or use a configured startup layout. The available controls vary by release.
- Save the change, open a new window, and confirm that the expected shell appears before changing more options.
Give each profile a clear identity
Open Profiles, select a shell, and edit its general properties. The useful fields are:
- Name/display name: the label shown in the profile menu.
- Command line: the executable and arguments used to start the shell or tool.
- Starting directory: the folder opened when that profile launches. In JSON, use escaped backslashes such as
C:\Projects\api. - Icon: a path to an image that makes the profile recognizable in the tab menu.
- Tab title: the text shown on a tab, useful when several tabs use similar shells.
- Order: the position of the profile in the menu and profile picker.
Use names that describe the task, not only the executable. “API PowerShell” and “Linux build” are easier to distinguish than two entries both labeled “PowerShell.” Keep the command line unchanged when you only need a different working directory; changing both at once makes troubleshooting harder.
Separate workspaces with dedicated profiles
A dedicated profile is worthwhile when the same shell always belongs to a particular repository, server environment, or toolchain. Give it a task-focused name, set its starting directory, and assign an icon or tab title. This turns a repeated sequence of typing a directory command and identifying a tab into a single menu selection.
Make the interface readable before making it decorative
Set the application theme
Application appearance applies to the Terminal window rather than one shell. The theme setting accepts system, dark, light, or a custom theme, with system documented as the default. Choose system if Terminal should follow Windows light/dark mode; choose a fixed value when a consistent appearance matters more than operating-system changes.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minutePC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11- Open Settings and go to the application appearance area.
- Set the theme to System, Dark, or Light.
- Close and reopen Settings if the preview does not immediately reflect the change, then check a normal tab and a pane for adequate contrast.
Use profile appearance for visual separation
Profile appearance controls the shell’s colors and typography. Settings placed in profiles.defaults apply to all profiles, while a profile’s own appearance values override them.
Rank #3
- Color scheme: select a scheme with enough contrast between command text, prompts, and output. Use distinct schemes for shells you commonly confuse.
- Font face and size: choose a monospaced font that keeps punctuation distinct. Increase size until long sessions are comfortable rather than choosing a value solely because it fits more columns.
- Cursor shape and color: a bar, underscore, or filled block can make the active insertion point easier to locate. Choose a cursor color that remains visible on both light and dark backgrounds.
- Background: a solid color is easiest to read. If you use an image, reduce its visual competition with text by adjusting its opacity and choosing a low-detail image.
- Opacity and acrylic effects: transparency can reveal another window beneath Terminal, but it can also reduce contrast. Treat it as an optional effect, not a readability improvement.
Apply a shared font and cursor in profiles.defaults, then override only the color scheme or background for profiles that need stronger identification. This keeps the configuration small and prevents one profile from drifting away from the rest.
Configure custom window and tab themes in JSON
Windows Terminal supports custom themes that can define window, tab-row, tab, and color components. Microsoft marks the theme documentation as Preview, and these settings are configured directly in settings.json rather than through every control in the graphical interface.
- Back up
settings.jsonbefore adding a custom theme. - Open the theme section described by the current Microsoft documentation and add a uniquely named theme object.
- Set only the components you understand, then select the custom theme through the application theme setting.
- Restart Terminal and inspect inactive tabs, active tabs, pane separators, and text contrast. Preview features can change between releases.
Do not assume that a theme property available in the JSON schema also has a matching Settings control. If a custom theme disappears after an update, compare the file with the current documentation and remove obsolete properties rather than editing generated defaults.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Speed up repeated work with actions and key bindings
Actions map a command to a key combination. Open the command palette with Ctrl+Shift+P to search for commands without memorizing every shortcut. The Actions page in Settings lets you inspect existing bindings and add or change mappings.
Choose bindings that do not fight your shell
- Open Settings and select Actions.
- Search for the action you want, such as opening a new tab, moving focus, splitting a pane, or searching scrollback.
- Assign a key combination that is not already used by your shell, editor, remote session, or accessibility software.
- Save, open a normal profile, and invoke the action once. Then test it inside a pane and while a different profile is active.
Microsoft’s documented examples include Ctrl+Shift+P for the command palette and Alt+Shift++ or Alt+Shift+- for vertical or horizontal pane splits. Bindings can change as Terminal evolves, so check the live Actions list in your release before publishing a large shortcut chart or relying on a shortcut you have not verified.
Keep JSON actions understandable
When you edit actions manually, keep each action on its own object and use the action names shown in the current documentation. A representative split binding has this shape:
Rank #4
{"actions":[{"command":{"action":"splitPane","split":"vertical"},"keys":"alt+shift++"},{"command":{"action":"splitPane","split":"horizontal"},"keys":"alt+shift+-"}]}
If your installed version displays a different action schema, use the generated action entry from Settings as the model. A syntactically valid object with an obsolete action name will not perform the operation you expect.
How to split panes and move between them
Splitting panes lets you keep related commands visible in one tab, such as a server process beside its logs or a build shell beside a test shell. Use the documented split shortcuts, the command palette, or an action you assign yourself.
Split vertically or horizontally
- Focus the pane that should remain visible after the split.
- Press Alt+Shift++ for a vertical split or Alt+Shift+- for a horizontal split when those defaults are active.
- Start the desired profile in the new pane, or use the profile picker if your version presents one during splitting.
- Resize the divider by dragging it. Keep enough width for prompts and error messages; a narrow pane is counterproductive for long commands.
Move focus without touching the mouse
Terminal provides configurable moveFocus actions for left, right, up, and down movement. Assign those directions to a consistent set of keys, then use them to jump among panes. The exact default bindings can differ, so inspect Actions and the current pane documentation before changing them.
When a shortcut is ignored, first click the target pane and retry. If it still fails, search Actions for duplicate assignments, remove the conflict, and test the binding in a fresh window.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Design a startup layout that matches the task
Startup settings determine what appears when a new Terminal window opens. A single profile is simplest for focused work; multiple tabs or panes are useful when the same group of shells is opened repeatedly.
Use the Settings UI for a simple startup choice
- Open Settings > Startup.
- Choose the default profile and the launch mode offered by your release.
- If your version exposes startup actions or a layout editor, add only the tabs and panes you need every day.
- Open a new window and verify profile order, working directories, and pane orientation.
Do not create a large layout merely because Terminal can display one. Every extra pane consumes width and attention. A reliable two-pane arrangement is usually easier to maintain than a grid that leaves each shell too small to read.
Best Value
- Used Book in Good Condition
Match the layout to a repeatable workflow
- Web or API development: one pane for the application process, one for tests or logs, and a separate tab for version-control commands.
- Remote administration: one tab per environment with unmistakable names and colors; avoid placing production and test shells beside each other without visual differences.
- Linux tooling on Windows: a WSL profile with its project directory, plus a Windows shell profile for file-management or build commands that must run on the host.
Three practical customization recipes
A consistent multi-shell setup
- Set the application theme to System so it follows Windows.
- In
profiles.defaults, set one readable font, size, and cursor shape. - Give PowerShell, Command Prompt, Azure Cloud Shell, and each WSL distribution distinct color schemes.
- Set a descriptive tab title for each profile and confirm that the titles remain recognizable when several tabs are open.
A project-focused profile
- Duplicate or add a profile entry for the shell you already use.
- Change its display name to the project or role, such as “Billing API PowerShell.”
- Set
startingDirectoryto the project folder with escaped backslashes. - Assign an icon and tab title, then make only this profile’s color scheme different from the shared default.
A pane-oriented operations setup
- Choose a default profile that has access to the commands used for the operation.
- Bind vertical and horizontal splits to keys you can press with one hand while keeping the other on the keyboard.
- Configure directional
moveFocusactions for the four pane directions. - Open the command palette and search for actions instead of adding a shortcut for an operation you use only occasionally.
Verify the configuration before depending on it
Use a short verification loop after every meaningful change. This catches wrong-file and wrong-scope problems before they interrupt a real task.
- Open a new Terminal window and confirm the intended default profile.
- Open every customized profile and check its command line, starting directory, icon, and tab title.
- Read several lines of normal output and an error message to verify contrast, font size, cursor visibility, and transparency.
- Split a tab both vertically and horizontally, move focus in every direction, and close a pane.
- Open the command palette with Ctrl+Shift+P and confirm that your custom actions appear or that conflicting keys have been removed.
- Close and reopen Terminal to ensure the settings persist.
Fix common Windows Terminal customization problems
My changes have no effect
The most likely cause is editing the wrong installation’s file. Check whether the running copy is stable packaged, Preview packaged, or unpackaged, then open its JSON file from Settings. Also confirm that you edited settings.json, not the generated defaults.json, whose changes are ignored.
Terminal reports invalid JSON
Look for a missing comma, an extra comma after the final property, mismatched braces, or an unescaped backslash in a Windows path. Restore the last working copy, make one change, save, and reopen Settings. Keep paths such as C:\Users\Sam in JSON rather than writing single backslashes.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Scan for outdated or missing drivers - takes under a minute3Clear out junk files and repair common Windows errorsA profile starts in the wrong folder
Check the profile’s own startingDirectory first; it overrides the shared default. Make sure the directory exists and that the path is quoted and escaped. If the profile launches a shell that changes directories during startup, inspect that shell’s startup script as a separate cause.
A shortcut does nothing
Open Settings > Actions and search for the key combination. Remove duplicate bindings, check that the action name matches your installed version, and test outside an application that may capture the same keys. Use the command palette as a fallback while diagnosing the binding.
The interface looks attractive but is hard to read
Reduce opacity, remove a busy background image, increase font size, or choose a higher-contrast color scheme. Check inactive tabs and pane borders as well as the active prompt. A profile that is instantly recognizable but makes error text difficult to read needs a readability change, not another decorative effect.
A custom theme breaks after an update
Custom themes are documented as Preview and can change between releases. Compare the theme object with the current documentation, remove properties that are no longer recognized, and keep a backup of the last working file. Do not copy edits into generated defaults.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Keep the setup maintainable
Make one deliberate change at a time and keep a dated backup of settings.json before large edits. Prefer shared defaults for genuinely shared behavior and profile overrides for exceptions. Use descriptive names and avoid duplicate profiles that differ only by an invisible setting. When moving to another computer, copy the intentional parts of the JSON rather than blindly replacing the entire file; package-specific paths, icons, and installed WSL distributions may not exist there.
The result should be measurable in ordinary use: the correct shell opens, the correct folder is ready, profiles are recognizable at a glance, panes can be reached without hunting, and text remains comfortable to read. If a customization does not improve one of those outcomes, leave the documented default in place.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

