ForHosting KIT · Home, food & hobbies

Beer SRM color estimator

50 malt color units in a 5-gallon batch give an MCU of 10 and just over 7 SRM, an amber beer. Enter your grain bill's color units and the batch volume to place pale lagers, ambers and stouts on one scale. 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
Malt color units
50
Batch volume
5
You get
Mcu
10 SRM
Srm
7.239808
Ebc
14.262421
Color name
amber

Homebrewers, recipe authors, and brewery planning tools often need a Standard Reference Method color before the first mash, not a photograph or a guessed adjective. Malt color units already fold grain weight and Lovibond rating into one number; dividing that total by batch volume in US gallons yields MCU, and the published Morey power law turns MCU into SRM so pale lagers, ambers, and stouts sit on the same numeric scale used on BJCP scoresheets and commercial labels. This beer SRM color estimator applies that fixed formula only: SRM equals 1.4922 times MCU raised to 0.6859. It also reports the European Brewery Convention figure as SRM times 1.97 and a short color-name band for display.

What malt color units, MCU, and SRM mean

MCU is that total divided by batch volume in US gallons, the same gallons used when homebrew software quotes a five-gallon or ten-gallon batch. Treating MCU itself as SRM is acceptable only for very pale beers; once MCU climbs, beer does not darken in a straight line because more light is absorbed and the visual scale compresses. Dan Morey's 1995 power law, now the default in recipe software, models that curve as SRM equals 1.4922 times MCU to the power 0.6859.

The companion EBC value is SRM times 1.97, the conventional ASBC-to-EBC factor, so European labels can sit next to American ones. Results are planning estimates; laboratory SRM is a spectrophotometer reading of diluted beer, and late specialty malts or fruit can still shift the glass after the grain bill is locked.

What to enter, what you get and when it fails

Numbers are rounded to six decimal places so goldens stay byte-stable across runtimes. Example: fifty malt color units in five US gallons yields MCU ten and SRM about 7.26, an amber band typical of a lightly kilned pale ale. Example: two hundred malt color units in five gallons yields MCU forty and a brown-range SRM.

Pin those deterministic products in tests so recipe cards and browser widgets stay aligned across releases.

Where a beer SRM color estimator earns its keep

Recipe sites and homebrew blogs need a single source of truth when a post lists a grain bill and a batch size so readers see a consistent SRM note instead of conflicting forum guesses. Brewery planning sheets and tap-room menus can attach estimated SRM and EBC to house recipes without standing up a spectrophotometer. Competition worksheets and BJCP study tools can convert MCU to SRM for style-range checks before a brew day.

Failed validation does not consume balance. Document that results are Morey estimates, keep US-gallon volume in product copy, and you get reproducible brewing math for homebrewers, CMS blocks, and edge workers without hosting your own color spreadsheet.

Recipe sites and homebrew blogs

Turn a published grain-bill MCU total plus batch gallons into a stable SRM and color-name note so readers see the same estimate on every page load.

Tap-room menus and competition sheets

Attach estimated SRM and EBC to house beers and BJCP worksheets without a lab spectrophotometer reading of finished beer.

What happens if batch volume is zero or negative?

Non-positive volume cannot form MCU and is not billed.

Is this a laboratory SRM reading?

No. It is the deterministic Morey estimate from the grain bill. Lab SRM is a spectrophotometer assay of diluted beer; specialty malts, fruit, and boil darkening can still shift the glass.

How do I work out malt color units?

For each malt, multiply its weight in pounds by its Lovibond rating and add the results together. Enter that total with the finished batch volume in US gallons; dividing one by the other gives the MCU.

Why doesn't the color rise in a straight line with more dark malt?

Because darker beer absorbs more light and the visual scale compresses. Treating MCU as SRM only works for very pale beers, so the Morey curve from 1995 bends the result as MCU climbs.

How do I get the EBC color?

Multiply the SRM by 1.97, the usual conversion factor. The result shows both figures, so a European label can sit next to an American one without a separate calculation.

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/cook/beer-srm-color

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/cook/beer-srm-color \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"malt_color_units":50,"batch_volume":5}'
{
  "malt_color_units": 50,
  "batch_volume": 5
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "cook.beer_srm_color",
  "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.

Missing fields, non-numeric strings, negative malt color units, and a non-positive batch volume fail with invalid_input instead of inventing a tint.

What malt color units, MCU, and SRM mean

Malt color units are the brewing shorthand for grain color contribution: each malt addition adds pounds of grain times that malt's Lovibond rating, and the batch total is the number you send as malt_color_units. This endpoint applies those published constants and nothing else: no mash-efficiency fudge, no boil-length darkening, and no roast-oxidation term. A color_name band from colorless through pale straw, gold, amber, copper, brown, and black is derived from the computed SRM for UI copy.

Input contract, response shape, and error behaviour

POST a JSON body with two required finite numbers. malt_color_units is the grain-bill total of pounds times Lovibond and must be non-negative; aliases include mcu, color_units, mcu_total, and malt_mcu. batch_volume is finished-batch volume in US gallons and must be strictly positive; aliases include volume, volume_gal, gallons, batch_gal, and wort_volume. Each field may arrive as a JSON number or as a numeric string. Missing fields, empty strings, non-numeric text, negative malt color units, and a zero or negative batch volume fail with invalid_input naming the field and are not billed. On success the body echoes malt_color_units and batch_volume, reports mcu as their quotient, srm from the Morey power law, ebc as SRM times 1.97, color_name as a short band, unit always SRM, formula restating the two-step rule, and message for UI copy.

Where a beer SRM color estimator earns its keep

Recipe-builder apps that already store pounds, Lovibond, and gallons can sum malt color units client-side and call this endpoint for the Morey transform instead of copying constants into every client.

Recipe-builder and brew-log apps

Sum pounds times Lovibond in the client, send malt_color_units and batch_volume, and store the Morey SRM next to each recipe version.

How does the beer SRM color estimator work?

Send malt_color_units (non-negative Σ pounds × °Lovibond) and batch_volume (positive US gallons). The API computes MCU as their quotient, then SRM = 1.4922 × MCU^0.6859 (Morey 1995).

Are malt color units the same as MCU?

MCU is malt_color_units divided by batch volume in US gallons. Send the grain-bill total (pounds × Lovibond) as malt_color_units; do not pre-divide unless you also send volume as 1.

What does the beer SRM color estimator cost?

The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →