How to Convert CMYK to RGB
โ Back to Blog
How to Convert CMYK to RGB
ยท 6 min read
CMYK and RGB: Two Fundamentally Different Color Models
RGB (Red, Green, Blue) is an additive color model used for emissive devices (monitors, phone screens), creating colors by mixing red, green, and blue light โ all channels at 0 is black, all at maximum is white. CMYK (Cyan, Magenta, Yellow, Key/Black) is a subtractive color model used for printing, creating colors through ink absorbing light โ all inks at 0% is white (paper color), all at 100% is theoretically black.
Mathematical Formula for CMYK to RGB Conversion
CMYK values are typically expressed as percentages (0โ100) or decimals (0โ1). The formula to convert to RGB (0โ255) is:
/* CMYK to RGB Formula */
/* Input: C, M, Y, K all as decimals 0-1 */
R = 255 ร (1 - C) ร (1 - K)
G = 255 ร (1 - M) ร (1 - K)
B = 255 ร (1 - Y) ร (1 - K)
Example: CMYK(0.5, 0.2, 0, 0.1)
R = 255 ร (1 - 0.5) ร (1 - 0.1) = 255 ร 0.5 ร 0.9 = 114.75 โ 115
G = 255 ร (1 - 0.2) ร (1 - 0.1) = 255 ร 0.8 ร 0.9 = 183.6 โ 184
B = 255 ร (1 - 0.0) ร (1 - 0.1) = 255 ร 1.0 ร 0.9 = 229.5 โ 230
RGB: rgb(115, 184, 230)
If CMYK values are in percentage form (0โ100), divide by 100 to convert to decimals before applying the formula. Final RGB values must be rounded to integers.
JavaScript Implementation
function cmykToRgb(c, m, y, k) {
// Normalize to 0-1 range if given as 0-100
if (c > 1) { c /= 100; m /= 100; y /= 100; k /= 100; }
const r = Math.round(255 * (1 - c) * (1 - k));
const g = Math.round(255 * (1 - m) * (1 - k));
const b = Math.round(255 * (1 - y) * (1 - k));
return { r, g, b };
}
// Usage with 0-100 values
cmykToRgb(50, 20, 0, 10); // { r: 115, g: 184, b: 230 }
// Usage with 0-1 values
cmykToRgb(0.5, 0.2, 0, 0.1); // { r: 115, g: 184, b: 230 }
Why Converted Results Don't Match Actual Printed Colors
Mathematical CMYK-to-RGB conversion only provides an approximation, not an exact color match. Reasons include: printed colors are affected by paper type, ink brand, and printer characteristics; different CMYK color profiles (like CMYK Coated vs Uncoated) have different color mappings; CMYK gamut is smaller than sRGB gamut, but can be more vivid in some colors (like deep blues), losing out-of-gamut color information during conversion.
Color Management in Real Work
For projects that need to work both on screen and in print, the correct approach is: use professional tools like Adobe Illustrator or Photoshop that support color profiles; specify correct color spaces (like Adobe RGB or sRGB for screen, CMYK Coated FOGRA39 for European printing); let the software perform profile conversions rather than manually calculating with formulas; and always proof-print on actual materials to verify color results.
Reverse: RGB to CMYK Conversion
function rgbToCmyk(r, g, b) {
r /= 255; g /= 255; b /= 255;
const k = 1 - Math.max(r, g, b);
if (k === 1) return { c: 0, m: 0, y: 0, k: 100 }; // Black
const c = (1 - r - k) / (1 - k);
const m = (1 - g - k) / (1 - k);
const y = (1 - b - k) / (1 - k);
return {
c: Math.round(c * 100),
m: Math.round(m * 100),
y: Math.round(y * 100),
k: Math.round(k * 100)
};
}
rgbToCmyk(115, 184, 230);
// { c: 50, m: 20, y: 0, k: 10 }
Correct Handling of Brand Colors in Print
When your brand has specified HEX or RGB colors and you need to convert them to CMYK for printing: input the HEX/RGB value in Photoshop or Illustrator, use soft proofing to preview the print result, adjust CMYK values until the screen preview is close to the desired print result, then communicate with the printer and confirm with a proof print. Pure mathematical formula CMYK values are just a starting point, not a final answer.
Try the online tool now โ no installation, completely free.
Open Tool โ
Try the free tool now
Use Free Tool โ