The Equilibrium ICE Table, Explained

After reading this you can take a balanced reaction, an equilibrium constant and a set of starting concentrations, build the ICE table by hand, solve for the reaction extent and report every equilibrium concentration with the right sign.

What an ICE table does

A reversible reaction settles at a mixture where forward and reverse rates match. The concentrations stop changing, and the ratio of products to reactants (each raised to its coefficient) equals a fixed number K. An ICE table is the bookkeeping that connects the concentrations you start with to the concentrations you end with.

ICE stands for Initial, Change and Equilibrium. You know the initial row. The change row is written in terms of a single unknown, the reaction extent, because stoichiometry forces every species to change in fixed proportion. The equilibrium row is the sum of the two, and you plug it into the equilibrium expression to solve for the extent.

Consider 2\,\text{NO}_2 \rightleftharpoons \text{N}_2\text{O}_4. If you start with pure \text{NO}_2 and it dimerizes, the amount of dimer that forms is not free: every mole of \text{N}_2\text{O}_4 consumes two moles of \text{NO}_2. One unknown captures the whole system.

When to use it, and when not

The ICE method applies to a single reaction that has reached equilibrium, where you know K in the same concentration units your table uses (mol/L here). It handles the general form a\text{A} + b\text{B} \rightleftharpoons c\text{C} + d\text{D}, and you can drop any species by setting its coefficient to 0.

It does not apply when the system has not equilibrated: that is a kinetics question, not an equilibrium one, so use the Reaction Rate & Kinetics Calculator instead. It also assumes constant temperature, because K is temperature dependent. If you change temperature, you need the K for the new temperature before you start.

A concentration-based K_c and a pressure-based K_p are different numbers unless the moles of gas are balanced on both sides. This solver works in mol/L, so feed it K_c. Converting a tabulated K_p without correcting for (RT)^{\Delta n} is a common source of wrong answers.

The equilibrium expression and the extent

The law of mass action gives the constant as a ratio of equilibrium concentrations:

K = \frac{[\text{C}]^c\,[\text{D}]^d}{[\text{A}]^a\,[\text{B}]^b}

Here [\text{A}] through [\text{D}] are equilibrium concentrations in mol/L, and a, b, c, d are the stoichiometric coefficients. Pure solids and liquids are left out of this ratio; represent them by setting a coefficient to 0.

Now introduce one variable x, the reaction extent per litre. Reactants fall by their coefficient times x, and products rise by their coefficient times x:

K = \frac{([\text{C}]_0 + cx)^c\,([\text{D}]_0 + dx)^d}{([\text{A}]_0 - ax)^a\,([\text{B}]_0 - bx)^b}

The subscript 0 marks an initial concentration. This is one equation in one unknown. Its degree equals the total order, so a simple 2:0 \to 1 reaction gives a quadratic, and larger coefficients give higher-degree polynomials that need a numeric root.

Whether the reaction runs forward or backward is set by comparing the reaction quotient Q (the same ratio evaluated at the initial concentrations) with K. If Q \lt K the numerator is too small, so the reaction moves forward and x \gt 0. If Q \gt K it moves backward and x \lt 0. The solver picks the root that keeps every equilibrium concentration at or above zero.

A worked example matching the demo

Dimerization with K = 4

Use the demo data: 2\text{A} \rightleftharpoons \text{C} with coefficients a=2, c=1, and no B or D. Start at [\text{A}]_0 = 1 mol/L, [\text{C}]_0 = 0, and K = 4.

  1. Check the direction. With [\text{C}]_0 = 0 the quotient Q = 0 \lt 4, so the reaction runs forward and x \gt 0.
  2. Write the equilibrium row. [\text{A}] = 1 - 2x and [\text{C}] = x.
  3. Substitute into K:
    4 = \frac{x}{(1 - 2x)^2}
  4. Clear the denominator: 4(1 - 2x)^2 = x, which expands to 16x^2 - 17x + 4 = 0.
  5. Apply the quadratic formula: x = \frac{17 \pm \sqrt{289 - 256}}{32} = \frac{17 \pm \sqrt{33}}{32}. The two roots are 0.7107 and 0.3518.
  6. Keep the physical root. If x = 0.7107 then [\text{A}] = 1 - 1.421 = -0.421, which is negative and impossible. So x = 0.3518.

Equilibrium concentrations: [\text{A}] = 1 - 2(0.3518) = 0.2964 mol/L and [\text{C}] = 0.3518 mol/L. Check the constant: 0.3518 / 0.2964^2 = 4.004, which rounds to 4. The tiny excess is rounding in x.

The reaction quotient rises with extent and crosses the target value 4 at x = 0.3518, the physical root. Past x = 0.5 the reactant would run out, so the curve stops being physical.

For the demo reaction 2A ⇌ C starting from [A] = 1, the physical extent x solves 4 = x/(1-2x)^2, giving x = 0.3518, so [A] = 0.2964 and [C] = 0.3518. Raising K pushes x toward the ceiling of 0.5; lowering K pushes x toward 0.

Reading and interpreting the results

The solver reports the equilibrium concentration of each species and, implicitly, the extent that produced them. Three things are worth reading carefully.

First, the sign and size of x. A large positive extent means the reaction ran far to the right; a value near zero means the starting mixture was already close to equilibrium. In the demo, x = 0.3518 against a ceiling of 0.5, so about 70 percent of the possible dimerization occurred.

Second, the recomputed Q at the answer should equal K to within rounding. That is the built-in check. If they disagree, the wrong root was chosen or an input is inconsistent.

Third, watch for a species pinned near zero. A very large K drives a limiting reactant almost to exhaustion, and the answer for that species may read as a tiny positive number. That is physical, not an error.

Common mistakes

Always test both roots of the quadratic against the initial amounts. Only the root that leaves every concentration at or above zero is real chemistry. In the demo, the discarded root gave [\text{A}] = -0.421, which is the fast way to spot it.

The frequent errors are these. Forgetting to raise a concentration to its coefficient: with 2\text{A} the reactant term is [\text{A}]^2, not [\text{A}]. Applying the change with the wrong multiple: A falls by 2x, not x. Using the small-x approximation when it is not justified: dropping 2x next to 1 here would give x \approx 4, which is absurd, so the approximation only helps when K is small relative to the initial amounts. Finally, mixing up K_c and K_p, or using a value from a table at the wrong temperature.

Before you even reach the ICE table, make sure the equation is balanced. An unbalanced reaction gives the wrong coefficients and a meaningless constant. The Chemical Equation Balancer handles that, and the Stoichiometry Calculator confirms the mole ratios you are using.

Related tools

Equilibrium sits inside a chain of quantitative chemistry. To get concentrations in the first place, convert masses with the Mole Calculator and formula weights with the Molar Mass Calculator, then switch units using the Concentration Converter. If you prepared your solution by dilution, the Dilution Calculator gives the starting molarity.

For acid and base equilibria specifically, the pH Calculator applies the same mass-action idea to K_a and K_w. Gas-phase work often needs the Ideal Gas Law Calculator to move between pressure, moles and volume, and cell equilibria connect to the Nernst Equation Calculator.

Frequently asked questions

Why does one root give a negative concentration?

The polynomial has as many roots as its degree, but chemistry only allows extents that keep every species at or above zero. In the demo the two roots were 0.3518 and 0.7107; the larger one requires consuming 1.42 mol/L of A when only 1 mol/L exists, so it is rejected.

What if the reaction has only one product or one reactant?

Set the unused coefficient to 0. That species drops out of the equilibrium expression entirely, and the extent equation shrinks accordingly. The demo uses this: B and D are absent.

Does the volume of the container matter?

The solver works entirely in mol/L, so volume is already folded into every concentration. If you know moles and volume separately, divide to get concentration first. For gases that change moles across the reaction, volume changes will shift the position of equilibrium, which is Le Chatelier's principle at work.

How large can K be before the math breaks?

The algebra never breaks, but a very large K drives the limiting reactant toward zero, and the physical root sits extremely close to the ceiling (here 0.5). Numerically this is fine; just read a tiny reactant concentration as near-complete conversion rather than an error.

Can I use activities instead of concentrations?

Strictly, equilibrium constants are defined with activities, and this solver assumes activity equals concentration (the ideal-dilute limit). At high ionic strength that assumption drifts, so treat the numbers as approximate for concentrated solutions.