Science & engineering

Limiting reagent and theoretical yield calculator

Balance a reaction, find the limiting reagent from masses or moles, and get the theoretical yield, leftover reactants and percent yield.

Limiting reagent and theoretical yield calculator
Esc to restore

Your inputs

Reactants and products separated by ->, species by +, such as Fe2O3 + CO -> Fe + CO2. State symbols such as (g) are ignored.

A formula, an amount and a unit (g, kg, mg, mol or mmol), such as H2 4.0 g or O2 1.5 mol. Reactants left out are assumed to be in excess.

For a percent yield: a product, an amount and a unit, such as H2O 30.0 g.

Results update as you type. Larger files run when you press Update result.

Your result

Your result will appear here.

More actions

Your inputs stay in this browser. Nothing is uploaded or saved.

A clear answer. Here’s how.

Balances the equation exactly (the smallest whole-number coefficients that conserve every element, found with rational arithmetic; coefficients you wrote are checked and replaced if they do not balance). Masses are turned into moles with molar masses from the IUPAC conventional standard atomic weights in this site’s periodic table (H 1.008, C 12.011, N 14.007, O 15.999 and so on). For each reactant given, moles ÷ coefficient is how many times the reaction could run on it; the smallest value, the reaction extent ξ, decides the limiting reagent. Each product forms ν·ξ moles (the theoretical yield, also in grams), each excess reactant keeps n − ν·ξ, and the bar chart shows moles ÷ coefficient for every reactant. Percent yield = actual ÷ theoretical × 100. The calculation assumes the reaction goes to completion with no side reactions and that the amounts are of pure substances; it does not handle solution volumes and concentrations, gas volumes or equilibria.

How this is checked

5 reference checks passed These 5 cases were run when this page was built, on 20 October 2026, and all reproduce within the stated tolerance. The same cases are part of the automated tests that run on every change to Toolmoz. Engine version 1.

See the checks and where each expected answer comes from
  1. Case 1

    Inputs
    The tool’s default inputs
    Expected, and what Toolmoz gave
    Limiting reagent expected H2, Toolmoz H2Theoretical yield of H2O (g) expected 35.74404761904762, Toolmoz 35.74404761904762O2 left over (g) expected 0.25595238095238093, Toolmoz 0.25595238095237804
    Where the expected answer comes from
    Python fractions with H 1.008 and O 15.999: n(H2) = 4.00/2.016, ÷ 2 = 0.99206 is below n(O2) = 32.0/31.998 = 1.00006, so H2 limits; H2O = 1.98413 mol × 18.015 = 35.744 g, O2 left 0.25595 g
    Allowed difference
    ±1e-12 relative
  2. Case 2

    Inputs
    Chemical equation (balanced or not) N2 + H2 -> NH3Reactant amounts, one per line N2 28.0 g H2 6.00 g
    Expected, and what Toolmoz gave
    Balanced equation expected N2 + 3 H2 → 2 NH3, Toolmoz N2 + 3 H2 → 2 NH3Limiting reagent expected H2, Toolmoz H2Theoretical yield of NH3 (g) expected 33.791666666666664, Toolmoz 33.791666666666664
    Where the expected answer comes from
    Python fractions: 28.0/28.014 = 0.99950 mol N2, 6.00/2.016 ÷ 3 = 0.99206, so H2 limits and NH3 = 2 × 0.99206 × 17.031 = 33.79 g
    Allowed difference
    ±1e-12 relative
  3. Case 3

    Inputs
    Chemical equation (balanced or not) Si + N2 -> Si3N4Reactant amounts, one per line Si 2.00 g N2 1.50 g
    Expected, and what Toolmoz gave
    Limiting reagent expected Si, Toolmoz SiTheoretical yield of Si3N4 (mol) expected 0.0237, Toolmoz 0.02373746365200878Balanced equation expected 3 Si + 2 N2 → Si3N4, Toolmoz 3 Si + 2 N2 → Si3N4
    Where the expected answer comes from
    OpenStax Chemistry 2e, Example 4.12: silicon is limiting and complete reaction gives 0.0237 mol Si3N4 (three significant figures)
    Allowed difference
    ±0.00005 absolute
  4. Case 4

    Inputs
    Chemical equation (balanced or not) CuSO4 + Zn -> Cu + ZnSO4Reactant amounts, one per line CuSO4 1.274 gActual yield of one product (optional) Cu 0.392 g
    Expected, and what Toolmoz gave
    Theoretical yield of Cu (g) expected 0.5072, Toolmoz 0.5072468014185285Percent yield expected 77.3, Toolmoz 77.2799353103385
    Where the expected answer comes from
    OpenStax Chemistry 2e, Example 4.13: 1.274 g CuSO4 with excess zinc, 0.392 g Cu obtained; theoretical yield 0.5072 g and percent yield 77.3%
    Allowed difference
    ±0.05 absolute
  5. Case 5

    Inputs
    Chemical equation (balanced or not) CCl4 + HF -> CF2Cl2 + HClReactant amounts, one per line CCl4 32.9 gActual yield of one product (optional) CF2Cl2 12.5 g
    Expected, and what Toolmoz gave
    Percent yield expected 48.3, Toolmoz 48.33370258730598Balanced equation expected CCl4 + 2 HF → CF2Cl2 + 2 HCl, Toolmoz CCl4 + 2 HF → CF2Cl2 + 2 HCl
    Where the expected answer comes from
    OpenStax Chemistry 2e, Example 4.13 Check Your Learning: 12.5 g CF2Cl2 from 32.9 g CCl4 and excess HF is a 48.3% yield
    Allowed difference
    ±0.05 absolute

What this shows: the engine reproduces independently worked values for these cases. It does not prove every possible input is right. To test an answer you were given, see how to check a number; to see what is and is not checked across Toolmoz, see the accuracy ledger.

See a worked example

Worked example

A fixed demonstration, separate from the values you enter above.

Chemical equation (balanced or not)
2 H2 + O2 -> 2 H2O
Reactant amounts, one per line
H2 4.00 g
O2 32.0 g
Actual yield of one product (optional)

Example result

Example result
SpeciesRoleCoefficientMolar mass (g/mol)Moles givenMass given (g)Moles ÷ coefficientMoles used or formedMass used or formed (g)Moles leftMass left (g)
H2Reactant (limiting)22.0161.9841269841340.9920634920631.98412698413400
O2Reactant (in excess)131.9981.00006250391321.000062503910.99206349206331.7440476190.0079990118430.255952380952
H2OProduct218.0151.9841269841335.744047619

Balanced exactly with rational arithmetic. Each reactant amount is divided by its coefficient; the smallest quotient (the reaction extent) limits the reaction, every product forms at coefficient × extent, and excess reactants keep the rest. Molar masses use the IUPAC conventional standard atomic weights in this site’s table (for example H 1.008, C 12.011, N 14.007, O 15.999). Reactants without an amount are assumed to be in excess. The theoretical yield assumes complete reaction with no side products.