Live preview
Type with § or & codes — the box below draws them the way the client does
Crafty » Welcome back, Steve!
Color codes
The 16 colors every edition understands — click a row to copy its code
| Code | Color | Chat name | Hex | Shadow |
|---|---|---|---|---|
| Black | black | #000000 | #000000 | |
| Dark Blue | dark_blue | #0000AA | #00002A | |
| Dark Green | dark_green | #00AA00 | #002A00 | |
| Dark Aqua | dark_aqua | #00AAAA | #002A2A | |
| Dark Red | dark_red | #AA0000 | #2A0000 | |
| Dark Purple | dark_purple | #AA00AA | #2A002A | |
| Gold | gold | #FFAA00 | #3E2A00 | |
| Gray | gray | #AAAAAA | #2A2A2A | |
| Dark Gray | dark_gray | #555555 | #151515 | |
| Blue | blue | #5555FF | #15153F | |
| Green | green | #55FF55 | #153F15 | |
| Aqua | aqua | #55FFFF | #153F3F | |
| Red | red | #FF5555 | #3F1515 | |
| Light Purple | light_purple | #FF55FF | #3F153F | |
| Yellow | yellow | #FFFF55 | #3F3F15 | |
| White | white | #FFFFFF | #3F3F3F |
The shadow column is the colour the client paints one pixel down and to the right of every glyph. It is the foreground at a quarter brightness, except gold, which Mojang rounds to #3E2A00 rather than the #3F2A00 the formula gives.
Formatting codes
Style rather than colour — and the two Java keeps to itself
Bedrock material colors
13 extra codes Bedrock reads and Java ignores
§m and §n are the ones to watch: on Java they are strikethrough and underline, on Bedrock they are the redstone and copper material colours. A message written for one edition will not read the same on the other unless it sticks to §0–§f, §k, §l, §o and §r.
Typing the section sign
§ is U+00A7, and no keyboard has a key for it
Most people never type it. Plugin configs take & and translate it, the preview above hands you the § form to paste, and server.properties wants the § escape anyway.
Hex colors, beyond the 16
What 1.16 added, and where the legacy §x form is still needed
Java 1.16 gave the JSON text component full RGB, so {"text":"hi","color":"#ff8800"} works in /tellraw, books written by a datapack, and anything else that takes a text
component. Signs, anvils and the chat box a player types into are still limited to the 16
named colours.
Spigot and Paper bolted the same range onto the legacy syntax: §x followed by each hex digit carrying its own section sign. That is the form MOTD generators and chat plugins emit, and it is what a gradient really is — one colour code per character.
#ff8800 as a legacy code
Tools that use these codes
Where to actually put the colours once you have picked them
Frequently asked questions
§ versus &, hex colours and the Bedrock differences
What is the difference between § and & color codes? +
The section sign § is what Minecraft itself reads — chat, signs, books, anvils and the JSON text component all expect it. The ampersand & is a convention plugins invented because § is awkward to type and most config files could not carry it safely. Essentials, LuckPerms and virtually every Bukkit plugin translate & to § before the text reaches the client, so in a plugin config you write &c and the player sees red. Vanilla does not do that translation: an & typed straight into chat stays an ampersand on screen.
Why do my formatting codes disappear when I change color? +
In Java Edition a color code resets every active format. §lBold §ctext loses the bold the moment §c is read, because §c rebuilds the style from scratch rather than adding to it. The fix is to put the color first and the format second — §c§lBold red text — and to reapply both after every color change. Bedrock keeps formats across a color change, which is why the same string can look different on the two editions.
How do I use hex colors instead of the 16 codes? +
Java 1.16 added full RGB to the JSON text component, so /tellraw and datapacks can take {"color":"#ff8800"} directly. On the legacy side Spigot and Paper accept §x followed by each hex digit prefixed with its own section sign — §x§f§f§8§8§0§0 for #ff8800 — which is what MOTD generators and most chat plugins emit. Vanilla signs, books and anvils are still limited to the 16 named colors.
Do color codes work in server.properties? +
Yes, but the file is read as a Java properties file, so the raw § character is not safe to save. Write the Unicode escape instead: motd=\u00A76Welcome renders as a gold MOTD. Editors that save the file as UTF-8 sometimes get away with a literal §, but the escape works everywhere and survives being edited by a panel that rewrites the file.
Which codes do not work in Bedrock Edition? +
§m and §n mean strikethrough and underline in Java, but Bedrock reassigned both to material colors — redstone and copper. Bedrock also adds its own set (§g minecoin gold, §h through §v for quartz, iron, netherite, gold, emerald, diamond, lapis, amethyst and resin) that Java ignores completely. If a message has to look the same on both editions, stick to §0-§f plus §k, §l, §o and §r.
How do I type the § symbol? +
On Windows hold Alt and type 21 on the numeric keypad, or Alt+0167 on a layout without one. On macOS it is Option+6 with a US keyboard. On Linux with a compose key it is Compose then s then o. On mobile it hides behind the ampersand on iOS and under the s key on Samsung's keyboard. In configuration files the Unicode escape \u00A7 avoids the question entirely.
Verified against the Minecraft Wiki