ICE tables for equilibrium, step by step
How to set up and solve an ICE table: finding K from data, finding equilibrium concentrations, the 5% approximation and when you need the quadratic.
An ICE table is a bookkeeping grid for an equilibrium problem. ICE stands for Initial, Change, Equilibrium, and each row is one of those. It turns a word problem into one equation with one unknown, x. Nearly every equilibrium, acid-base and solubility problem in General Chemistry II runs through one, so it is worth getting the procedure automatic.
The seven steps
- Write the balanced equation and the K expression (products over reactants, each raised to its coefficient, pure solids and liquids left out).
- Fill the Initial row with the starting concentrations.
- Fill the Change row with the coefficients times x: negative for species used up, positive for species formed.
- Fill the Equilibrium row as Initial + Change.
- Substitute the equilibrium row into the K expression.
- Solve for x.
- Back-substitute to get each equilibrium concentration, and check by plugging them into K.
The Change row is where the stoichiometry lives. If the equation has a 2 in front of a product, that product's change is +2x, and it gets squared in the K expression.
Which way does it shift? Compare Q with K first
If a problem starts with products already present, you need to know which direction the reaction will go before you assign signs in the Change row. Calculate the reaction quotient Q from the initial concentrations, using the same form as K.
- Q < K: the reaction shifts forward, toward products
- Q > K: it shifts in reverse, toward reactants
- Q = K: it is already at equilibrium
Example: H2(g) + I2(g) ⇌ 2HI(g), Kc = 54.3 at 430 °C. Start with [H2] = [I2] = 0.100 M and [HI] = 0.500 M.
Q = (0.500)^2 / (0.100 x 0.100) = 25.0
Q (25.0) is less than K (54.3), so the reaction shifts forward. Reactants get -x and HI gets +2x.
Type 1: finding K from one equilibrium concentration
Some problems give you the starting amounts and one concentration at equilibrium, and ask for K.
Example: N2O4(g) ⇌ 2NO2(g). A flask starts with 0.100 M N2O4 and no NO2. At equilibrium, [NO2] = 0.0400 M. Find Kc.
| N2O4 | NO2 | |
|---|---|---|
| Initial | 0.100 | 0 |
| Change | -x | +2x |
| Equilibrium | 0.100 - x | 2x |
- 2x = 0.0400, so x = 0.0200
- [N2O4] = 0.100 - 0.0200 = 0.0800 M
- Kc = [NO2]^2 / [N2O4] = (0.0400)^2 / 0.0800 = 0.0200
The key move is using the one known equilibrium value to find x. After that it is arithmetic.
Type 2: finding equilibrium concentrations from K
This is the more common direction. You know K and the starting amounts, and you solve for x.
Example: H2(g) + I2(g) ⇌ 2HI(g), Kc = 54.3 at 430 °C, starting with 0.200 M H2, 0.200 M I2 and no HI.
| H2 | I2 | HI | |
|---|---|---|---|
| Initial | 0.200 | 0.200 | 0 |
| Change | -x | -x | +2x |
| Equilibrium | 0.200 - x | 0.200 - x | 2x |
Kc = (2x)^2 / [(0.200 - x)(0.200 - x)] = 54.3
Both sides are perfect squares, so take the square root instead of expanding:
- 2x / (0.200 - x) = sqrt(54.3) = 7.369
- 2x = 1.4738 - 7.369x
- 9.369x = 1.4738, so x = 0.1573
- [H2] = [I2] = 0.200 - 0.1573 = 0.0427 M
- [HI] = 2(0.1573) = 0.315 M
Check: (0.3146)^2 / (0.0427)^2 = 54.3. It matches.
Look for that perfect-square shortcut whenever the reactants start at equal concentrations and the equation is symmetric. It saves a quadratic.
Type 3: small K and the 5% approximation
When K is small, very little reaction happens, so x is tiny compared with the starting concentration. That lets you replace (initial - x) with just initial, which turns the equation into something you can solve with a square root.
The approximation has to be checked every time: x should be under 5% of the concentration it was subtracted from. If it isn't, go back and solve exactly.
Example: 0.10 M acetic acid, Ka = 1.8 x 10^-5. The ICE table gives Ka = x^2 / (0.10 - x).
- Approximate: x^2 / 0.10 = 1.8 x 10^-5
- x^2 = 1.8 x 10^-6, so x = 1.34 x 10^-3 M
- Check: 1.34 x 10^-3 / 0.10 = 1.3%, under 5%, so the approximation holds
- pH = -log(1.34 x 10^-3) = 2.87
This is the weak acid problem, and how to calculate pH for strong and weak acids covers it in full.
When you need the quadratic
If K is not small compared with the starting concentration, the 5% check fails and you solve the quadratic.
Example: first ionization of 0.10 M H3PO4, Ka1 = 7.5 x 10^-3. Ka1 = x^2 / (0.10 - x).
- Trying the approximation: x = sqrt(7.5 x 10^-4) = 0.0274, which is 27% of 0.10. It fails.
- Rearranged: x^2 + (7.5 x 10^-3)x - 7.5 x 10^-4 = 0
- Quadratic formula: x = [-0.0075 + sqrt((0.0075)^2 + 4(7.5 x 10^-4))] / 2 = 0.0239 M
- pH = -log(0.0239) = 1.62
Keep only the positive root. A negative concentration has no physical meaning, and a root larger than the starting concentration would leave a negative amount of reactant.
Mistakes to watch for
- Putting initial concentrations into K. K uses the equilibrium row only.
- Forgetting coefficients in the Change row. 2HI means +2x, and then (2x)^2 in K.
- Using moles instead of molarity. If the problem gives moles and a volume, divide first.
- Including solids or liquids. They are left out of K and don't get a column.
- Skipping the check. Plugging your answers back into K takes thirty seconds and catches most algebra slips.
Practice
The same table runs through buffers, solubility (Ksp) and complex ions, so it pays to drill it until the setup is automatic. The pH calculator solves the weak acid case both ways, so you can check an ICE table answer and see whether the 5% shortcut was allowed. The Henderson-Hasselbalch equation and buffers uses a moles version of the same table for adding strong acid or base. For the full sequence of topics, see what's in General Chemistry II. Biology's Hardy-Weinberg equilibrium shares the word but not the method: it describes allele frequencies that stay constant, not a reaction with a K. If your equilibrium unit feels shaky from Gen Chem I stoichiometry, stoichiometry step by step is the place to back up to.
ICE table calculations are a full chapter in Encodr's free General Chemistry II deck.
Encodr turns this into a habit: study anything in a feed, and it schedules the rest.
Get started free