Actual yield calculator
A reaction with a theoretical yield of 10 g and a percent yield of 85 should give 8.5 g of product. Enter both values and get the expected actual yield in the same unit, plus the yield as a decimal fraction. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Theoretical yield of product
- 10
- Percent yield
- 85
- Fraction
- 0.85
- Actual yield
- 8.5
Percent yield links the ideal stoichiometric ceiling of a reaction to the amount of product you actually expect to recover after side reactions, incomplete conversion, and handling losses. In the standard classroom formula the actual yield equals the theoretical yield multiplied by the percent yield divided by one hundred. Negative percent yield is rejected as invalid input so pipelines never treat an impossible recovery rate as a valid start. Values above one hundred percent remain allowed because impure samples and measurement error can push reported yields past the theoretical mass.
What actual yield means and which numbers to send
Theoretical yield is the maximum amount of product you would obtain if every limiting reactant molecule converted cleanly and you recovered everything. Percent yield is the fraction of that ceiling you actually obtain, expressed as a percentage so eighty five means eighty five percent of theoretical. Multiply theoretical yield by percent yield over one hundred to get the expected actual yield in the same unit you used for theoretical—grams, moles, milligrams, or any other consistent scale.
Negative percent yield is invalid input because a recovery rate below zero is not a physical laboratory outcome for this formula; zero percent is allowed and correctly produces zero actual yield. Percent values greater than one hundred are accepted without clamping so wet-lab data that slightly exceeds the theoretical mass still runs through the same path. A classic classroom check is ten grams theoretical at eighty five percent, which yields eight point five grams actual product expected.
What you can do with it
Lab prep and yield planning
Technicians estimate how much product to label or store when a prep sheet already lists theoretical grams and a historical recovery percentage.
FAQ
What happens if percent yield is negative?
Negative percent yield is not a valid recovery rate; the field must be non-negative. Validation failures are not charged.
Can percent yield be greater than 100?
Yes. Values above one hundred are allowed without clamping so impure samples or measurement error can still be processed; only negative values are rejected.
Is the actual yield calculator free?
The browser tool runs free on your device.
Does this compute theoretical yield from moles?
No. It only multiplies an already-known theoretical yield by the percent fraction. Use a stoichiometric theoretical-yield step first if you still need product moles from a limiting reactant.
What unit is the actual yield given in?
The same unit you used for the theoretical yield. Enter grams and you get grams; enter moles or milligrams and the answer comes back in moles or milligrams, with no conversion.
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/chem/actual-yield-from-percent \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"theoretical_yield":10,"percent_yield":85}'const res = await fetch("https://api.kit.forhosting.com/chem/actual-yield-from-percent", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"theoretical_yield": 10,
"percent_yield": 85
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/chem/actual-yield-from-percent",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"theoretical_yield": 10,
"percent_yield": 85
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/chem/actual-yield-from-percent", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"theoretical_yield":10,"percent_yield":85}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"theoretical_yield":10,"percent_yield":85}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/chem/actual-yield-from-percent", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"theoretical_yield": 10,
"percent_yield": 85
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "chem.actual_yield_from_percent",
"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
This capability accepts those two numbers, multiplies them with deterministic arithmetic, and returns a structured JSON result that homework checkers, lab notebooks, and curriculum tools can pin in tests without embedding a spreadsheet or a full chemistry CAS.
What actual yield means and which numbers to send
Send the required field theoretical_yield as a finite non-negative number; aliases theoretical, theo_yield, and yield_theoretical are accepted when your client prefers shorter names. Send percent_yield as a finite non-negative number, with aliases percent, pct_yield, and yield_percent. Identical inputs always produce identical JSON because the path is pure arithmetic with no network, no model, no random seed, and no wall clock.
Reading the response: actual yield, fraction, formula, and method
Validation failures such as a negative percent yield mention that negative percent yield is not allowed so students can correct a sign error without reading a stack trace. On success the response echoes theoretical_yield and percent_yield after stable rounding, fraction as percent_yield divided by one hundred so UIs can show either a percent or a decimal without recomputing, and actual_yield as the product of theoretical_yield and fraction. The formula field restates actual_yield equals theoretical_yield times percent_yield over one hundred for quick display in worked solutions, and method is always percent_of_theoretical so downstream routers can branch without sniffing shapes. Use actual_yield alone when a form only needs the answer cell; use theoretical_yield, percent_yield, and fraction together when a lab report or tutoring step sheet must reprint the inputs next to the result. Missing theoretical_yield, missing percent_yield, non-finite numbers, and a negative theoretical yield also raise invalid_input and are not charged after the engine rejects the request.
API usage, pricing, lab workflows, and practical limits
Call the free in-browser actual yield calculator for homework checks, lecture demos, and quick bench planning without installing a spreadsheet formula library. Multi-step syntheses are not modeled as a chain inside one call; run the identity once per step using each step theoretical ceiling and its own expected recovery percentage. Source inputs follow the same retention rules as other KIT parse items. Send a JSON body with theoretical_yield and percent_yield as numbers or numeric strings. Use the prepaid API when a tutoring platform, coding-assessment sandbox, LIMS integration, or curriculum generator needs a stable contract under KIT balance at $0.002 per successful item; validation failures never consume balance after the engine rejects the request. Pair this endpoint with a theoretical yield step such as moles times stoichiometric ratio when you still need to compute the ceiling from a balanced equation, then feed that theoretical mass or mole amount into this calculator with the planned or measured percent yield. Authors shipping SDKs can map theoretical_yield, percent_yield, and actual_yield into labeled inputs Theoretical yield, Percent yield, and Actual yield—the same columns students write when they rearrange percent-yield tables by hand on paper.
Integration use cases
Homework and exam verification
Students enter theoretical yield and percent yield, compare expected actual product against structured JSON, and get a clear error when a negative percent is submitted by mistake.
Tutoring apps and LIMS integrations
Curriculum tools and lab systems call a stable prepaid endpoint instead of reimplementing theoretical times percent over one hundred in every language.
Technical questions
How do I calculate actual yield with this calculator?
Send JSON with theoretical_yield set to the theoretical product amount and percent_yield set to the recovery percentage. The response includes actual_yield equal to theoretical times percent divided by one hundred.