The internet handed me a miracle: pour watered-down hydrogen peroxide into the pot, watch the soil fizz, and your fungus gnats are gone. One viral post called it a one-day cure. I had three pothos pots hosting a thriving gnat colony last spring, so instead of taking the claim on faith, I split the pots into a small test. What I found is more useful than the myth: peroxide works, but only on one of the four life stages, and that gap is exactly why so many people drench, celebrate, and then watch the gnats come back.

Here is the full breakdown, including the numbers from my own pots.

What Does a Peroxide Drench Actually Do in the Soil?

The standard recipe is 1 part 3% hydrogen peroxide mixed with 4 parts water, poured through the pot until it runs from the drainage holes. The fizzing you hear is the peroxide breaking down into water and oxygen when it meets organic matter and the enzyme catalase, which is present in soil microbes, roots, and insect tissue.

That oxidising burst is genuinely lethal to fungus gnat larvae, the translucent, black-headed maggots about 4 to 6 mm long that live in the top few centimetres of damp potting mix. Larvae the solution physically contacts are killed within minutes. In my test, I drenched one pot, waited 30 minutes, then tipped out the top 3 cm of mix and counted: plenty of dead larvae, none moving. The claim is not fabricated. On larvae, it works.

The drench also does no meaningful harm to the plant at that dilution. Roots tolerate the brief oxygen spike; some growers argue they enjoy it. My drenched pothos never blinked.

Why Do the Gnats Come Back a Week Later?

Because a fungus gnat is only a larva for part of its life, and peroxide touches nothing else.

The common houseplant species, Bradysia coprophila and its relatives in the family Sciaridae, cycle through egg, larva, pupa, and adult in roughly 17 days at 24 °C. A single female lays 100 to 150 eggs in damp soil in her one-week adult life. Here is how each stage fares against a drench:

  • Eggs: protected by a smooth outer layer and often tucked into crevices the liquid flows past. Most survive.
  • Larvae: killed on contact, but only where the solution actually reaches. Larvae deeper in the root ball or in dry pockets the water channels around are missed.
  • Pupae: encased and largely unaffected.
  • Adults: airborne. A soil drench cannot touch the twenty gnats drifting around your face while you pour it.

So a Tuesday drench kills that day's larvae, and by the following Monday the surviving eggs have hatched into a new generation while the surviving adults have laid hundreds more. In my test, the drenched-only pot showed new larvae on day 6 and visible adults again by day 9. The myth is not that peroxide kills larvae. The myth is that killing larvae once ends an infestation.

What Happened When I Ran the Three-Pot Test?

I gave each infested pothos a different treatment for three weeks and checked a yellow sticky card in each pot every few days. Rough adult counts per card:

Treatment Day 0 Day 10 Day 21
Peroxide drench only (once) 22 14 19
Dry-out only (no water until top 5 cm dry) 25 11 4
Peroxide + dry-out + fresh sticky cards 21 6 0

The drench-only pot rebounded almost to its starting count. Drying alone did most of the real work, because larvae need consistently damp soil and the fungi that grow in it; letting the top 5 cm dry between waterings starves and desiccates them. But the combination cleared the pot completely, and faster: the drench knocked down the larval population immediately, drying prevented the next generation, and the cards removed egg-laying adults.

If your watering habit is the root cause, and it usually is, start with the overwatering warning signs and the full fungus gnat elimination plan.

Verdicts, based on my testing and the published biology:

Sticky traps. Not a cure on their own, but essential monitoring and they remove egg-layers. The trap comparison test covers which style catches most.

BTI (Bacillus thuringiensis israelensis). The strongest larvicide option: a bacterial toxin specific to fly larvae, sold as granules or dunks you steep in your watering can. Unlike peroxide it keeps working for days and reaches wherever water reaches. If I could pick only one product, it would be this, and the US EPA lists it among reduced-risk biological controls.

Cinnamon, chamomile tea, vinegar bowls. Vinegar bowls catch fruit flies, which are a different insect entirely; if your flies hover near the fruit bowl rather than the pots, check fungus gnats vs spider mites and friends before treating anything.

Neem oil drench. Slower than peroxide but with residual effect against larvae. Useful in rotation.

A final habit worth keeping: every new plant sits in quarantine for two weeks before joining the shelf. Two of my three original infestations arrived in nursery pots.

Frequently Asked Questions

Q: What is the exact hydrogen peroxide ratio for a fungus gnat drench?

A: Mix 1 part standard 3% hydrogen peroxide with 4 parts water. Pour slowly across the whole soil surface until it drains freely. Stronger mixes gain little and risk root damage; weaker household mixes fizz less against larvae.

Q: The soil didn't fizz when I poured the peroxide. Did it work?

A: Fizzing means the peroxide met catalase, which is abundant in living soil, so a silent pour usually means old, degraded peroxide. Check the expiry date; an opened bottle loses strength within a few months. Fresh 3% solution almost always bubbles audibly in potting mix.

Q: Can I drench with peroxide every time I water?

A: You could, but it is pointless as a routine. Peroxide breaks down within hours and has no residual effect, and repeated dosing keeps oxidising the beneficial microbes in your mix. Use it as a one-off knockdown, then control moisture.

Q: Will a peroxide drench kill the eggs my gnats already laid?

A: Mostly not. Eggs are laid in crevices and survive brief contact, which is why adults reappear within 7 to 10 days of a single drench. Plan on three weeks of dry-topped soil and sticky cards to outlast the egg and pupa stages.

Q: My gnats are in a self-watering pot that never dries. What then?

A: Peroxide alone will fail there, because the constantly moist mix is a permanent nursery. Switch to BTI in the reservoir water, top the soil with 1 to 2 cm of coarse sand, and let the wick or reservoir run dry for a week if the plant tolerates it.

Hydrogen peroxide earns a "partly true" verdict: a real larvicide with zero staying power. Use it as the opening strike, then win the war with dry topsoil, sticky cards, and patience measured against a 17-day life cycle rather than a weekend. Before you treat, confirm the culprit with our pest identifier tool.