ForHosting KIT · Images

CMYK to RGB converter

Turn a CMYK swatch into everything a screen needs at once: C0 M50 Y100 K0 gives RGB 255, 128, 0 and the hex code #FF8000, ready to paste into a stylesheet. Out-of-range inks are refused, never quietly fixed. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
C
0
M
50
Y
100
Key
0
You get
Cyan
0
Magenta
50
Yellow
100
Key
0

Print designers, prepress operators, and front-end developers often receive brand swatches as cyan, magenta, yellow, and key percentages from layout files or ink recipes, yet need red, green, and blue integers for screens, CSS, design tokens, or image pipelines. This CMYK to RGB converter accepts four percentages in the zero to one hundred range, runs a deterministic device-independent conversion, and returns rounded RGB channels from zero to two hundred fifty-five, plus a nested rgb object, a CSS rgb() string, and an uppercase hex code you can paste into stylesheets. Any percentage outside zero to one hundred fails with a clear invalid input error so bad ink values never become a silent clamp.

Entering CMYK percentages and what the conversion computes

Provide four numbers named c, m, y, and k for cyan, magenta, yellow, and key (black). The engine treats each percentage as an ink coverage fraction by dividing by one hundred. It then applies the classic device-independent formula used across web and graphics teaching materials: red equals two hundred fifty-five times one minus cyan over one hundred times one minus key over one hundred; green uses magenta with the same key factor; blue uses yellow with the same key factor.

Results are rounded to the nearest integer and clamped to the zero through two hundred fifty-five byte range so floating-point edge cases never emit out-of-band channels. Pure key one hundred with zero cyan, magenta, and yellow yields black RGB zeros; zero ink on all four channels yields white two hundred fifty-five on every channel.

Print-to-web brand handoffs

Convert CMYK swatches from print brand books into RGB and hex so marketing sites and apps show consistent on-screen previews of the same ink recipes.

Design system and token pipelines

Automation that starts from CMYK brand colours derives RGB channels and CSS strings for themes, documentation, and component libraries without silent clamping of bad percentages.

What happens if a percentage is outside 0–100?

Each of c, m, y, and k must be between 0 and 100 inclusive; out-of-range values are rejected and not charged.

Are RGB values integers or fractions?

Red, green, and blue are integers from 0 to 255 inclusive, matching common sRGB channel usage in CSS and image APIs.

Is the CMYK to RGB converter free?

The browser tool runs free on your device.

What hex code does C0 M50 Y100 K0 give?

It gives #FF8000, which is red 255, green 128 and blue 0. You also get the same color as an RGB line, so you can paste whichever form your stylesheet or design file uses.

What do pure black and blank paper convert to?

Full black with no cyan, magenta or yellow gives RGB 0, 0, 0. Zero ink on all four channels gives white, with 255 on red, green and blue.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/color/cmyk-rgb

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/color/cmyk-rgb \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"c":0,"m":50,"y":100,"k":0}'
{
  "c": 0,
  "m": 50,
  "y": 100,
  "k": 0
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "color.cmyk_rgb",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Entering CMYK percentages and what the conversion computes

Each value must be a finite number between zero and one hundred inclusive; decimal and integer strings such as "50" or "12.5" are accepted, and the aliases cyan, magenta, yellow, key, and black map to the same fields when you prefer longer names. Identical inputs always produce identical JSON because the path is pure arithmetic with no network, no random seed, and no wall clock.

Reading RGB channels, CSS strings, and hex output

The RGB result appears as r, g, and b integers from zero to two hundred fifty-five, duplicated under red, green, and blue, and nested inside an rgb object with the same three keys. Common checks: full yellow with zero other inks approximates bright yellow on screen; high cyan and magenta with low yellow and key trend toward blue-violet; equal high cyan, magenta, and yellow with zero key produce a muddy dark grey rather than pure black, which is why print workflows use the key channel. On success the response echoes the input percentages c, m, y, and k, then exposes the same values again under the long names cyan, magenta, yellow, and key so UI code and SDK demos can pick short or long labels without extra mapping. Two ready-to-paste formats are included: rgb_css is a classic CSS function string such as rgb(255, 128, 0), and hex is an uppercase six-digit hash-prefixed code such as #FF8000. The method field is always cmyk_to_rgb so downstream routers can branch without sniffing shapes. Missing any required percentage, non-numeric values, and any percentage outside zero to one hundred all fail with invalid_input and are not charged after the engine rejects the request.

API usage, pricing, design workflows, and practical limits

Call the free in-browser CMYK to RGB converter for brand handoffs, lecture demos, and quick screen previews without installing a colour library. Authors shipping SDKs can map r, g, and b directly into canvas fills, CSS custom properties, or design tokens without reimplementing the conversion in every language. Send a JSON body with required numbers c, m, y, and k in the published zero to one hundred range. Use the prepaid API when a design system, e-commerce swatch tool, print-to-web pipeline, or grading harness needs a stable contract under KIT balance at $0.002 per successful item; validation failures never consume balance after the engine rejects the request. Prefer this endpoint when search intent and product framing are specifically CMYK to RGB with strict percentage bounds; for multi-format conversion among HEX, RGB, HSL, LAB, and CMYK in one call, use the broader colour converter elsewhere in the catalogue, and for RGB to HSL alone use the dedicated RGB to HSL converter. This formula is device-independent and excellent for web previews and teaching; it is not a substitute for ICC profile transforms or press-calibrated soft proofing when absolute print match is required.

Teaching and grading colour math

Courses and coding assessments check student CMYK→RGB answers against deterministic JSON, with a clear invalid_input when any percentage falls outside 0–100.

How do I convert CMYK to RGB with this tool?

Send JSON with c, m, y, and k set to numbers from 0 to 100 (for example c: 0, m: 50, y: 100, k: 0). The response includes r, g, b, rgb_css, hex, and a nested rgb object.

Can I use aliases like cyan, magenta, yellow, key, or black?

Yes. The fields cyan, magenta, yellow, key, and black are accepted as aliases for c, m, y, and k so clients can use either short or long ink names.

Read the full KIT documentation →