do angelfish eat plants?

Plants That Angelfish Won’t Eat (And Why)

Last Updated on: 29th October 2023, 04:22 pm

Some angelfish can’t resist eating plants in their aquarium.

While this might seem harmless, the fish could kill them, allowing ammonia in the tank to rise to harmful levels and reducing the amount of oxygen available.

Angelfish prefer protein-based foods, like pellets, flakes, and live or frozen prey. However, they’ll eat plants if they’re bored or lack fiber.

Plants that angelfish won’t eat include Amazon sword, Anubias nana, java fern, java moss, ambulia, hornwort, water sprite, Anacharis, water wisteria, and Vallisneria. 

Providing the correct tank setup with plants that angelfish are less likely to eat is necessary to create a healthy ecosystem. Also, add vegetables so that the angelfish get enough fiber.

Do Angelfish Eat Plants?

It’s rare for angelfish to eat plants, but it does happen if the fish are bored.

All fish suffer from boredom if their environment does not stimulate them. Angelfish entertain themselves by breeding, hiding in plants, and darting in and out of ornaments.

Signs of angelfish boredom include:

  • Tail biting.
  • Lethargy.
  • Sideways swimming.
  • Reluctance to eat.
  • Staying still at the bottom of the tank.

Angelfish eat plants because they’re malnourished. They need a high-protein, high-fiber diet.

As described by a journal published by Scielo, angelfish need to ingest protein to obtain amino acids. These help to synthesize new proteins or replace existing ones.

While they get plenty of protein through pellets, flake foods, and freeze-dried prey, they don’t always get the necessary dietary fiber.

Angelfish are omnivorous and will eat vegetables, such as peas, zucchini, lettuce, cucumber, and spinach.

These foods are a good source of fiber. However, not all owners know how to feed their fish veggies, so they miss out on this essential nutrient.

Similarly, not all angelfish enjoy the taste or texture of veggies, causing them to become deficient. As a result, they nibble on plants to increase their fiber levels.

The main signs of a fiber deficiency include constipation and indigestion. This can lead to a swollen abdomen and a loss of appetite.

However, your angelfish could also eat your plants because algae have grown on them. If this happens, your angelfish will eat the plants along with the algae.

How To Stop Angelfish From Eating Plants

Your angelfish aquarium needs plants to regulate the tank’s ecosystem and provide oxygen.

They also offer your fish a place to hide when they feel threatened. Similarly, most angelfish lay their eggs on plants where they can’t be found to protect them from aggressive fish.

As a result, allowing your angelfish to eat plants could cause the plants to die.

This increases the chances of ammonia levels rising to dangerous levels. It also leaves angelfish vulnerable to an attack from territorial fish within the tank and allows algae to grow and take over the tank.

To prevent your angelfish from nibbling on plants, try the following:

Feed Vegetables

As mentioned, increasing the angelfish’s fiber levels is crucial if they have a deficiency. Start by adding vegetables to their daily meals, following the same schedule and feeding times.

A few favorite angelfish vegetables include:

  • Zucchini.
  • Broccoli florets.
  • Leafy greens.
  • Spinach.
  • Boiled peas.
  • Lettuce.
  • Cucumber.

If the angelfish don’t like whole vegetables, feed them flakes that contain raw plants. Fish are more likely to eat them if they replicate their usual flakes, and they provide all of the fish’s fiber needs.

how to stop angelfish from eating plants

Increase Meal Portions

Your angelfish may eat plants because you’re not feeding them enough food. Angelfish need two meals a day at regular times.

Not all angelfish have the same appetites, but the most widely accepted rule for figuring out how much food your angelfish needs is to give them as much as they can eat in 30 seconds.

If they eat all the food before the 30 seconds are up, increase their intake, being careful not to overfeed.

This method does take a bit of experimentation to get right. But look for signs of angelfish hunger, which include:

  • Slow or sluggish behavior.
  • Aggression.
  • Waiting at the water’s surface for food.
  • Digging through the substrate to find food.
  • Weight loss.

By feeding your angelfish the correct amount, they should leave plants alone altogether.

Avoid Overcrowding

Tank overcrowding causes many problems, but it can prevent your angelfish from having their fair share of food. Aggressive fish are more likely to bully submissive fish and steal their food. As a result, they eat plants for sustenance to avoid starvation.

A tank should have no more than one angelfish per 10 gallons of water. That said, angelfish thrive in groups of 5-6, as it helps them establish a hierarchy and move about in shoals.

If you have too many community fish alongside your angelfish, remove them and place them in a separate tank so that the angelfish can live together.

Use A Few Fake Plants

While live plants are the safest and healthiest kind, adding a few fake plants helps to maintain tank aesthetics and gives fish a place to hide.

Because artificial plants are predominantly plastic, it stops angelfish from having a nibble and discourages them from eating natural plants.

However, you must clean them to remove any bacteria and algae buildup.

Improve Your Tank’s Setup

As already mentioned, angelfish needs mental stimulation to stay healthy. Without it, they’ll eat plants out of boredom.

Fill the tank with rocks and hiding places to stop them from getting restless. Feed them treats occasionally to give them something to enjoy and distract them from the plants.

Ensure the tank your angelfish are in isn’t too big. Angelfish don’t enjoy rattling around in large aquariums, especially if there’s not even plant life and accessories within it to entertain them.

What Plants Won’t Angelfish Eat?

If you don’t have plants in your angelfish tank or are worried that your fish will nibble on them, there are many plant species available that angelfish won’t touch.

As a result, you’ll benefit from live plants in your tank but won’t have to deal with the hassle of discouraging your angelfish from nibbling on them. The plants that angelfish won’t eat include:

Amazon Sword

Amazon sword is a long, tall plant that reaches 12 to 16 inches when provided with moderate lighting and plenty of CO2. It also anchors its roots into the substrate to keep it strong.

Angelfish won’t eat Amazon sword plants because they provide a better home for laying eggs.

You might see your angelfish preening at the plants, but this is most likely because they are cleaning their eggs. According to the International Journal of Veterinary Science and Medicine, angelfish eggs are prone to mold, so parent feed must clean away fungus and debris.

Similarly, if your angelfish does go for a nibble, the plant grows so fast that it won’t make a difference to its survival.


Ambulia is a fast-growing stem plant. It’s designed to be planted in groups and creates a dense area for angelfish to hide and play.

The plant is fine-leaved and soft enough to eat, but when planted with other live plants, angelfish will be more focused on swimming amongst it and finding new places to shelter.


Anacharis is a stem plant that can be planted or floated. It has small green leaves covering the stem’s length, with a cluster of leaves at the end of each branch.

Most angelfish will avoid eating Anacharis because the leaves are tough. Instead, they’ll use the leaves to lay their eggs. This makes it a hard-wearing addition to any tank.

Anubias Nana

Angelfish prefer to swim through Anubias nana than eat it. It grows lower down, covering the front of the tank and providing angelfish with places to hide.

Anubias nana can be rooted into the substrate or floated, replicating the angelfish’s natural Amazon environment.

The leaves are thick and sturdy, making it difficult for angelfish to nibble. They also make a good space for angelfish to lay their eggs.  

However, the leaves attract algae, so you’ll want to clean it off the plants to stop your fish from being attracted to the leaves. As a result, your fish may eat the leaves by accident to consume the algae.

Java Fern

Java fern is a slow-growing plant that’s popular with beginner angelfish owners. It doesn’t root into the substrate but floats. As a result, it can be tied onto driftwood with string to encourage it to attach to the object.

Angelfish like to rest on java fern or lay their eggs on it. It’s also a hard-wearing plant that can withstand activity within the tank. Therefore, even if your angelfish is tempted to take a bite, it won’t cause much damage.

Java fern is easy to care for and grows well with low to moderate light levels.

Java Moss

Java moss is similar to fern. However, it’s much more effective at hiding newborn fry as it’s bushy and covers everything within the tank. This does mean it can quickly take over the aquarium if it’s not trimmed back once in a while.

Like java fern, it can be tied to driftwood so that it floats, providing angelfish with the opportunity to hide.

It also creates a carpet on the bottom of the tank, providing shelter for angelfish looking for additional food in the substrate, protecting them from the competition.

Java moss is problematic for angelfish to digest, so they prefer to avoid eating it altogether.

how to stop angelfish from eating plants


Hornwort is another large plant that complements the Amazon sword at the back of the tank. Again, it’s another source of shelter and allows angelfish to lay their eggs, protecting them from predatory fish.

Angelfish don’t tend to eat hornwort because they prefer to search for cover amongst the stems. As long as veggies or fiber supplements are incorporated into their diet, they will stay away from hornwort.

Hornwort is an excellent addition to your angelfish aquarium because it’s an oxygenator, supplying angelfish with a healthy supply of O2.

Water Sprite

Water sprite is another excellent plant for sheltering angelfish, as it grows thick and dense because of its fine leaves. It also creates a thick wall if left to grow to its full potential.

Angelfish love swimming through it and use the plant to hide their eggs from other fish in the tank. Water sprite encourages breeding.

It requires lots of maintenance to keep it to a manageable length, but angelfish prefer it as bushy as possible, which prevents them from eating it and encourages them to use it for hiding instead.

Water Wisteria

Water wisteria is a plant that needs anchoring into the gravel. The leaves are too narrow for angelfish to lay their eggs on, but it makes an excellent plant for them to swim in and out of.

It has finely branched leaves and works well as a background plant. The taller you let your plant get, the more privacy it offers angelfish.


Vallisneria is one of the most popular plants for an angelfish tank. It’s low maintenance and cheap and works well in wide aquariums that angelfish prefer.

Vallisneria grows fast in bright lights. However, it grows thick, luscious, and dense. Angelfish love to hide amongst it because they grow tightly together, creating a playground for them.

By focusing on allowing the plant to grow as thick as possible, angelfish will avoid eating it as a snack.

However, some angelfish won’t be able to resist, so you’ll need to distract them from the plant with plenty of tasty vegetables.

If you notice your angelfish chewing on any of these plants, something is amiss.

They’re most likely missing fiber or vegetables from their diet. You may also need to provide more ornaments to mentally stimulate your fish and prevent them from eating the plants.