Beef steak doneness temperature lookup
Medium rare is 135 °F, or 57 °C, at the center of the steak. Pick the doneness you want and get the target internal temperature in both scales from one fixed chart, ready for your probe thermometer. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Doneness
- medium rare
- Doneness
- medium_rare
- Label
- medium rare
- Temperature (°F)
- 135
- Temp c
- 57
Steak doneness is a search people type when a recipe says medium rare and they need the thermometer number, not a vague color description. This beef steak doneness temperature lookup turns a single doneness phrase into fixed target internal temperatures in Fahrenheit and Celsius from a stable culinary chart.
How beef doneness maps to internal temperature
Whole-muscle beef steak doneness is a ladder of internal temperatures that home cooks and restaurant kitchens use as pull targets before resting. Blue or extra rare sits coolest at one hundred fifteen Fahrenheit (forty-six Celsius). Rare is one hundred twenty-five Fahrenheit (fifty-two Celsius).
Medium rare, the most requested restaurant default, is one hundred thirty-five Fahrenheit (fifty-seven Celsius). Medium is one hundred forty-five Fahrenheit (sixty-three Celsius). Medium well is one hundred fifty Fahrenheit (sixty-six Celsius).
Well done is one hundred sixty Fahrenheit (seventy-one Celsius). These are fixed chart targets for lookup and display, not a live feed from a regulator and not a substitute for thermometer technique or food-safety training. The capability does not estimate cook time from thickness, does not model carryover rise during rest, and does not convert oven dial settings; those are different search intents with different tools.
What it does provide is a deterministic dictionary so that medium rare always returns the same pair of numbers, which is exactly what dual-unit recipe cards, LMS quizzes, and kitchen apps need when they refuse to invent physics.
Where a steak doneness temperature lookup shows up in real work
Home cooks translating a medium-rare request into a probe number avoid the classic mistake of guessing from color alone when every lookup comes from one chart. Food bloggers and cookbook editors publish dual-unit lines and need one oracle so Fahrenheit and Celsius never drift between drafts of the same steak chapter. Recipe apps that store doneness as a user preference can resolve the label once and store numeric targets for alerts when the probe hits the pull temperature.
Culinary schools teach doneness literacy; a deterministic chart makes quizzes and demos reproducible across classrooms without arguing over which blog table is correct. Meal-kit and restaurant POS flows can map a ticket note of med rare to numbers before they display a station cue. Content pipelines that normalize free-text cook instructions can replace ambiguous phrases with canonical keys and fixed temperatures before re-emitting localized copy.
If you later need oven preheat conversion among Celsius, Fahrenheit, and heat labels, treat that as a separate search intent and landing rather than overloading this steak-doneness page; the same house keeps those tools distinct so SEO and product contracts stay clear.
What you can do with it
Probe thermometer presets
Map a user choice of medium rare to 135 °F / 57 °C so a grill app can alert at the pull temperature.
Dual-unit steak recipe cards
Editors emit consistent Fahrenheit and Celsius targets from one fixed doneness chart for every cut.
Culinary quiz and LMS checks
Grade doneness-to-temperature items with a deterministic oracle that rejects unknown labels cleanly.
FAQ
Which doneness levels are supported?
blue (extra rare), rare, medium rare, medium, medium well, and well done, plus short forms such as med rare, mr, med well, well, and wd.
What temperature is medium rare?
This chart uses 135 °F (57 °C) as the medium rare target. Other levels: rare 125 °F / 52 °C, medium 145 °F / 63 °C, well done 160 °F / 71 °C.
What does it cost?
The browser tool is free and runs locally.
What internal temperature is a well-done steak?
A well-done steak is 160 °F, which is 71 °C, the warmest step on the chart. Medium sits at 145 °F (63 °C) and rare at 125 °F (52 °C).
Does it tell me how long to cook the steak?
No. It gives only the target internal temperature. It does not estimate cooking time from thickness, does not model the rise while the meat rests and does not convert oven settings, so use a thermometer to know when to pull it.
Related tools
For developers — API access
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.
API endpoint
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.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/cook/doneness-temp-beef \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"doneness":"medium rare"}'const res = await fetch("https://api.kit.forhosting.com/cook/doneness-temp-beef", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"doneness": "medium rare"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/cook/doneness-temp-beef",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"doneness": "medium rare"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/cook/doneness-temp-beef", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"doneness":"medium rare"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"doneness":"medium rare"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/cook/doneness-temp-beef", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"doneness": "medium rare"
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "cook.doneness_temp_beef",
"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.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |
Technical notes
Enter rare, medium rare, medium, medium well, well done, or blue, plus common short forms such as med rare or well, and receive the canonical level name with temp_f and temp_c. The table is intentionally fixed so recipe apps, quiz tools, and API clients always agree on the same medium-rare target instead of scraping conflicting blogs. Unknown labels fail with a clear invalid_input message listing known levels.
How beef doneness maps to internal temperature
Validation runs first: missing doneness, empty strings, and unknown phrases fail with invalid_input and are not charged. Aliases such as med rare, mr, medium-rare, well, and wd normalize to the same rows as the full English phrases so free-text forms stay forgiving without becoming fuzzy AI classification.
What you send and what you get back
Send one required field named doneness, a string such as medium rare or rare. Example: well done yields one hundred sixty Fahrenheit and seventy-one Celsius. Use the free browser form while standing at the grill with a probe thermometer, then call the same contract from scripts when you generate bilingual recipe cards or validate that a user-selected doneness maps to a numeric set point. The same value may arrive under common aliases level, doneness_level, cook, cooking, or done when you reuse form field names from other kitchen tools. Matching is case-insensitive; hyphens and underscores collapse to spaces, so Medium-Rare and medium_rare both resolve. On success the response includes doneness as a stable snake_case key (for example medium_rare), label as the human phrase, temp_f and temp_c as integers from the fixed chart, known_levels as the list of accepted English labels, plus formula and method strings that document the table lookup for audit logs. Example: doneness equal to medium rare yields doneness medium_rare, label medium rare, temp_f one hundred thirty-five, and temp_c fifty-seven. Unknown strings such as sous vide or chicken fail with invalid_input and a message that lists known levels so clients can show a picker instead of retrying blindly. Pricing for successful API calls is the published base of $0.002 per item; validation failures do not consume prepaid balance. Wire temp_f and temp_c into smart thermometer presets, and use label for human-facing copy next to the probe reading.
Where a steak doneness temperature lookup shows up in real work
Because this capability is a pure parse engine, API pricing is the published base of $0.002 per successful item and failed validation does not consume balance.
Technical questions
How does the beef steak doneness temperature lookup work?
It normalizes your doneness phrase, resolves common aliases, and returns fixed target internal temperatures in °F and °C from a six-level table (blue through well done).
What happens if I send an unknown doneness?
The request fails with invalid_input and a message listing known levels. Failed validation is not charged.