Plant & Species Compatibility

Aquarium Fish and Plant Compatibility: What Goes With What

The mistake is rarely two fish that fight. It is a fish and a plant that want different water, or a goldfish put in with plants it will strip.

Most tank conflicts are not fights. They are two animals, or a plant and an animal, that want different water and are stuck in one box where only one of them can be comfortable. A guppy (Poecilia reticulata) wants hard, alkaline water at pH 7.0 to 8.0 and GH 8 to 20; a neon tetra (Paracheirodon innesi) wants it soft and acidic at pH 5.5 to 7.0 and GH 1 to 8. Put them together and one is always stressed, and the stressed animal is the one that stops eating and fades.

Compatibility is a design problem, not a personality quiz. You match the water, then the temperament and size, then the plants to both. Get the water right and most of the "aggression" complaints disappear on their own.

The short version

  • Run three checks, in order: do the water parameters overlap, do the temperament and adult size match, and can the plants survive both the water and the fish.
  • Match the water first. Soft-water fish (neon tetra, ember tetra) and hard-water fish (guppy, platy) do not belong in the same tank.
  • A goldfish (Carassius auratus) eats and uproots soft plants but leaves the tough ones alone: Anubias, Java fern (Microsorum pteropus), and Vallisneria (Vallisneria spiralis).
  • Bioload is a real limit: a goldfish needs 30 gallons and strong filtration, while a cherry shrimp adds almost nothing.
  • Below: the three checks, a parameter table to copy, and the builds that fail.

Compatibility is three checks, not one

Two fish are compatible when three things line up, not one. First, their water parameters overlap enough that both sit inside their range on temperature, pH, and hardness, say a shared band of 72 to 78 F. Second, neither is big enough to eat the other, fast enough to bully it, or territorial enough to claim the tank. Third, the plants you want can grow in that water and survive what the fish do to them.

Skip the first check and you get the most common beginner tank: a mix of six pretty fish from three different water types, all mildly stressed, none obviously dying, and one bad week away from an outbreak. The fish were never fighting. They were mismatched from the day they went in. This is the whole of plant and species compatibility: three overlaps, checked in order.

Check the water first: temperature, pH, and hardness

Temperature sets the hard boundaries. A neon tetra runs 70 to 81 F and a bronze corydoras (Corydoras aeneus) runs 72 to 79 F, so they share a comfortable 72 to 79 F band. A goldfish at 60 to 74 F and a betta (Betta splendens) at 78 to 82 F have no overlap at all, which is one reason those two never share a tank.

Hardness splits the community fish into two camps. The soft-water crowd (neon tetra at GH 1 to 8, ember tetra at GH 1 to 8, chili rasbora at GH 1 to 6) wants the opposite tap water from the hard-water livebearers (guppy and platy, GH 8 to 28). You can keep either group well; you cannot keep both well in one tank. Test your tap for GH and KH before you buy a single fish, because your water decides your stocking list more than your wish list does.

Then check temperament, size, and bioload

A betta is the clean example of temperament over parameters. It shares water with plenty of fish, but it is territorial, so it fights other bettas, nips slow long-finned tankmates, and hunts shrimp small enough to eat. On paper the numbers match; in the tank the behavior does not.

Size is simpler: a fish eats anything it can fit in its mouth. A 1.2-inch neon tetra is a snack for anything much larger, so a "peaceful" big fish still empties a school of small ones. Bioload is the last check and the easy one to skip: a goldfish produces enough waste to need 30 gallons and heavy filtration, while a colony of cherry shrimp (Neocaridina davidi) adds almost nothing to the load.

The plant side: what survives your fish and your light

Plants carry parameters too, but their bigger compatibility question is what the fish does to them. A goldfish grazes and digs, so it shreds soft stem plants and uproots anything loose, yet it leaves the toughest plants alone: Anubias barteri (Anubias barteri), Java fern (Microsorum pteropus), and Vallisneria. The trick with tough plants is to make them un-uprootable: Java fern and Anubias are epiphytes, so you tie them to wood or rock and never bury the rhizome, and a digging fish cannot pull them up.

Light is the other half. Low-tech, low-light plants (Java fern, Anubias, Cryptocoryne wendtii, all rated low light and no CO2) grow in almost any tank on 6 to 8 hours a day and suit a beginner. Save the light-hungry carpets for a dedicated high-light build; dropping them into a dim community tank just grows algae. Match the plant's light demand to your fixture, not to the photo that sold it to you.

A parameter table to copy

Species Temp (F) pH Hardness (dGH) Min tank Bioload
Betta (Betta splendens) 78 to 82 6.5 to 7.5 3 to 12 5 gal low
Neon tetra (Paracheirodon innesi) 70 to 81 5.5 to 7.0 1 to 8 10 gal low
Bronze corydoras (Corydoras aeneus) 72 to 79 6.0 to 7.5 2 to 12 20 gal medium
Cherry shrimp (Neocaridina davidi) 65 to 78 6.5 to 8.0 4 to 14 5 gal very low
Nerite snail (Neritina sp.) 72 to 82 7.0 to 8.5 6 to 18 5 gal low
Goldfish (Carassius auratus) 60 to 74 7.0 to 8.4 8 to 20 30 gal high

Every number here comes from the database record, not from memory. Read a species page before you buy, and confirm your candidates share a band on all three of temperature, pH, and hardness.

Where community tanks go wrong

The classic failure is the "everything" tank: a betta, a few guppies, a neon school, and a goldfish, bought together because they looked good in the store. That tank holds four water types and two temperature zones, and it slowly stresses every animal in it. Nobody is aggressive; the design is.

The second failure is plants as decoration in a goldfish tank. A goldfish eats soft plants faster than they grow, so a planted goldfish tank means tough epiphytes on hardscape, not a carpet of stems. The third is overstocking on looks: ten fish that each need 10 to 20 gallons crammed into a 10-gallon, where the bioload outruns the filter and the first missed water change spikes ammonia. None of these is bad luck. Each is a compatibility check that got skipped.

Frequently asked questions

Do the pH numbers have to match exactly?

No. You want overlapping ranges and a stable number, not a perfect target. A harlequin rasbora (pH 6.0 to 7.5) and a honey gourami (pH 6.0 to 7.5) overlap cleanly, so a steady 7.0 suits both. A stable pH slightly off a fish's ideal beats a "perfect" pH that swings, so match the tank to your tap and leave it alone rather than chasing numbers with chemicals.

What plants are safe with a goldfish?

The three the goldfish record names as goldfish-proof: Anubias, Java fern, and Vallisneria. Anubias and Java fern are epiphytes you attach to hardscape, so a goldfish cannot uproot them and their leaves are too tough to graze. Vallisneria roots deeply and grows fast enough to outpace nibbling, which is why it survives where soft stems vanish.

Can fish and shrimp share a tank?

Adult cherry shrimp at 1.2 inches survive with small, peaceful fish, but baby shrimp get eaten, so a colony holds rather than booms. The genuinely shrimp-safe fish are the tiny ones with tiny mouths, like a chili rasbora at 0.7 inches. A betta or any fish over about 2 inches will hunt them, which is a whole design question on its own.

Will a betta live in a community tank?

Sometimes, in 10 gallons or more, with calm, non-nippy tankmates and no other betta. A betta shares water happily with snails and, in a heavily planted tank, sometimes small peaceful fish, but its temperament (not its parameters) is the deciding factor. Watch it for a week and keep a backup plan, because some individual bettas will not tolerate any company.

Start from your tap water, not your wish list: test GH and KH, then build a stocking list where every animal and plant shares one temperature and hardness band. Run the combination through the build planner, which checks parameter overlap and bioload for you, or open the livestock database to read each species page. When you are ready to pick the fish, the best fish for a planted tank and what fish can live with shrimp are the next two guides.

Species and gear in this guide

Parameters pulled live from the compatibility database.

Not sure your build will balance? Plan it first.

The build planner turns a setup type, a size, and a water source into a stocked, planted build with a will-it-balance read. Free, and it saves you the first dead tank.

Open the build planner

Want the parameter ranges behind every choice? Browse the compatibility database, or get one build breakdown a week in the newsletter.