This calculator finds the first limiting factor (bioload, oxygen, or space) and uses that as your recommendation. It accounts for fish mass, waste production, surface area for oxygen exchange, and filtration capacity.
How it works: We calculate multiple constraints (bioload from volume, oxygen from surface area) and take the minimum. Recommended is where most stable tanks live long-term.
Note: Different fish types produce different amounts of waste (bioload). Goldfish and deep-bodied fish need much more space per inch than slim schooling fish.

Not sure how to measure your tank dimensions? We have a complete visual guide with step by step instructions.
Click to see the full measuring guide
Recommended For Your Tank
~45 gal tank
Most likely add-on for larger stock lists and routine water changes.
Stocking plans work better when temperature stays stable.
As an Amazon Associate we earn from qualifying purchases.
You have a stocking plan. Now size the equipment to support it:
Size filtration to handle the bioload you just planned for
Set a maintenance schedule that keeps your stock list healthy
Match heater wattage to your tank and species temperature needs
Get real water volume for accurate medication and treatment dosing
Budget the full build including livestock, filtration, and gear
This calculator finds the first limiting factor (bioload, oxygen, or space) and uses that as your recommendation. It accounts for fish mass, waste production, surface area for oxygen exchange, and filtration capacity.
How it works: We calculate multiple constraints (bioload from volume, oxygen from surface area) and take the minimum. Recommended is where most stable tanks live long-term.
Stocking is the decision that determines whether your aquarium is easy to maintain or a constant struggle. Get it right and the tank practically runs itself: water stays clean, fish behave naturally, maintenance is predictable, and the system is resilient enough to survive a missed water change or a busy week. Get it wrong and you are chasing ammonia spikes, battling algae, treating disease, and wondering why the tank that looked perfect on day one feels like a full-time job by month three.
This guide covers everything the calculator cannot tell you on its own: how to interpret the results, how to build a species list that actually works, how to stock in the right order, what makes some fish cost more biological capacity than others, and how to keep a stocking plan stable over the long term.
How to use this with the calculator above
The calculator gives you a number. This guide helps you turn that number into a species list, a stocking sequence, and a maintenance plan that keeps the tank healthy for years. Read the limiting factor in your result first, then use the relevant sections below to plan around it.
The calculator gives three stocking levels: high stability, moderate stability, and low stability. These are not good/better/best options. They are risk tiers. The right choice for most people is the high-stability number, and here is why.
Beginners should aim for high stability and stay there until they have a year of successful maintenance under their belt. There is no prize for maxing out a tank. A slightly understocked tank is more beautiful, easier to manage, and far more enjoyable than one pushed to its biological ceiling.
The calculator evaluates three independent constraints and reports whichever one limits you first. Understanding which constraint is active changes how you plan the rest of the build.
When bioload is the limiting factor, the tank has enough physical space and oxygen exchange for more fish, but the waste load would exceed what the system can process safely. This is the most common bottleneck and the one most affected by equipment and maintenance choices.
When oxygen is the bottleneck, the tank does not have enough gas exchange at the water surface to support more fish, regardless of filtration or volume. This is more common in tall, narrow tanks, tanks with restricted surface area (tight-fitting lids, floating plant coverage), and warm water (which holds less dissolved oxygen).
When swimming space is the limiting factor, the tank simply is not large enough for more fish to swim, school, or hold territory naturally. This is a hard physical limit. No amount of filtration, maintenance, or plant coverage changes it.
The one-inch-per-gallon rule is the most widely repeated and least accurate stocking guideline in the hobby. It treats all fish as if they produce the same waste, need the same space, and have the same body mass per inch of length. None of that is true.
The calculator above replaces this rule with a multi-constraint model that evaluates bioload, oxygen, and swimming space independently. Use it instead.
Not all inches of fish are equal. The calculator uses archetypes to model the real differences in body mass, waste production, metabolic rate, and activity level between fish types. Understanding these differences helps you build a balanced stock list.
| Archetype | Body mass | Waste output | Space needs | Examples |
|---|---|---|---|---|
| Slim schooling | Low | Low–moderate | Moderate (group) | Neon tetras, rasboras, ember tetras |
| Active schooling | Low–moderate | Moderate | High (length) | Danios, barbs, rainbowfish |
| Deep-bodied / messy | High | High | Moderate | Angelfish, discus, large gouramis |
| Territorial dwarf | Moderate | Moderate | High (territory) | Apistos, dwarf gouramis, bettas |
| Goldfish | Very high | Very high | High | Fancy goldfish, common goldfish, comets |
| African cichlids | High | High | High (territory) | Mbuna, peacocks, haps |
| Bottom dwellers | Moderate | Low–moderate | Low–moderate | Corydoras, otocinclus, kuhli loaches |
When building a mixed stock list, run the calculator for the most demanding species in the tank. That species sets the per-fish capacity ceiling for the entire system.
Fish at the store are almost always juveniles. A 1-inch clown loach will grow to 10+ inches. A 2-inch pleco might become a 15-inch tank buster. Even common community fish like angelfish and gouramis double or triple in size within 6–12 months. If you stock based on what the fish look like on purchase day, you are building a plan that expires.
Before you buy any fish, look up the adult size and enter that number into the calculator, not the current size. Some species that are commonly sold as small juveniles but grow far larger than expected:
If the adult size of a fish does not fit your tank, do not buy it. “I will upgrade later” is the most common broken promise in the hobby.
The calculator tells you how many fish the tank can support biologically. It does not tell you which fish can live together peacefully. Compatibility is the second half of every stocking decision, and ignoring it is one of the fastest ways to turn a well-planned tank into a disaster.
Fish that need fundamentally different water parameters should not share a tank. A neon tetra (soft, acidic, 72–78°F) and an African cichlid (hard, alkaline, 76–82°F) have almost no overlap in ideal conditions. Forcing one species to live in the other’s preferred water means chronic stress, weakened immunity, and shortened lifespan.
Even fish with identical water parameter needs can be incompatible behaviorally. Fin nippers (some barbs, serpae tetras) with long-finned fish (bettas, guppies, angelfish). Fast, aggressive eaters with slow, shy feeders. Territorial bottom dwellers competing for the same cave. Breeding pairs that defend half the tank from everything else.
Fish occupy different vertical zones in the tank: top dwellers (hatchetfish, surface feeders), mid-water swimmers (tetras, barbs, rainbowfish), and bottom dwellers (corydoras, loaches, plecos). A well-stocked tank distributes fish across zones so the space feels full without any single level being overcrowded. Stacking too many species in the same zone creates competition for the same space even when total volume is fine.
Even if your final stock list fits the calculator result perfectly, adding everything at once is a common mistake. The biofilter (beneficial bacteria) grows in response to ammonia production. Doubling the bioload overnight can overwhelm bacteria that were calibrated for a lighter load, causing an ammonia spike even in a fully cycled tank.
The right approach is to stock in waves, waiting 1–2 weeks between each addition for the biofilter to catch up. Here is a general stocking order that works for most community builds:
Hardy foundation fish (week 1–2 after cycle)
Start with the toughest, most adaptable species in your plan. Corydoras, danios, or white cloud mountain minnows are classic first residents. They tolerate minor parameter fluctuations and help establish the biofilter for the fish that follow.
Main schooling groups (weeks 3–6)
Add your primary schools (tetras, rasboras, barbs) in full groups, not one or two at a time. Schooling fish feel more secure and behave better when added as a complete group. Test water parameters before and 48 hours after each addition.
Sensitive or territorial species (weeks 6–10)
More delicate species (discus, dwarf cichlids, specialty shrimp) should go in last when the tank is fully established and parameters are stable. Territorial fish added last also have less time to claim the entire tank as “theirs” before other residents are settled.
Centerpiece fish (when everything else is stable)
If your plan includes a showpiece (a pair of angelfish, a gourami, or a centerpiece cichlid), add them last. They get the benefit of an established, stable environment, and the existing residents help reduce the centerpiece’s tendency to dominate.
Between each wave, test ammonia, nitrite, and nitrate. If ammonia or nitrite reads above 0 ppm, stop adding fish until parameters reset to zero. If nitrate is climbing rapidly, your maintenance schedule may need adjusting before the tank can handle more bioload.
Schooling and shoaling fish are social animals. Keeping them in groups that are too small causes stress, erratic behavior, aggression, color loss, and shortened lifespan. The fish may survive alone or in pairs, but they do not thrive. Minimum group sizes are not suggestions; they are requirements for humane and effective fishkeeping.
If the calculator result says you can keep 8 fish and the species you want needs a minimum group of 6, that leaves very little room for additional species. Either commit to a species-focused tank or choose a species that works in smaller groups.
Two tanks with identical volume can support very different stocking plans depending on their dimensions. The calculator accounts for this through swimming space and surface area calculations, but understanding why helps you make better species choices.
When in doubt, a longer, wider tank is almost always better than a taller one. The extra footprint helps with filtration placement, plant layout, territory division, and oxygen exchange.
The calculator uses your filtration setting as a modifier because it genuinely changes how much bioload the tank can handle. But it is worth understanding the mechanics so you do not overestimate the effect.
The safest approach: stock for the high-stability number, then let water tests confirm whether the system can handle the load. If ammonia and nitrite stay at zero and nitrate stays below 20–40 ppm between water changes, the tank is handling its current bioload well. If nitrate climbs above 40 ppm before your next scheduled change, either reduce feeding, increase water change frequency/volume, or accept that the tank is at its practical limit.
Every new fish is a disease vector. Even healthy-looking fish from clean stores can carry ich, bacterial infections, internal parasites, or other pathogens that only manifest under the stress of transport and acclimation. Adding infected fish directly to a display tank puts every existing resident at risk.
A quarantine setup is simple and cheap: a spare 5–10 gallon tank (depending on fish size), a sponge filter (seeded from the main tank), a heater, a lid, and basic medications on hand. Total cost: $50–$100. That investment protects a display tank worth 10–50x more.
Stocking for juvenile size. Planning around what the fish looks like at the store instead of its adult size. A 2-inch pleco becomes a 15-inch pleco. A 1-inch angelfish becomes a 6-inch angelfish. Always use adult dimensions in the calculator.
Adding everything at once. Dumping the entire stock list into a freshly cycled tank overwhelms the biofilter. Stock in waves over 4–8 weeks, testing between each addition.
Keeping schooling fish in groups that are too small. Three neon tetras is not a school. Three tiger barbs is a fin-nipping gang. Buy the minimum group size (6+) or choose a different species that works in smaller numbers.
Ignoring compatibility. Mixing aggressive and peaceful species, fast and slow eaters, or species with incompatible water parameters. Research every species before adding it to the plan.
Impulse buying at the fish store. “That looks cool” is not a stocking plan. Impulse purchases lead to compatibility problems, overcrowding, and returns that most stores do not accept.
Assuming more filtration fixes everything. Filtration helps with bioload but does not create more swimming space, more territory, or more oxygen in a tank with poor surface exchange. Respect all three constraints, not just the one you can buy your way out of.
A properly stocked tank does not look empty. It looks intentional. The fish have room to swim naturally, schools move together, territories are respected, and the tank feels alive without feeling crowded. Maintenance is predictable: nitrates rise at a manageable rate, water changes keep up, and the filter can handle a day or two of delayed maintenance without a crisis.
If you are constantly asking “can I add one more fish?” the answer is usually that the tank already told you what it wants. The best aquariums are not the ones packed to capacity. They are the ones where every fish has a purpose, every species fits the environment, and the system is stable enough that you can enjoy watching it instead of worrying about it.
A slightly understocked tank is easier to manage, safer through mistakes, more resilient to disruption, and more beautiful than a tank pushed to its biological ceiling. Leave room. The tank will thank you for it.