Understanding Minecraft color codes and the § symbol
Minecraft uses a simple but powerful formatting system for colored and styled text. The section sign (§), also called the Minecraft color symbol, is the core of this system. Place § followed by a single character to change how subsequent text is displayed. The 16 color codes (§0 through §f) map to a fixed palette ranging from black to white, and the 6 formatting codes (§k through §r) add effects like bold, italic, and the iconic obfuscated/magic text.
This formatting works across both Java and Bedrock editions, though with key differences. Java Edition supports custom hex colors (#RRGGBB) in JSON text components since version 1.16, enabling millions of unique colors and smooth gradients. Bedrock Edition supports the 16 built-in colors but does not support §n (underline) or §m (strikethrough), and hex colors are not available.
Minecraft color codes by number: the full list
The colors are assigned to hex digits 0–9 and letters a–f. The numbers 0–9 cover black, dark blue, dark green, dark aqua, dark red, dark purple, gold, gray, dark gray, and blue. The letters a–f cover green, aqua, red, light purple, yellow, and white. Each color has an official hex value — for example, §a (green) is #55FF55 in Java Edition. These are the same colors used in chat, signs, books, item names, and server MOTDs across all Minecraft versions.
All Minecraft formatting code effects
| Code | Effect | Works in | Notes |
|---|---|---|---|
§k | Obfuscated (magic) | Java & Bedrock | Rapid random character cycling, same-width characters |
§l | Bold | Java & Bedrock | Wider and heavier text |
§m | Strikethrough | Java only | Not supported on Bedrock Edition |
§n | Underline | Java only | Not supported on Bedrock Edition |
§o | Italic | Java & Bedrock | Slanted text |
§r | Reset | Java & Bedrock | Clears all colors and formatting |
How to use Minecraft color codes step by step
- Decide where you need colored text: chat, a sign, a book, server MOTD, or a plugin config.
- Pick a color from the reference table above — note its code (e.g.
§6for gold). - Type the code prefix (
§,&, or\u00A7depending on context) followed by the code letter, then your text. - Add formatting codes after the color code if needed — always color first, then format. For example:
§6§lgives bold gold text. - Use
§rto reset when you want to change color or stop formatting. - Test your text in the Text Generator tab above before using it in-game.
Java vs Bedrock color code differences
Both editions use the same §0–§f codes, but there are practical differences that matter. Java Edition allows § in server.properties (as \u00A7), JSON commands, data packs, and resource packs. Bedrock Edition allows § directly in signs, books, anvils, chat, and resource packs. Some colors render with slightly different hex values between editions — notably dark aqua.
The biggest difference for text formatting: Java supports custom hex colors in JSON text components since 1.16 (e.g. {"color":"#FF5555"}), enabling gradients and precise color matching. Bedrock does not support hex colors or the §m (strikethrough) and §n (underline) formatting codes.
Server MOTD formatting guide
The server Message of the Day (MOTD) is the description shown in the Minecraft server list. It is set in server.properties using the motd= line. Because Java reads this file as ISO-8859-1 by default, you must use the Unicode escape \u00A7 instead of the § character. For example: motd=\u00A76\u00A7lWelcome \u00A7r\u00A77to my server displays "Welcome" in bold gold and "to my server" in gray.
The MOTD supports two lines separated by \n. Color and formatting codes work on both lines. Use the MOTD Preview tab above to design your MOTD visually and copy the ready-to-paste server.properties line.
Using color codes with plugins: & vs §
Most Bukkit, Spigot, and Paper plugins (like Essentials, EssentialsX, LuckPerms, and CMI) accept the & symbol as a substitute for § in configuration files and commands. The plugin converts & to § before sending text to the client. This exists because § is difficult to type on most keyboards.
Modern Paper/Adventure-based servers also support MiniMessage formatting: <red>, <bold>, <gradient:red:blue>, and more. MiniMessage is more readable and supports advanced features like gradients, hover events, and click actions natively. Use the Text Generator tab above with the MiniMessage output format for these servers.