Chemical equation balancer
Balance a chemical equation with the smallest whole-number coefficients, including ions.
A clear answer. Here’s how.
Builds a matrix with one row per element (plus one for charge, when ions appear) and one column per species, reactants positive and products negative. Exact rational Gaussian elimination finds the null space, which must have exactly one dimension; the solution is scaled to the smallest positive whole numbers. If the equation has no solution, several independent solutions, or needs a zero coefficient, the tool says so. It checks conservation only, not whether the reaction occurs.
See a worked example
Worked example
A fixed demonstration, separate from the values you enter above.
- Equation (separate species with “ + ”)
- C3H8 + O2 -> CO2 + H2O
Example result
| Species | Side | Coefficient |
|---|---|---|
| C3H8 | Reactant | 1 |
| O2 | Reactant | 5 |
| CO2 | Product | 3 |
| H2O | Product | 4 |
Solved exactly: atoms of each element (and net charge, if any) are conserved, using rational arithmetic to find the smallest whole-number coefficients. Write ions as Fe^3+ or SO4^2- and electrons as e^-. Hydrates use a dot, as in CuSO4.5H2O. Balancing checks conservation only; it does not say whether the reaction really happens.