Table of Contents >> Show >> Hide
- 1) The Fastest Method: Use the color Command
- 2) Make It Permanent: Change Colors via Properties/Defaults
- 3) Modern Option: Windows Terminal Color Schemes (If You Use Terminal)
- 4) Bonus: Microsoft ColorTool (Quick Theme Swaps)
- 5) Colorize Output Like a Pro: ANSI Escape Sequences (When Supported)
- 6) Best Color Combos (Readable, Not Rage-Inducing)
- 7) Troubleshooting: When Colors Won’t Change
- Conclusion
- Extra: of Real-World “Experience” Notes & Lessons
If Command Prompt feels like it’s stuck in 1987 (black background, gray text, emotional support cursor), you’re allowed to upgrade its look.
Changing text and background colors in Command Prompt isn’t just cosmeticit can reduce eye strain, make errors pop, and keep you from
accidentally celebrating success in “bright red on bright white” like a malfunctioning holiday sign.
This guide covers the fast one-command method, the “make it permanent” approach, modern Windows Terminal color schemes, and a few
pro-level tricks for colorizing output in scripts. You’ll get practical examples, best-practice combos, and the common gotchas that make
people swear their computer is ignoring them (spoiler: it’s usually one hex digit).
1) The Fastest Method: Use the color Command
Command Prompt has a built-in command named color that changes the console’s foreground (text) and background colors.
You pass it a two-digit hexadecimal attribute:
The first digit sets the background, and the second digit sets the foreground (text). Digits range from 0 to F.
If you choose the same value for both digits, Command Prompt refuses to apply the change (because “invisible text” is a bold UI choice).
Hex Color Cheat Sheet (0–F)
| Hex | Color | Notes |
|---|---|---|
0 |
Black | Classic background |
1 |
Blue | Dark blue |
2 |
Green | Dark green |
3 |
Aqua | Blue-green |
4 |
Red | Dark red |
5 |
Purple | Dark magenta |
6 |
Yellow | Often looks brown-ish on black |
7 |
White | Usually light gray on black |
8 |
Gray | Darker than 7 |
9 |
Light blue | Brighter blue |
A |
Light green | Bright green |
B |
Light aqua | Bright cyan |
C |
Light red | Bright red |
D |
Light purple | Bright magenta |
E |
Light yellow | Bright yellow |
F |
Bright white | High contrast text |
Examples You Can Copy/Paste
Black background + bright green text (retro hacker vibe):
Black background + bright white text (clean and readable):
Blue background + bright white text (bold, high contrast):
White background + black text (the “I’m writing a novel in CMD” look):
Reset to default colors (when your eyes file a complaint):
Pro Tip: Use Color in a Shortcut or Batch File
If you want a specific color scheme every time you open a Command Prompt window, you can put it in a shortcut target or at the top of a batch file.
Example: Start CMD with black background + bright white text, then keep it open:
Example: In a batch file (dev.cmd):
2) Make It Permanent: Change Colors via Properties/Defaults
The color command changes colors for the current session. If you want Command Prompt to open with your preferred text and background
colors every time, set defaults through the window settings.
Change Colors for New Windows (Defaults)
- Open Command Prompt.
- Right-click the title bar (or click the top-left icon in the window).
- Select Defaults (this affects future windows).
- Go to the Colors tab.
- Pick Screen Text and Screen Background.
- Click OK.
Change Colors for the Current Window (Properties)
- Open Command Prompt.
- Right-click the title bar (or click the top-left icon).
- Select Properties.
- Open the Colors tab and choose your colors.
- Click OK.
These menus also let you fine-tune colors using RGB sliders in many Windows builds, which is great if you want “soft charcoal” instead of
“void black.”
3) Modern Option: Windows Terminal Color Schemes (If You Use Terminal)
On Windows 10/11, many people use Windows Terminal (it can host Command Prompt, PowerShell, and WSL in tabs). Terminal supports
full color schemes and profile-based customizationmeaning your Command Prompt tab can look different from your PowerShell tab (because
they definitely have different personalities).
Change the Color Scheme (Settings)
- Open Windows Terminal.
- Open Settings.
- Find your Command Prompt profile (or set defaults for all profiles).
- Choose a Color scheme or set custom foreground/background values.
What this gives you:
- Pre-made schemes (good-looking, readable palettes)
- Per-profile colors (CMD can be subtle; PowerShell can be dramatic)
- More consistent rendering of modern color output
4) Bonus: Microsoft ColorTool (Quick Theme Swaps)
If you like the idea of applying a full color scheme (not just two colors), Microsoft’s ColorTool can help you switch the
Command Prompt palette quickly. This is especially handy when you want a curated scheme that improves readability for code, logs, and long sessions.
Typical usage looks like this (example syntax):
The details depend on where you place ColorTool and which scheme names you have available, but the overall idea is simple:
you choose a scheme, apply it, and your console palette updates.
5) Colorize Output Like a Pro: ANSI Escape Sequences (When Supported)
The color command sets the overall console colors. But what if you want only some text in red (errors), some in green (success),
and everything else normallike a mini dashboard?
That’s where ANSI escape sequences (also called virtual terminal sequences) come in. Modern Windows consoles and Windows Terminal
can interpret these sequences when the right mode is enabled, letting programs (and sometimes scripts) output colored text inline.
A Simple “Red Error / Green OK” Demo (Batch-Friendly Pattern)
Batch files can’t easily type the Escape character directly, but there’s a classic trick to store it in a variable using prompt $E.
Here’s a pattern you can adapt:
Notes:
[32mis green,[31mis red, and[0mresets formatting.- If you see weird characters like
[32mprinted literally, your console session likely isn’t interpreting VT sequences. - Windows Terminal usually handles this smoothly; classic Command Prompt support depends on Windows version/settings.
When ANSI Colors “Don’t Work”
If ANSI sequences print as plain text instead of changing colors, check these common causes:
- You’re using an older Windows console configuration that doesn’t enable virtual terminal processing.
- You’re running in a host that doesn’t interpret VT sequences (some legacy/embedded consoles).
- Your output is being redirected to a file (colors usually don’t make sense in a text file).
If your goal is “colored output for scripts,” Windows Terminal is often the easiest winbecause it’s built for modern terminal behavior.
6) Best Color Combos (Readable, Not Rage-Inducing)
You can technically choose any combination, but your eyeballs will remember your decisions. Here are a few schemes that tend to work well:
High Readability
color 0FBlack background, bright white text (clean and classic)color 07Black background, light gray text (softer for long sessions)
Retro (But Still Practical)
color 0ABlack background, bright green textcolor 0BBlack background, bright aqua text (pleasant “terminal cyan”)
“Look at Me” Mode (Use With Caution)
color 1FBlue background, bright white text (very bold)color F0White background, black text (high contrast, very bright)
Accessibility tip: avoid relying only on red vs. green to communicate meaning, since red-green color blindness is common. If you’re making
a script, consider adding symbols like [!] for errors and [+] for success.
7) Troubleshooting: When Colors Won’t Change
You Used the Same Hex Digit Twice
If you run color 00 or color FF, Command Prompt won’t apply it (that would make text invisible). Pick two different digits,
like 0F or 1E.
Your Shortcut Overrides Your Settings
If you open Command Prompt from a shortcut (Start menu, taskbar, custom link), that shortcut can have its own settings.
Change the shortcut’s Properties, or set Defaults from within Command Prompt as described earlier.
You’re Actually in Windows Terminal (Different Settings)
If your “Command Prompt” is running inside Windows Terminal, the Terminal profile settings can override what you do with classic console defaults.
In that case, adjust the CMD profile’s appearance/colors in Terminal settings.
Conclusion
Changing Command Prompt text and background colors is one of the quickest upgrades you can make to your daily workflow. Use color for instant
results, set Defaults/Properties for permanence, and lean on Windows Terminal when you want modern color schemes and smoother ANSI color output.
Whether your goal is comfort, readability, or making errors scream politely in red, you now have multiple ways to get therewithout turning your
console into a neon accident.
Extra: of Real-World “Experience” Notes & Lessons
Once you start changing Command Prompt colors, you’ll notice something funny: it’s rarely about aesthetics for long. It becomes about speed,
pattern recognition, and not getting tricked by your own tools at 2:00 a.m. when you’re running a “quick test” that somehow becomes an
all-night debugging marathon.
One common “first experience” is going full retroblack background with bright green text (color 0A). It feels cool for about ten minutes,
until you realize bright green can be loud on the eyes in long sessions. A lot of people end up moving to color 0F (bright white on black)
or color 07 (soft gray on black) because it’s easier to scan file paths, commands, and output without feeling like you’re typing inside a
radioactive arcade cabinet. The lesson: your eyes are part of your toolchain. Treat them nicely.
Another very real moment: you run color in one window, it looks perfect, then you open a new Command Prompt andbamit’s back to the default
scheme. That’s when you learn the difference between “session changes” and “default changes.” The color command is fast, but it’s not
permanent unless you bake it into how you launch CMD (shortcut, batch file, or Defaults/Properties settings). This is usually the turning point
where people say, “Fine. I’ll do it the right way,” and finally open the Colors tab like Windows intended.
If you write scripts, the next experience is wanting more than a single global color. You want errors in red, success in green, warnings in yellow,
and maybe headings in cyan. That’s when ANSI/VT color output becomes temptingand sometimes confusing. The first time ANSI codes print literally,
it feels like you’re yelling “TURN RED” at your terminal and it’s replying, “I heard you. Anyway, here are the words TURN RED.” In practice, this
usually means your current console host isn’t interpreting VT sequences, or you’re redirecting output to a place where color can’t apply.
Switching to Windows Terminal often makes this whole category of frustration disappear.
There’s also the “palette surprise” experience: you pick a color combo that looks great for normal output, then you run a tool that uses the console’s
color table and suddenly its highlights look terrible. This is why ColorTool and curated Windows Terminal schemes are popularthey adjust the palette
(the meaning of the 16 colors) in a more balanced way than just picking two colors. The practical takeaway is simple: if you use many CLI tools,
consider a scheme designed for code/log readability, not just personal taste.
Finally, one of the most useful “experienced user” habits is building meaning into color without relying on color alone. A warning isn’t just yellow;
it’s “WARNING:” plus an icon like [!]. An error isn’t only red; it’s “ERROR:” plus an exit code. Color helps you notice faster, but clear
text helps you understand fasterand your future self will thank you when you’re scanning logs like a detective who has had exactly one cup of coffee.