Color Code Minecraft: Complete Guide to Text Formatting and Color Codes in 2026

Minecraft’s visual customization extends far beyond block palettes and texture packs. Buried in the game’s code is a formatting system that lets players splash minecraft color across chat messages, signs, item names, and even server announcements. Whether you’re running a multiplayer server, creating adventure maps, or just want to make your in-game messages pop, understanding minecraft text colors unlocks a layer of creative control most casual players never tap into.

This guide covers everything from the classic section symbol codes to the hex color system introduced in Java Edition 1.16, plus the differences between Java and Bedrock Edition, command integration, and troubleshooting tips for when your codes don’t render as expected. By the end, you’ll know exactly how to color code minecraft text in every context the game allows.

Key Takeaways

  • Minecraft color codes use the section symbol (§) followed by a code value to control text appearance in chat, signs, books, and commands across both Java and Bedrock editions.
  • Java Edition 1.16+ supports hex colors (over 16 million custom shades) with syntax like §x§F§F§5§7§3§3, while Bedrock Edition is limited to the 16 classic color codes as of 2026.
  • Server plugins like EssentialsX allow players to type & as a substitute for § in chat, automatically converting codes like &a to §a for accessible color customization.
  • JSON text components provide the modern standard for advanced color control in commands, offering features like nested colors, formatting stacks, and clickable text beyond legacy color code limitations.
  • Common mistakes include using & without plugin support, forgetting to reapply formatting after color changes, and attempting hex colors in versions older than 1.16 Java Edition.
  • Color codes work universally in command blocks and pre-placed world elements regardless of player permissions, making them ideal for adventure maps and server automation.

What Are Minecraft Color Codes?

Minecraft color codes are special character sequences that change the appearance of text within the game. They control both color (red, blue, green, etc.) and formatting (bold, italic, strikethrough). These codes work anywhere Minecraft renders player-created text: chat, signs, books, item names, and server messages.

The system relies on a prefix character followed by a code value. In Java Edition, that prefix is the section symbol (§), while Bedrock Edition uses the same symbol but with some limitations and differences in implementation. When Minecraft’s text renderer encounters this sequence, it applies the specified color or formatting to all text that follows until it hits another code or the text ends.

Color codes have been part of Minecraft since early beta versions, though the system has expanded over time. Java Edition 1.16 introduced hex color support, allowing millions of custom colors beyond the original 16-color palette. Bedrock Edition still primarily uses the classic system as of early 2026.

Understanding the Section Symbol (§) in Minecraft

The section symbol (§) is the key that unlocks color formatting. You won’t find it on most keyboards, which is why players typically can’t type it directly in standard chat. Instead, the symbol appears in specific contexts: when using commands, editing sign text through plugins, or manipulating NBT data.

On Java Edition, server plugins and mods often replace the section symbol with an ampersand (&) for ease of use, automatically converting &a to §a behind the scenes. This workaround makes color codes accessible without hunting for the actual § character.

The section symbol originates from legacy typesetting and appears in Unicode as U+00A7. Minecraft’s developers chose it because it’s rarely used in normal conversation, reducing the chance of accidental formatting triggers. When you see §e in Minecraft’s code or commands, the game reads it as “switch text color to yellow” and applies that style immediately.

Complete List of Minecraft Color Codes

Minecraft’s color system divides into two categories: the 16 standard colors (numbered 0-9 and lettered A-F) and formatting codes that modify text style without changing hue.

Standard Color Codes (0-9 and A-F)

Here’s the complete palette of Minecraft’s classic color codes:

  • §0 – Black
  • §1 – Dark Blue
  • §2 – Dark Green
  • §3 – Dark Aqua
  • §4 – Dark Red
  • §5 – Dark Purple
  • §6 – Gold
  • §7 – Gray
  • §8 – Dark Gray
  • §9 – Blue
  • §a – Green
  • §b – Aqua
  • §c – Red
  • §d – Light Purple (Magenta)
  • §e – Yellow
  • §f – White

The hex values behind these colors are hardcoded into Minecraft’s rendering engine. For example, §c (red) renders as #FF5555, while §a (green) displays as #55FF55. These aren’t true primary colors but carefully chosen shades that remain readable against Minecraft’s varied backgrounds.

Color codes are case-insensitive in most contexts. §A and §a both produce green text, though lowercase is the convention in documentation and commands.

Formatting Codes for Text Styling

Beyond color, Minecraft supports five formatting codes:

  • §k – Obfuscated (randomized characters that constantly change)
  • §l – Bold
  • §m – Strikethrough
  • §n – Underline
  • §o – Italic
  • §r – Reset (removes all color and formatting)

Formatting codes stack with color codes. You can combine §c (red) with §l (bold) to create bold red text. But, applying a new color code automatically removes previous formatting unless you reapply it. The §r reset code is crucial for clearing styles mid-sentence without starting a new line.

The obfuscated code (§k) creates the scrambled text effect seen in the Minecraft enchantment table interface. It’s purely cosmetic but popular for mystery messages and dramatic server announcements.

How to Use Color Codes in Minecraft

Different Minecraft contexts require different methods to insert color codes. The section symbol isn’t directly typeable in vanilla client chat, so players rely on server plugins, commands, or NBT editing depending on the situation.

Using Color Codes in Chat

In vanilla Minecraft, regular players cannot type color codes into chat. The feature requires either:

  1. Server plugin permissions – Plugins like EssentialsX allow players with specific permissions to use & as a substitute for §. Typing &aHello in chat renders as green “Hello.”
  2. Operator status – Server ops can sometimes access color codes through commands, though this varies by server configuration.
  3. Client-side mods – Mods can inject color codes into outgoing chat messages, but recipients see colors only if the server allows it.

Most multiplayer servers restrict chat color codes to donors, moderators, or VIPs to prevent spam and maintain readability. When permitted, chat colors persist only for that message and reset automatically on the next line.

Adding Colors to Signs and Books

Signs and books handle color codes differently:

Signs:

  • In Java Edition, placing a sign and editing it with a plugin or using /data merge commands allows color insertion.
  • Bedrock Edition requires third-party tools or Realms commands to apply colors to signs.
  • Many adventure maps use pre-colored signs created through map editors like MCEdit or Amulet.

Books:

  • Writable books accept color codes through /give commands with NBT data.
  • Example: /give @p minecraft:written_book{pages:['[{"text":"§aGreen text"}]']}
  • Signed books retain colors permanently, making them ideal for in-game guides and lore documents.

Signs support all 16 colors and formatting codes, though long color sequences can make text unreadable due to character limits. Books offer more flexibility since they span multiple pages.

Applying Color Codes to Item Names with Anvils

Item renaming creates some of the most visible uses of color codes:

  1. Vanilla Java Edition – Players cannot type § in anvil rename fields without mods.
  2. Commands – Use /give with NBT data to create pre-colored items:

/give @p diamond_sword{display:{Name:'[{"text":"§cFlame Blade","italic":false}]'}}
  1. Server plugins – Plugins like ColoredAnvil let players type &c in the anvil interface, which the plugin converts to §c.

Colored item names appear in inventory tooltips, dropped item entities, and the hotbar. The trick is disabling the default italic formatting (which anvils apply automatically) by setting "italic":false in the JSON component.

Color Codes in Server MOTD and Server Names

The Message of the Day (MOTD) is the text that appears when players browse the multiplayer server list. Server admins can insert color codes directly into the server.properties file:


motd=§6§lMy Server §r§7- §aSurvival & Creative

This renders as bold gold “My Server” followed by gray text and green mode labels. The MOTD supports both color and formatting codes, and changes apply after a server restart.

Some server networks go further, using plugins to dynamically update the MOTD with player counts, events, or rotating messages. Tools featured on platforms like Nexus Mods often include MOTD customization for modded servers, letting admins create complex, multi-line formatted announcements.

Server names in the server list also accept color codes if manually edited in the servers.dat file or through launcher mods, though most players add servers through the in-game interface, which strips formatting.

Using Color Codes in Commands and Command Blocks

Command-driven text is where color codes truly shine. Commands bypass the chat input restrictions, letting map makers and server admins inject formatted text anywhere the game displays messages.

The /tellraw and /title Commands

The /tellraw command sends JSON-formatted text to players, supporting colors, formatting, click events, and hover tooltips:


/tellraw @a {"text":"Warning: ","color":"red","bold":true,"extra":[{"text":"Boss incoming.","color":"yellow","bold":false}]}

This displays “Warning:” in bold red, followed by “Boss incoming.” in yellow. JSON text components replaced legacy color codes in modern command design because they offer finer control and additional features like clickable links.

The /title command uses similar JSON syntax to display large text across the screen:


/title @a title {"text":"Victory.","color":"gold","bold":true}

/title @a subtitle {"text":"You defeated the dragon","color":"white"}

Titles support all colors and formatting but ignore certain codes like obfuscated in some contexts due to rendering performance.

JSON Text Format for Advanced Color Control

JSON text components are the modern standard for Minecraft color and formatting. The basic structure:


{

"text": "Your message",

"color": "red",

"bold": true,

"italic": false,

"underlined": false,

"strikethrough": false,

"obfuscated": false

}

You can nest components using the extra array:


{

"text": "Welcome ",

"color": "green",

"extra": [

{"text": "Player", "color": "yellow", "bold": true},

{"text": ".", "color": "green"}

]

}

JSON text works in /tellraw, /title, /summon (for custom entity names), book pages, sign text, and more. Many experienced map makers use external JSON generators to avoid syntax errors, though learning the structure unlocks complete creative control over in-game text.

Command blocks execute these commands automatically, making them essential for adventure maps. A chain of command blocks can create timed, colored announcements or dynamic scoreboard updates that shift color based on game state.

Hex Color Codes in Minecraft Java Edition

Java Edition 1.16 (the Nether Update, released June 2020) introduced hex color support, expanding the palette from 16 colors to over 16 million. This change gave map makers and plugin developers vastly more creative freedom.

How to Use Custom Hex Colors

Hex colors require a specific syntax with the section symbol:


§x§r§r§g§g§b§b

Each pair of hex digits (rr, gg, bb) must be preceded by §. For example, to create the hex color #FF5733 (a vibrant orange-red):


§x§F§F§5§7§3§3

In JSON text format, hex colors use a simpler syntax:


{"text":"Custom color text","color":"#FF5733"}

This is far more readable and the preferred method for commands. The legacy §x format works in some contexts like plugin messages but is cumbersome to type manually.

Hex colors only function in Java Edition 1.16+. Older versions ignore the codes and may display garbled symbols. Bedrock Edition does not support hex colors as of early 2026, though community speculation suggests it might arrive in a future update given the Java-Bedrock feature parity push.

Hex Color Examples and Popular Combinations

Here are some commonly used hex colors for Minecraft projects:

  • #FF6B6B – Soft red (friendlier than the harsh §c red)
  • #4ECDC4 – Teal (great for water-themed text)
  • #FFD93D – Warm yellow (more vibrant than §e)
  • #A8E6CF – Mint green (subtle and calming)
  • #C77DFF – Lavender purple (distinct from the magenta §d)
  • #FF9E00 – Deep orange (no equivalent in the 16-color set)

Map makers often use hex colors to match specific build themes. A desert adventure map might use sandy #D4A574, while a sci-fi server could employ neon #00FFF7 for holographic text effects. Gaming communities on sites like Game Rant frequently share custom hex palettes optimized for readability and aesthetic cohesion in adventure maps.

Gradient effects are possible by manually changing hex values across text segments, though this requires either command block chains or plugin automation for dynamic messages.

Differences Between Java Edition and Bedrock Edition Color Codes

While both editions share the 16-color foundation, implementation differences create compatibility headaches for cross-platform projects.

Java Edition:

  • Supports all 16 color codes and 5 formatting codes.
  • Hex colors available in 1.16+.
  • JSON text components work in commands and data packs.
  • Server plugins (Spigot, Paper, etc.) enable & as a substitute for §.
  • NBT editing allows color codes in nearly any text field.

Bedrock Edition:

  • Supports the same 16 color codes with the § prefix.
  • No hex color support as of early 2026.
  • JSON text is more limited: some commands don’t accept complex formatting.
  • Mobile keyboard limitations make typing § difficult without add-ons.
  • Realms and some servers restrict color codes more heavily than Java servers.
  • Anvil renaming doesn’t natively support color codes without behavior packs or third-party tools.

The biggest practical difference: Java Edition map makers can use data packs and command blocks freely, while Bedrock creators often rely on marketplace add-ons or external editors. Cross-platform servers typically standardize on the 16-color palette to ensure Bedrock players see formatting correctly.

For content creators targeting both editions, sticking to the classic codes (§0 through §f) ensures maximum compatibility. Guides published on platforms like GamesRadar+ often emphasize this when covering Minecraft customization, since their audience spans console, mobile, and PC.

Bedrock’s upcoming updates in 2026 may narrow the gap, especially as Microsoft pushes for feature parity, but as of now, Java Edition remains the platform of choice for advanced color customization.

Permissions and Requirements for Color Codes

Not every player can use color codes in every context. The availability depends on game mode, server permissions, and platform.

Single-Player:

  • Commands require enabling cheats when creating or opening the world to LAN.
  • Color codes in signs and books need NBT editing via commands.
  • Item names require /give commands with NBT data.

Multiplayer (Java Edition):

  • Chat color codes require server plugin permissions (often granted by rank or donation tier).
  • Command usage requires operator level 2+ or specific plugin permissions.
  • Server MOTD editing requires file system access (admin only).

Multiplayer (Bedrock Edition):

  • Realms operators can use limited color codes in certain commands.
  • Chat colors typically restricted to Realms/server owner unless add-ons are installed.
  • Third-party servers may have custom permission systems.

Common Permission Nodes (Java plugins):

  • essentials.chat.color – Allows & color codes in chat.
  • essentials.nick.color – Allows colored nicknames.
  • minecraft.command.tellraw – Permits /tellraw usage.

Most servers gate color codes behind ranks to prevent spam and maintain chat readability. Free players get standard white text, while VIP or donor ranks unlock colors. Some servers allow all players to use color codes but moderate aggressively for abuse.

For map makers distributing adventure maps, color codes in command blocks and pre-placed signs work for all players regardless of permissions, since those elements are part of the world data rather than player input.

Creative Tips and Tricks for Using Minecraft Color Codes

Mastering the technical syntax is one thing. Using color codes effectively to enhance player experience requires creativity and restraint.

Creating Gradient Effects with Multiple Codes

Gradients add polish to titles and signs. Since Minecraft doesn’t render true gradients, you fake them by shifting colors gradually:


§c█§6█§e█§a█§b█§d█

This creates a rainbow bar effect using block characters. For text gradients, split words across colors:


§cS§6u§en§as§be§dt

Each letter gets a different hue, producing a smooth transition if colors are chosen carefully. Hex colors (Java 1.16+) make this easier since you can fine-tune each step:


[

{"text":"G","color":"#FF0000"},

{"text":"r","color":"#FF4000"},

{"text":"a","color":"#FF8000"},

{"text":"d","color":"#FFC000"},

{"text":"e","color":"#FFFF00"}

]

Some plugin developers automate this with gradient generators that accept start/end colors and output the full JSON or legacy code sequence. These tools are especially useful for server welcome messages and hub titles.

Combining Color and Formatting Codes

Layering color with bold, italic, or underline creates emphasis:


§l§6WARNING: §r§cDanger ahead.

This produces bold gold “WARNING:” followed by standard red text. The §r reset clears the bold before applying red, preventing unintended formatting carryover.

Key rules for stacking:

  1. Color codes reset formatting – Applying a new color (e.g., §a after §l§c) removes bold unless you reapply §l.
  2. Reset first when switching styles – Use §r to clear everything, then apply new codes in sequence.
  3. Formatting codes stack – You can combine §l§n§o for bold, underlined, italic text, though readability suffers.

Obfuscated text (§k) pairs well with color for dramatic reveals:


§k§d????§r §5The Secret

This creates scrambled purple characters before the actual text, common in mystery or horror adventure maps.

For server announcements, alternating color and format keeps messages readable but visually distinct:


§a§l[Event]§r §7Daily rewards available. Type §e/claim§7.

Green bold tag, gray body text, yellow command emphasis, players scan this structure instantly.

Common Mistakes and Troubleshooting

Even experienced players hit snags when working with color codes. Here are the most frequent issues and how to fix them.

Codes displaying as literal text:

  • Cause: Using & instead of § without plugin conversion, or the server/context doesn’t support color codes.
  • Fix: Verify plugin installation (EssentialsX, ChatColor, etc.) and confirm permissions. In commands, always use § or JSON format.

Colors not appearing in chat:

  • Cause: Missing permissions or server color codes disabled.
  • Fix: Check your permission nodes. Some servers restrict chat colors entirely to reduce visual clutter.

JSON syntax errors in commands:

  • Cause: Missing commas, quotes, or brackets.
  • Fix: Use a JSON validator or generator. Minecraft’s error messages for JSON are often vague, so external tools help pinpoint syntax issues.

Hex colors showing as garbled symbols:

  • Cause: Using hex codes in Java Edition older than 1.16, or attempting them in Bedrock Edition.
  • Fix: Update to 1.16+ (Java) or fall back to the 16-color palette. Bedrock doesn’t support hex colors yet.

Formatting disappearing after color change:

  • Cause: Color codes reset previous formatting unless reapplied.
  • Fix: Reapply formatting codes after each color change: §l§cBold Red §l§aStill Bold Green.

Color codes not working in vanilla client chat:

  • Cause: Standard Minecraft clients cannot type § directly.
  • Fix: This is intentional. Color codes in chat require server plugins or client mods. Use commands (/tellraw, /title) instead for vanilla support.

Anvil name colors reverting after restart (Bedrock):

  • Cause: Bedrock Edition’s anvil doesn’t natively support color codes without add-ons.
  • Fix: Use commands with NBT data or behavior packs designed for item name formatting.

If color codes work in one context but not another, check the game version, server configuration, and plugin compatibility. Minecraft’s fragmented ecosystem (Java vs. Bedrock, vanilla vs. modded, different server software) means “it works on my friend’s server” isn’t always a guarantee.

Conclusion

Color codes transform Minecraft from a purely blocky sandbox into a canvas for visual storytelling through text. Whether you’re a server admin crafting a vibrant MOTD, a map maker building immersive narratives with JSON titles, or a player who just wants a neon-green sword name, the system is accessible once you understand the syntax and platform limitations.

Java Edition’s hex color support opened creative floodgates that Bedrock Edition hasn’t quite matched yet, but the 16-color palette remains universally functional and more than enough for most projects. The key is knowing when to use legacy codes, when to switch to JSON, and how to troubleshoot the inevitable permission or syntax hiccup.

As Minecraft continues evolving in 2026 and beyond, color customization will likely expand further, especially with Microsoft pushing Java-Bedrock parity. Until then, the techniques covered here, from basic §c red text to complex hex gradients and command block automation, give you complete control over how Minecraft text looks and feels across nearly every in-game context.