Skip to content
Previous article
Now Reading:
The Best Plants for Fish Ponds

The Best Plants for Fish Ponds

If you have a fish pond, aquatic plants are important to balance the ecosystem and add a nice aesthetic touch. The right plants will help keep the water clean by filtering out nutrients, oxygenating the water, and providing shade and places for your fish to hide from predators. Before adding any plants to your pond, research and see which will benefit your pond the most. Some plants are better at filtering or can be a tasty snack for your fish. Learn more about the best plants for fish ponds. 

Floating Plants

Aquatic plants that live on the pond's surface are called floating plants. These plants are essential for providing shade, absorbing nutrients, and making algae compete for sunlight. Floating plants also help protect your fish from birds and other predators, giving them places to hide so they're harder to find. Some floating plants have roots that your fish can eat, while others are great for egg-laying.

The best floating plants for your fish pond

Water lilies

Water lilies are a traditional pond plant that koi especially love. They will eat their roots and lay eggs under the large leaves. 

Water Lotus

Like water lilies, water lotus is a pretty floating plant, but koi and other fish tend to find it less tasty.

Creeping Jenny

Koi and other fish find Creepy Jennys a real treat, which is helpful as a pond owner because this aquatic plant is considered invasive in some areas and can take over a pond. It grows nicely on rocks and water features. 


Watercress is great at absorbing excess water nutrients, helping keep your pond clear. They're invasive (check first to see if this plant is banned in your area), but koi and other fish will help keep it under control.

Mosaic Plant 

The blooms on a Mosiac Plant attract essential pollinators, and the leaves help absorb nutrients and other contaminants in the water. It is edible for fish but often isn't a favorite. 


Koi and goldfish love eating Duckweed, and it's excellent for oxygenating your pond water. This plant is invasive and can overgrow if your fish don't eat it quickly enough. 


Aquatic plants have their root systems below the surface, but their stems and flowers grow out of the water. Emergent plants are great for the edges of the pond to help protect fish from predators that may try to hunt them from land. Their roots help filter the water, while flowers can attract pollinators. Emergent plants are essential for the pond's ecosystem, providing places for fish and other creatures to lay their eggs. 

The best emergent plants for your fish pond 

Sweet Flag

Sweet Flag is an emergent plant that koi and other fish typically don't enjoy eating. It's excellent for creating places for your fish to hide from predators. This plant makes a great habitat for younger frogs and other pond critters.

Water Iris 

While Water Iris is a popular choice because of its pretty flowers, it also effectively absorbs nutrients in the water. Planting Water Iris on the edge of the pond can help prevent erosion. The Water Iris's flowers attract pollinators like bees and butterflies, which help the other plants in your garden. 

Soft Rush

Adding Soft Rush to the perimeter of your pond can help filter out any runoff. This plant absorbs nitrogen and phosphorous, commonly found in fertilizers, that can enter the pond after a storm. 

Water Mint

Water Mint is a pleasantly fragrant plant that is great at filtering out nutrients in the water. Its flowers attract butterflies and other pollinators when it blooms in the summer. Koi and other fish typically won't eat this plant. 


Smartweed is a plant that koi and other fish will snack on. This plant is a vital food source for small mammals and birds. It also provides an above-water habitat for frogs, turtles, and other small pond critters, while its roots are a place for fish to hide and feel safe. 

Pickerel Weed

Butterflies and bees love to drink the nectar of Pickerel Weed's flowers, while dragonflies and insects lay eggs on stems. Your fish will enjoy eating the larvae once the eggs hatch. It's a pretty plant that helps add color to your pond.


This is an interesting plant to add to the perimeter of your fish pond because it can help deter predators because it is often toxic to animals but not fish. Taro adds shade to the water and gives fish and other small creatures places to hide along the pond's edge. 


Aquatic plants that grow entirely underwater are called submerged. You can add submerged plants to the deeper areas of your pond. These plants help oxygenate the water and provide good hiding spots for your fish. Fish may enjoy nibbling on the roots, or you can use plant baskets to help avoid snacking. 

The best submerged plants for your fish pond


This plant is good at oxygenating and absorbing the nutrients that algae need to bloom. Hornwart is hearty and easy to grow. Koi and other fish will enjoy eating its roots. 


Eelgrass helps filter the water, but koi and other fish don't tend to find it as tasty as Hornwort. Eelgrass gives fish places to hide in the bottom of the pond as it grows. 


Farnwort helps to oxygenate the water and provides a safe place for koi and other fish to lay their eggs. 

The right aquatic plants can make maintaining your fish pond easier by absorbing nutrients and filtering out nitrogen, phosphorous and other contaminants while adding oxygen to the water. Some plants add shade to the surface, while others have stalks and root systems that protect fish from predators. Adding a variety of floating, emergent, and submerged plants gives your pond a natural look while your fish can get all the benefits these different types of plants have. Before adding any plants, see which are fish favorites for snacking and which will filter and help oxygenate the best. 



Your cart is currently empty.

Start Shopping

Select options