Gardening With Allen: Straightforward repair for houseplants with gnats


Allen Wilson is a horticultural specialist based out of Vancouver. Email Allen Wilson at

I have a problem with annoying mosquito-type flying insects on my houseplants. I’ve tried several things, some of which were temporarily helpful, but the bugs will be back in a few days. Is there any way to get rid of them forever?

The mosquitoes that you see flying around your houseplants are the adult form of the fungus mosquito. Each adult lives eight to ten days and lays around 300 eggs in the bottom of the plants. The eggs hatch in about four to six days and become larvae that feed on fungi and organic matter in the soil. They also feed on plant roots to a limited extent. After 12 to 16 days, the larvae transform into pupae. The pupae mature into adults, which emerge from the ground in four to six days, and the life cycle starts all over again.

There are several methods of controlling adults and larvae. However, most of them do not affect the eggs or pupae. Therefore, your methods only took a few days. You will need to repeat your treatment every five days to kill the newly developing larvae and adults.

Mushroom mosquitoes are attracted to moist, water-saturated soil. You’ll need to change your watering practices to avoid receiving them again once you’ve removed them. It is common for people to water all of the houseplants at the same time, either on a schedule or when the driest one becomes dry. We can get away with this because most potting soils are well drained and the roots still have adequate oxygen even if they are overwatered. Plants should only be watered individually when the top of the soil becomes dry.

I’ve found the adult mosquitos to be easy to control with a regular household spray cleaner – the kind you could use to clean your countertops. In most cases, you can spray this around plants without damaging them. Moisture can damage plants with fuzzy leaves like African violets. So don’t spray them. In fact, it’s best to water them to avoid getting water on the leaves.