Discord Color Picker and Hex to Decimal Converter
Discord role colors are set as hex in the client but stored as decimal integers in the API, which is why embed colors fail when a hex value is passed straight through. This picker converts between both formats and previews any color against Discord's dark and light themes before you commit it to a role.
Official Discord Brand Colors
Role Color & Value Converter
How to use the Color Picker and Hex to Decimal Converter
- Pick a color, or paste a hex, RGB, or decimal value.
- Preview it as a role name on dark and light theme backgrounds.
- Copy the decimal integer for embeds, or the hex for role settings.
Discord Theme Colors & Background Codes
| Discord Surface | Hex Code | RGB | Preview |
|---|---|---|---|
| Chat Background (Dark) | #313338 | 49, 51, 56 | |
| Sidebar / Channels (Dark) | #2B2D31 | 43, 45, 49 | |
| Server List (Dark) | #1E1F22 | 30, 31, 34 | |
| Chat Background (Light) | #FFFFFF | 255, 255, 255 | |
| Chat Background (OLED Black) | #000000 | 0, 0, 0 | |
| Legacy Classic Blurple | #7289DA | 114, 137, 218 |
Role colours, embed colours, and the hex to decimal problem
Discord uses colour in two places with two different formats. Role colours are chosen as hex in the client, and the highest-positioned role with a colour set determines how a member's name appears. Embed colours are sent to the API as decimal integers. Passing a hex string where a decimal is expected is one of the most common reasons an embed fails to send or renders in the wrong colour.
Contrast is the practical constraint on role colours. Discord's dark theme uses a near-black background and the light theme a near-white one, and a colour that reads clearly on one can become unreadable on the other. Very dark colours vanish on dark theme, very light and low-saturation colours wash out on light theme, and pure saturated colours can vibrate uncomfortably against either.
There is also a hierarchy detail that catches people out. A member's displayed colour comes from their highest coloured role, not the most recently assigned one, and a role with no colour set is skipped rather than making the name default. If someone's colour is not what you expect, the cause is almost always role ordering rather than the colour value.
Common problems and fixes
- A member shows the wrong role colour
The colour comes from their highest positioned coloured role. Reorder roles in Server Settings. - An embed colour is wrong or fails to send
Discord expects a decimal integer. Convert the hex value before sending. - A role colour is unreadable on light theme
Test against both themes and choose a mid-tone with enough contrast on each.
Frequently asked questions
What is Discord's official Blurple hex code?
Discord's official brand Blurple is #5865F2 (Decimal integer: 5793266).
How do I convert a Hex color to a Discord decimal integer?
Remove the # symbol and convert the base-16 hex number to base-10 decimal. This tool calculates it automatically.
Can I test if my role color is legible on light theme?
Yes. Click 'Switch to Light Theme' to verify if your custom role color is visible to Discord light mode users.
Why does Discord use decimal integers for embed colors?
The Discord REST API uses standard 24-bit integer values (0 to 16777215) for embed and role colors.
How do I convert a Discord hex colour to decimal?
Interpret the six hex digits as a base-16 number. This tool does the conversion and shows both values.
Why does a role with no colour not reset a name?
Uncoloured roles are skipped when Discord looks for the displayed colour. It uses the highest role that actually has one.
Can members have a gradient or animated name colour?
Standard role colours are solid. Enhanced role styling is a separate boost perk rather than a normal role setting.