Windows 11 terminal freezing on launch is typically caused by corrupted user configuration files, blocked execution policies, or conflicts with third-party shell extensions. Clearing the local cache and resetting settings often resolves the hang without affecting your custom configurations if you proceed carefully.
Understanding the Root Cause
When the Windows Terminal or PowerShell hangs during startup, the application is usually stuck trying to read a specific file that has become unreadable or malformed. The most common culprit is the
settings.json file located in the user profile directory. If this file contains invalid JSON syntax, it prevents the terminal from initializing its UI components, leading to an infinite loading state. Another frequent cause is the presence of stale cache files that store outdated metadata about profiles or fonts. These caches can become inconsistent after a system update or a sudden shutdown, causing the launcher to retry operations indefinitely. Additionally, group policy restrictions or antivirus software interfering with the execution of PowerShell scripts can block the initialization sequence entirely.
Step-by-Step Troubleshooting Guide
Follow these steps to restore normal functionality. Start with the least invasive methods before moving to more drastic measures.
1. Reset the Terminal Settings
If your terminal is frozen, you cannot access the settings menu through the UI. You must manually reset the configuration file. First, close any running instances of Windows Terminal or PowerShell. Navigate to your user profile folder by pressing
Win + R, typing
%LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState, and hitting Enter. Look for a file named
settings.json. Rename this file to
settings.json.backup. This action forces Windows Terminal to generate a fresh, default configuration file upon next launch. Your previous customizations will be lost, but this is the fastest way to determine if the config file is the issue.
2. Clear the Local Cache
Corrupted cache data is a primary reason for persistent freezes even after a settings reset. In the same
LocalState directory mentioned above, delete the following folders if they exist:
Deleting these files removes temporary data that might be causing I/O bottlenecks. When you restart the terminal, it will rebuild these structures from scratch using the new default settings. This process is safe and does not affect your saved passwords or bookmarks stored in other locations.
3. Check Execution Policies
Sometimes, PowerShell itself fails to start due to restrictive execution policies. Open Command Prompt as Administrator and run
powershell.exe -ExecutionPolicy Bypass. If this launches successfully, the issue is likely related to script execution rights rather than the terminal UI. To fix this permanently, you may need to adjust the policy using
Set-ExecutionPolicy RemoteSigned. For more details on handling internal errors, refer to our guide on
Powershell (Win) Stopped Working: Win32 Internal Error.
4. Verify PATH Variable Updates
If you recently updated your system or installed new tools, changes to the
PATH environment variable might not be detected immediately. Restarting the computer ensures that all processes pick up the new environment variables. If the freeze persists, check for conflicting entries in your path that point to non-existent directories. Our article on
Windows 11: Changes to PATH Variable Not Detected After Terminal Restart provides additional insights into managing environment variables effectively.
Advanced Diagnostics
If the standard fixes do not work, you may need to inspect the registry or event logs. Use PowerShell commands like
Get-Item and
Test-Path to verify the existence of critical configuration paths. This helps identify if permission issues are blocking access to specific directories. Always backup your
settings.json before making manual edits to avoid permanent loss of preferences.
Frequently Asked Questions
Will deleting the cache remove my custom themes?
No, deleting the cache folder only removes temporary runtime data and logs. Your custom themes and profiles are stored in
settings.json, which remains untouched unless you explicitly rename or delete that specific file.
How do I backup settings.json before resetting?
Simply copy the
settings.json file from the
LocalState folder to your desktop or another safe location. This creates a backup that you can restore later if the new default settings do not meet your needs.
Can antivirus software cause the terminal to freeze?
Yes, some antivirus programs scan every executable launched by the terminal, causing significant delays. Adding an exclusion for the Windows Terminal executable and its associated directories can resolve this performance bottleneck.
What if the terminal still hangs after clearing the cache?
If the issue persists, try reinstalling Windows Terminal via the Microsoft Store. Corrupted application binaries can sometimes survive cache clears, requiring a full repair or reinstallation to fix.
Is it safe to edit settings.json manually?
It is safe provided you maintain valid JSON syntax. Always validate your changes using a JSON linter before saving, as a single missing comma can break the entire configuration and cause launch failures.