Aquarium Stocking & Compatibility Calculator
Tell us your tank and your fish. You get a surface-area-first capacity reading and a risk level with trigger conditions and next steps for every compatibility channel — never a yes/no verdict.
Frequently asked questions
How many fish can my tank hold?
There is no single number. The plan is judged on a load index built from each species live load, scaled to your tank by surface area (primary) and true water volume (secondary). The output is a risk band with trigger conditions and next steps, because the community itself does not agree on one threshold.
Why surface area instead of gallons?
Gas exchange and territory scale with the water surface. The same 40 gallons behaves differently in a long tank than in a tall one, which is why the surface area reading carries the primary weight (0.45 of the tank capacity factor) and the gallon-only answer is shown as a comparison.
Is one inch of fish per gallon accurate?
It is a historical rule. It was widely used and is now widely criticised: it ignores bioload, adult size and behaviour. We show the inches-per-gallon figure for context only, never as the verdict.
What if my fish is not in the list?
The tool still gives a mouth-size fallback: a fish eats anything that fits in its mouth, so tank-mates should stay in the same adult size class. The result is marked as not covered by the species library, so treat it as a lower bound.
How long until my tank is overstocked?
The growth timeline converts adult size into an estimated time band (6-9 months for fish under 2 inches, up to 24-48 months for fish over 12 inches; 24-36 months for goldfish). It is an estimate, not a promise - feeding, temperature and individual variation change it.
Does a bigger filter change the result?
Filtration matters, but this first version treats an unknown filter as unknown rather than as passing. Use the nitrate caliber and the water-change calculator to see whether filtration keeps up in practice.
Can I keep these two species together?
You get four independent channels: temperature overlap, pH overlap, hardness overlap, and aggression plus mouth size. Each returns a risk level with a trigger condition and a next step. Two peaceful species can still differ as individuals, so watch the first two weeks.
What if my tank is not cycled?
Then the correct answer is zero fish for now. The tool returns a veto until ammonia and nitrite read 0 ppm, and it will not give you a stocking number that pretends otherwise.
Do shrimp and snails count toward stocking?
Yes, they carry a small live load and are included. Their adult size is often missing from the library, so the growth timeline degrades honestly instead of inventing a number.
Why does the tool ask for my tap-water nitrate?
Because the target is source water + 10 ppm, capped at 20 ppm. If your source already reads 20 ppm, the usual target is unreachable without treating the water - the tool says so instead of showing a false pass.
Sources & rule confidence
Every rule baked into this calculator traces to a community source and carries a confidence grade. A = multiple independent community confirmations; B = consistent direction, edge cases remain; C = direction only, numbers are reference values. We show disagreements instead of hiding them.
- D11 · A Surface area is the criterion: long tanks > standard > tall; never judge by gallons-per-table lookup.
- D12 · A A cube tank is not equivalent to a rectangular tank of the same volume — compare footprint, not gallons.
- A16 · B Filtration turnover: filter GPH at or above tank gallons x 10.
- C9 · B YouTube-side restatement of A16: GPH >= gallons x 10, presented as a flow-rate calculator.
- D19 · B Filter GPH at or above tank gallons x 4 (10 gallons -> 40 gph) — a looser caliber that conflicts with the x10 rule by 2.5x.
- B22 · B More capacity comes from stronger filtration + more frequent water changes + dense planting + a bigger tank; stronger filtration alone is not enough.
- B3 · B The real stocking criterion is bioload, decoupled from body length alone.
- B4 · B Nitrate is the practical water-quality ceiling: keep it under 20 ppm, or under source water + 10 ppm; a source already above the target makes the target unreachable.
- B5 · B Aggression — who chases or eats whom — is a core compatibility channel, not a footnote.
- B7 · B Overstocking has no absolute answer: the tool should output risk level, trigger conditions and next steps, never a yes/no verdict.
- B18 · B Compatibility can only be tested in practice, at the cost of injured fish: output a risk level plus trigger conditions, never a yes/no verdict.
- B19 · B Risk is bidirectional: ask both whether the fish eats others and whether others will bite it.
- B20 · B Schooling fish need a minimum group of 6 (stricter sources say 10+); below that they hide and stress.
- B21 · B Schooling fish need tank length, not just volume; surface area is the broader criterion.
- B26 · B Temperament depends on the individual: a species-level peaceful label cannot carry a verdict by itself.
- B27 · B Juveniles are not adults: a cute 1-inch fish needs room to grow, and adult size drives the plan.
- B1 · C One inch of fish per gallon is a historical rule: widely used, widely criticised, and not a basis for a verdict (shown only as context).
- B10 · B Fancy goldfish: roughly 20-30 US gallons for the first fish, with large disagreement in the community.
- B11 · B Goldfish tanks are a function of time: growth is fastest in the first 2-3 years, so a static answer goes stale.
- B12 · B Any fish needs at least 5 US gallons.
- B13 · B Betta minimum: 5 US gallons in community practice (with a 2.5-gallon maintenance floor and European legal minimums higher).
- B30 · B Temperature: goldfish 65-75 F; tropical community 75-80 F with a heater.
- D1 · B Veto rules exist: some species should never be kept together, and some have survival rates too low to recommend.
- D5 · B Cycling is not a one-time event but the growth of the biofilter capacity; the question is whether fish can be added now.
- D17 · B Source-water nitrate is a required input: well water can start at 20 ppm, making the target unreachable without treating the source.
- D20 · C Mouth-size fallback: a fish eats anything that fits in its mouth, so tank-mates should stay in the same size class; works without a species database.
- D21 · B If the tank is not cycled, the correct answer is zero fish for now.
- D22 · B Leave a maintenance-error margin: do not fill the calculated capacity exactly.
- D28 · C Mass-based density: about 15 kg of fish per 1000 L (15 kg/m3), or roughly 1 cm of fish per liter — a parallel caliber, not a verdict.
- D29 · B When the schooling minimum collides with the tank volume, output a veto: a pair of schooling fish often hides, stresses and dies within weeks.
- D27 · A Standard US tank footprints: 20H = 24x12 in, 20L = 30x12 in.
- D31 · B Tank bottoms are not always flat rectangles — measure the actual base area.
Species fields (adult size, temperature, pH, hardness range, live load, group minimum) are compiled independently from a 908-species reference library; warning text is written by gillcalc. Thresholds marked C are order-of-magnitude, not targets.
Disclaimer
All figures are estimates for freshwater community aquariums and do not replace the product label, a water test kit, or professional advice. When a rule on this page is graded C or marked estimate-grade, treat the numbers as an order of magnitude, not a target.