Aquarium Stocking and Cycling, Explained

After reading this you will know how to judge whether a freshwater tank is sensibly stocked using bioload rather than the old inch-per-gallon rule, and why the filter must be cycled before any fish go in.

What bioload means and why length cubed matters

A fish tank is a small chemical reactor. Fish eat, then excrete ammonia (\text{NH}_3) through their gills and waste. Ammonia is toxic to fish at concentrations above roughly 0.02 mg/L. The job of the filter and the plants is to remove it faster than the fish produce it. "Stocking level" is really a question about that balance: is the tank producing more ammonia than it can process?

The amount of ammonia a fish produces tracks its metabolic mass, and mass tracks body volume. Volume scales with the cube of length. That single geometric fact overturns the popular inch-per-gallon rule. Consider a 5 cm tetra and a 10 cm gourami. The gourami is twice as long, so its body volume, and its waste output, is about 2^3 = 8 times larger, not twice as large.

So the calculator scores each fish against a 5 cm reference fish using the cube of its length. One 10 cm fish counts as roughly eight reference fish. Six 3 cm tetras count as 6 \times (3/5)^3 = 6 \times 0.216 = 1.30 reference fish. A school of small fish is far lighter on the tank than a couple of big ones.

When to use this, and when not to

Use this estimate when you are planning a peaceful freshwater community tank and want a sanity check on numbers. It answers one question: given the water volume and how you filter it, is the total waste production reasonable? That is a real constraint and worth checking before you buy fish.

Do not treat the result as a full stocking plan. The model ignores several things that matter just as much as bioload.

The score says nothing about behavior. A tank can read 60% stocked and still be a disaster if you keep three tiger barbs (they need groups of six or more) or two male bettas (they will fight). Territory, schooling minimums and temperament are separate constraints. Always check the needs of each species alongside this number.

The model also assumes adult sizes. Fish grow. A 2 cm juvenile gourami that reaches 8 cm will increase its own bioload by (8/2)^3 = 64 times. Enter adult lengths, not the size in the shop tank.

The stocking formula

Start from the geometry. Convert tank dimensions to a raw volume in litres:

V_{\text{raw}} = \frac{L \times W \times H}{1000}

Here L, W and H are length, width and height in centimetres, and the divisor 1000 converts cubic centimetres to litres. Substrate, rock and decor take up space that never holds water, so the usable volume is smaller:

V_{\text{eff}} = V_{\text{raw}} \times 0.90 \times f_{\text{plant}} \times f_{\text{filter}}

The 0.90 factor removes about 10% for substrate and decor. The plant factor f_{\text{plant}} rewards live planting because plants consume nitrate: use 1.00 for few plants and about 1.10 when well planted. The filter factor f_{\text{filter}} rewards biological filtration capacity: roughly 0.90 for light, 1.00 for standard, 1.15 for heavy or oversized.

Now the bioload. Each species contributes a reference-fish count:

B = \sum_{i} n_i \left( \frac{\ell_i}{5} \right)^{3}

n_i is the number of that species, \ell_i is its adult length in centimetres, and the divisor 5 is the reference length. The stocking percentage compares total bioload to capacity, where one reference fish needs about 3 litres of effective volume:

S = \frac{B \times 3}{V_{\text{eff}}} \times 100\%

A single fish grown from 2 cm to 12 cm: its reference-fish score rises from 0.064 at 2 cm to 1.0 at 5 cm to 13.8 at 12 cm, following the cube of length divided by 5.

Worked example with the demo data

An 80 by 35 by 40 cm planted community tank

The demo loads a tank of 80 by 35 by 40 cm, well planted, standard filtration, with four species. Work it through.

  1. Raw volume: 80 \times 35 \times 40 = 112000 cm³, which is 112 litres.
  2. Effective volume: 112 \times 0.90 \times 1.10 \times 1.00 = 110.9 litres. The decor loss and the planting bonus nearly cancel.
  3. Bioload, species by species. Neon tetra 3 cm, 10 fish: 10 \times (3/5)^3 = 10 \times 0.216 = 2.16. Guppy 4 cm, 6 fish: 6 \times (4/5)^3 = 6 \times 0.512 = 3.07. Corydoras 6 cm, 6 fish: 6 \times (6/5)^3 = 6 \times 1.728 = 10.37. Dwarf gourami 8 cm, 1 fish: 1 \times (8/5)^3 = 4.10.
  4. Total bioload: 2.16 + 3.07 + 10.37 + 4.10 = 19.7 reference fish.
  5. Stocking percentage: S = (19.7 \times 3) / 110.9 \times 100 = 53.3\%.

The tank reads about 53% stocked, comfortably in the OK band. Notice how the six corydoras (10.4) and the single gourami (4.1) together carry three quarters of the load, while the ten neon tetras carry only 2.2. That is the cube law at work: the small schooling fish are cheap, the bottom feeders and the gourami are expensive.

The six 6 cm corydoras dominate, and one 8 cm gourami outweighs all ten tetras. Fish count is a poor guide to load.

Reading the results

The percentage falls into three plain bands.

OK (up to about 85%)
The filter and plants can keep pace with normal feeding and weekly maintenance. The demo tank at 53% sits here with room to spare.
Caution (about 85% to 110%)
Workable, but with little margin. Expect more frequent water changes and watch for ammonia after heavy feeding or a filter cleaning.
Overstocked (above about 110%)
Waste production likely outruns processing. Remove fish, upgrade filtration, or change water much more often.

The tool also reports how many more of your smallest species would fit. In the demo, the smallest is the 3 cm neon tetra at 0.216 reference units each. The remaining capacity is (110.9/3) - 19.7 = 37.0 - 19.7 = 17.3 reference units, so about 17.3 / 0.216 \approx 80 more neons in theory. That headroom is a bioload figure only; schooling and swimming space would cap the real number far below 80.

Finally the suggested weekly water change scales with stocking. A tank near 50% might need 20% of volume weekly; one in the caution band often wants 40% or more. Water changes dilute nitrate, the end product the cycle leaves behind.

The fishless cycle

Before any fish go in, you grow the bacteria that will process their waste. This is the nitrogen cycle running in your filter: ammonia is oxidised to nitrite (\text{NO}_2^-) by one group of bacteria, then nitrite to nitrate (\text{NO}_3^-) by another. Nitrate is far less toxic and is removed by water changes and plants.

You add a pure ammonia source (bottled ammonia or fish food) to feed the bacteria before they exist. The bacterial populations grow roughly exponentially once seeded, which is why the curves rise slowly then steeply. The typical six-week shape:

Ammonia is dosed up first, peaks around week one, then falls as the first bacteria establish. Nitrite spikes next and clears by roughly week four. Nitrate then climbs, and the cycle is done when both ammonia and nitrite read zero within 24 hours of a fresh dose.

The cycle is finished when a dose of ammonia to about 2 mg/L is fully converted to zero ammonia and zero nitrite within 24 hours. Do a large water change to drop the accumulated nitrate below 20 mg/L, then add fish. Rushing this is the single most common cause of early fish deaths.

Bacterial populations double on a timescale of hours to a day under good conditions, which is why the same doubling arithmetic used in the Bacterial Growth Calculator describes the rising phase of the cycle.

Common mistakes

Four errors account for most overstocked tanks.

  • Using juvenile sizes. Enter adult length. A common pleco reaches 40 cm and scores (40/5)^3 = 512 reference fish on its own, more than any home community tank can support.
  • Trusting inch-per-gallon. That rule is linear in length and ignores the cube. It underestimates big fish by a wide margin.
  • Counting nominal volume. A "112 litre" tank holds less water once substrate and rock go in. Use effective volume.
  • Adding all fish at once to an uncycled tank. The filter cannot keep up, ammonia spikes, and fish die. Cycle first, then stock gradually.

Related tools

If you keep or breed fish, a few other biology tools connect naturally to this one. Use the Punnett Square Calculator to predict color and fin patterns in a guppy or betta cross, and the Hardy-Weinberg Equilibrium Calculator to reason about allele frequencies across a breeding population. For molecular work, the DNA and RNA Sequence Toolkit handles transcription and GC content, and the Michaelis-Menten Kinetics Calculator models the enzyme rates that underlie the ammonia-oxidising steps of the nitrogen cycle.

Frequently asked questions

Why is the cube law better than inch per gallon?

Waste output tracks body volume, and volume grows as the cube of length. Inch per gallon is linear, so it treats a 10 cm fish as twice a 5 cm fish when the real ratio is about eight to one. For tanks with any large fish, inch per gallon badly overstocks them.

What does 3 litres per reference fish assume?

It is a rule of thumb calibrated so that a well-filtered, lightly planted community tank of typical 3 to 6 cm fish lands in a safe range. It is a planning figure, not a hard biological limit. Species with high oxygen or space needs will feel crowded well before the number does.

Can plants replace water changes?

Partly. A heavily planted tank consumes nitrate and lets the model credit about 10% more effective volume. Plants do not remove ammonia and nitrite fast enough on their own during cycling, and they rarely eliminate the need for water changes in a stocked tank.

How long does the fishless cycle really take?

Usually four to six weeks at 24 to 27 degrees Celsius. Seeding the filter with media from an established tank can cut this to one or two weeks. Cold water slows the bacteria, so a tank at 18 degrees can take twice as long.

The tool says my tank is fine but the fish look stressed. Why?

Bioload is only one constraint. Stress usually comes from behavior: too few of a schooling species, aggressive tank mates, or too little swimming space. Check schooling minimums and temperament for each species; the calculator does not model them.