CMYK to Hex Converter

web preview#CE0018

CMYK Ink Values (%)

Each ink runs 0–100%, not 0–255. The Key (K) plate is black, and it darkens all three channels at once before the hex gets encoded.

Print Presets

Hex Color Code

#CE0018

No 3-digit shorthand for this color

Base-16 Encoding (RGB → Hex)

R206CE12×16 + 14
G0000×16 + 0
B24181×16 + 8
#CE0018

RGB

206, 0, 24

HSL

353°, 100%, 40%

CSS

color: #CE0018;

// CMYK -> RGB, then RGB encoded to hex

R = 255 × (1 − 0.15) × (1 − 0.05) = 206CE

G = 255 × (1 − 1.00) × (1 − 0.05) = 000

B = 255 × (1 − 0.90) × (1 − 0.05) = 2418

hex = #CE0018

How to Use This Tool

  1. 1.Type your four ink percentages (0–100) into the Cyan, Magenta, Yellow, and Key fields, or drag the sliders. The default is a print red, CMYK(15, 100, 90, 5).
  2. 2.Read the large hex code in the blue panel and watch the swatch up top update to show how the color renders in a browser.
  3. 3.Open the Base-16 Encoding panel to see each RGB channel turn into its two-digit hex pair — handy if you want to verify the math by hand.
  4. 4.If a 3-digit shorthand exists (like #F00), the panel shows it. Hit “Copy Hex” or grab the ready-made CSS color: line.
  5. 5.Load a Print Preset to see how process primaries and rich black map to web hex codes, or check the dark formula box to trace every step.

Rate this tool

CMYK to Hex: Putting Print Brand Colors on the Web

A CMYK to hex converter promises a tidy answer — feed it four ink numbers, get one web color code back. The honest version comes with an asterisk: there is no single “correct” hex for a CMYK color, only a best mathematical estimate. That sounds like a knock against the tool above. It isn't. It's the one thing most converter pages won't tell you, and knowing it is what separates a designer who ships accurate brand colors from one who keeps wondering why the website blue never quite matches the brochure.

CMYK to hex conversion showing a print style guide color CMYK 0, 100, 100, 0 mapped to the web hex code #FF0000 in a CSS snippet

There Is No Single 'Correct' Hex

Here's the uncomfortable truth: CMYK is device-dependent and hex is not. The same CMYK(0, 100, 100, 0) red prints as one color on glossy coated stock and a visibly duller one on uncoated business-card paper, because uncoated fibers soak up ink and scatter light. A hex code can't encode any of that — #FF0000 is a fixed point in the sRGB space, identical on every calibrated screen. So when a tool converts ink percentages to a hex code, it's answering a slightly different question than the one you asked. It tells you the screen color that the idealized formula maps those inks to, not the color your specific press will actually lay down.

That gap matters because the printable CMYK gamut covers only about 55–70% of the sRGB colors hex can describe. Vivid blues, electric greens, and hot oranges live outside what ink can hit, so their converted hex codes look more luminous on a monitor than the print ever will. Treat the result as a faithful starting point — exactly what you want for building a website from a print brand — and verify anything color-critical against a physical proof.

How Four Inks Become Six Characters

The conversion is two moves, not one. There's no direct ink-to-hex formula, because hex is just base-16 shorthand for RGB. First the four ink percentages become three RGB channels; then each channel gets re-written as a two-character hex pair. The first move uses the subtractive formula our CMYK to RGB converter walks through in depth: R = 255 × (1 − C) × (1 − K), and the same shape for green and blue using magenta and yellow.

The second move is the part that makes it “hex.” Each RGB channel is a number from 0 to 255, and 255 in base-16 is FF — two digits, where the left digit counts sixteens and the right digit counts ones. So 235 becomes EB: 14 sixteens (E = 14) is 224, plus 11 ones (B = 11) equals 235. Stack the three pairs and you have a six-character code. That's why a full-color hex value is always six digits: two per channel, three channels. The encoding panel in the tool above shows this digit-by-digit, so you never have to trust it blindly.

Worked Example: A Print Teal to #24B691

Say a brand guide specifies a teal as CMYK(85, 25, 40, 5). Let's convert it to hex by hand, both moves shown.

Move 1, inks to RGB. Convert percentages to decimals and apply the formula with the shared black factor (1 − 0.05) = 0.95:

  • R = 255 × (1 − 0.85) × 0.95 = 255 × 0.15 × 0.95 = 36
  • G = 255 × (1 − 0.25) × 0.95 = 255 × 0.75 × 0.95 = 182
  • B = 255 × (1 − 0.40) × 0.95 = 255 × 0.60 × 0.95 = 145

Move 2, RGB to hex. Encode each channel in base-16. 36 is 2 sixteens (32) plus 4, so 24. 182 is 11 sixteens (176, written B) plus 6, so B6. 145 is 9 sixteens (144) plus 1, so 91. Concatenate the pairs: #24B691. Drop that into your CSS and the teal renders on screen. The whole chain — CMYK to RGB to those three hex pairs — updates live in the dark formula box, so you can nudge the cyan and watch the first pair shift.

When a Color Collapses to #F00

CSS allows a three-digit hex like #F00 as shorthand for #FF0000, and a CMYK build sometimes lands on exactly such a color. The rule is narrow: shorthand works only when all three channels happen to be a repeated pair — FF, 00, 33, 66, AA, and so on. Process red, CMYK(0, 100, 100, 0), converts to RGB(255, 0, 0) = #FF0000, where every pair has two identical characters, so it collapses cleanly to #F00.

Most colors don't qualify. The teal above, #24B691, has pairs 24, B6, and 91 — none repeat, so it must stay six digits. Mathematically only 16 × 16 × 16 = 4,096 of the 16.7 million possible colors can be written in shorthand, roughly 1 in 4,096. The tool flags the lucky ones automatically. Shorthand saves three bytes per color in your stylesheet — trivial for a single value, but it adds up across a large design system.

The Rounding Drift Nobody Warns You About

Every CMYK-to-hex conversion rounds twice, and those roundings can quietly bite you. The RGB formula rarely produces whole numbers — the teal's green channel actually computes to 181.69 before rounding to 182. Hex can only store whole numbers from 0 to 255, so that fractional part is gone for good.

The drift becomes visible on a round trip. Take a hex code, convert it to CMYK for a print run, then convert that CMYK back to hex, and you can land one or two values off the original: #2563EB might return as #2563EC. It looks identical to the eye, but an automated brand-consistency check that does exact string matching will flag it as a mismatch. The fix is simple — if a color started as hex, keep the original and never round-trip it. Only convert CMYK to hex when print genuinely is your source, like a logo that exists only as ink specs. If you need the reverse direction cleanly, our hex to CMYK converter shows the intermediate RGB so you can spot exactly where drift creeps in.

When a Formula Hex Will Burn You

A generic conversion is the right tool for a quick estimate and for digitizing a print-first brand. It's the wrong tool in three specific cases:

  • Pantone spot colors.A Pantone bridge book lists both a CMYK build and an official sRGB hex for each spot color — and they don't match, because each is tuned for its medium. Convert the printed CMYK build yourself and you get a third, slightly different hex. Use the hex Pantone publishes instead. Our RGB to CMYK converter explains why spot-to-process matching is always approximate.
  • Colors built for a specific paper.The same ink build on newsprint versus coated gloss can shift perceived saturation dramatically — easily a 15–20% swing. A device-independent formula ignores the substrate entirely. For accuracy, convert through the press's ICC profile in design software rather than a generic equation.
  • Anything where the screen color must be legally exact.Trademarked brand colors are often registered as specific hex values. Don't derive them from a CMYK build — pull the registered hex from the brand guidelines so your site matches the spec on file, not a converter's best guess.

Print CMYK Builds and Their Hex Codes

These are the CMYK builds designers pull off spec sheets most often, with the formula hex each one maps to. The two-ink process primaries land on pure web primaries because every unused ink leaves its channel sitting at the full FF.

BuildCMYKRGBHex
Process Red0, 100, 100, 0255, 0, 0#FF0000
Process Cyan100, 0, 0, 00, 255, 255#00FFFF
Process Green100, 0, 100, 00, 255, 0#00FF00
Print Royal Blue75, 68, 0, 859, 75, 235#3B4BEB
Print Teal85, 25, 40, 536, 182, 145#24B691
Warm Amber0, 35, 85, 0255, 166, 38#FFA626
Rich Black60, 40, 40, 1000, 0, 0#000000
Paper White0, 0, 0, 0255, 255, 255#FFFFFF

Notice paper white maps to #FFFFFF even though it represents zero ink — on screen, maximum light; on paper, the bare sheet. That inversion sits at the heart of why print and web color never line up by intuition alone. The sRGB math here follows the same rules the W3C CSS Color 4 specification uses to interpret a bare hex code, which is always treated as sRGB. Once you have a hex you trust, confirm it meets the WCAG 2.1 contrast minimum of 4.5:1 for body text before it ships.

Jurica Sinko
Jurica SinkoContent & Conversions Editor

Croatian entrepreneur who became one of the youngest company directors at age 18. Jurica combines practical knowledge with clear writing to create accessible unit converters, cooking tools, health calculators, and size charts used by millions of users worldwide.

Last updated: June 22, 2026LinkedIn

Frequently Asked Questions

CMYK(0, 100, 100, 0) is process red and converts to #FF0000. First find RGB: R = 255 × (1 − 0) × (1 − 0) = 255, G = 255 × (1 − 1) = 0, B = 255 × (1 − 1) = 0, giving RGB(255, 0, 0). Then encode each channel in base-16: 255 = FF, 0 = 00, 0 = 00, so the hex is #FF0000, which also shortens to #F00.
Because CMYK is device-dependent while a hex code is a fixed sRGB value. The same ink percentages look different on glossy stock, newsprint, or an uncoated card, so a generic formula gives one mathematical answer that won't match every press. CMYK printing reproduces only about 55–70% of the sRGB colors a hex code can represent, which is why the conversion is always a close estimate rather than a guaranteed match.
It converts to #000000 — identical to plain K-only black, CMYK(0, 0, 0, 100). Once K reaches 100%, the (1 − K) factor becomes zero and forces all three RGB channels to 0 regardless of the cyan, magenta, and yellow values. On paper rich black lays down 240% total ink for a deeper black, but on screen both render as the exact same #000000.
Only when all three RGB channels happen to land on a repeated hex pair — FF, 00, 33, AA, and so on. CMYK(0, 100, 100, 0) gives RGB(255, 0, 0) = #FF0000, which collapses to #F00 because every pair has two matching characters. But CMYK(75, 68, 0, 8) gives #3B4BEB, where 3B, 4B, and EB don't repeat, so it must stay six digits. Only 4,096 of the 16.7 million possible colors qualify for shorthand.
A Pantone bridge book lists both a CMYK build and an sRGB hex for each spot color, and they rarely match — the CMYK is tuned for ink while the hex is tuned for screens. If you convert the printed CMYK build with a generic formula you'll get a third, slightly different hex. For brand work, use the hex value Pantone publishes for that spot color rather than converting the CMYK build yourself.
It converts to #3B4BEB, a saturated royal blue. The math: R = 255 × 0.25 × 0.92 = 59 (3B), G = 255 × 0.32 × 0.92 = 75 (4B), B = 255 × 1.00 × 0.92 = 235 (EB). Saturated blues like this sit near the edge of the printable gamut, so expect the printed version to look a touch darker than #3B4BEB does on your monitor.
If your color started life as a hex code and was only converted to CMYK for a print run, go back to the original hex — don't convert the CMYK back. The CMYK round-trip introduces rounding drift that can shift a channel by one or two values, so #2563EB might return as #2563EC. Only run a CMYK-to-hex conversion when print is genuinely your source of truth, such as a logo that exists only as ink specs.

Related Tools