If I’m being honest, toilet cleaning isn’t the most glamorous chore, but it’s one of those things that instantly changes the feel of your bathroom. A clean toilet makes the whole space seem fresher, while a neglected one can make even a sparkling sink and shower feel off. The problem? Store-bought toilet cleaners are usually loaded with harsh chemicals and overpowering scents that will make your eyes water.
That’s why I started experimenting with these DIY toilet bowl cleaner ideas using pantry staples like baking soda, vinegar, citric acid, and essential oils. They’re budget-friendly, effective, and safe to use if you’ve got kids or pets around. Plus, you can whip most of these up in less time than it takes to run to the store.
Below, you’ll find 15 different DIY toilet cleaner recipes that actually work. Some fizz, some foam, some scrub – but all of them will leave your bathroom feeling clean without the chemical overload.
Disclaimer: These DIY toilet bowl cleaner recipes are for household cleaning purposes only and should never be ingested. Always wear gloves when mixing or scrubbing to protect your skin, and keep all cleaners out of reach of children and pets. Essential oils can be irritating if they come into contact with skin or eyes, so handle with care. If you have a septic system, test small amounts first to ensure the ingredients are safe for your plumbing. These recipes are for informational purposes only and are not a substitute for professional cleaning advice.
This post contains affiliate links. We earn a small commission from each sale. You will not be charged anything extra for using the link.
1. Baking Soda & Vinegar Fizz
This is a classic go-to cleaner, perfect for lifting everyday stains and freshening up the bowl.
You’ll Need:
- 120 g (½ cup) baking soda
- 240 ml (1 cup) white vinegar
Method:
- Sprinkle the baking soda around the inside of the bowl.
- Slowly pour in the vinegar and let it fizz.
- Close the lid and wait 10 minutes.
- Scrub with a toilet brush and flush.
Tip: Add 3 drops of lemon essential oil to the vinegar for extra freshness.
2. DIY Toilet Cleaning Bombs
These fizzy bombs are great for quick drop-in cleaning and deodorizing.
You’ll Need:
- 250 g (1 cup) baking soda
- 80 g (⅓ cup) citric acid
- 1 tbsp water
- 10 drops peppermint oil
- Silicone mold (these ones on Amazon work perfectly)
Method:
- Mix baking soda and citric acid in a bowl.
- Add essential oil and stir.
- Lightly mist with water until it clumps.
- Press into molds and let dry for 12 hours.
- Store in an airtight jar.
Tip: Drop one in, wait 5 minutes, scrub lightly, and flush.
3. Castile Soap Scrub as a DIY Toilet Cleaner
This DIY toilet cleaner is ideal when you need extra foam and scrubbing power for tougher stains.
You’ll Need:
- 60 g (¼ cup) baking soda
- 15 ml (1 tbsp) liquid castile soap (Dr. Bronner’s is a favorite)
Method:
- Sprinkle baking soda inside the bowl.
- Drizzle castile soap on top.
- Scrub with a toilet brush in circular motions.
- Let sit for 5 minutes, then flush.
Tip: Add a splash of vinegar afterward to tackle hard water rings.
4. Essential Oil Freshening Spray

This isn’t for deep cleaning, but it’s perfect between scrubs when you just want the bathroom to smell fresh.
You’ll Need:
- 200 ml distilled water
- 10 drops tea tree essential oil (antibacterial)
- 10 drops lemon essential oil (fresh scent)
- Small spray bottle (I use these amber glass ones)
Method:
- Add all ingredients into the spray bottle and shake well.
- Lightly mist inside the toilet bowl and on the seat after cleaning.
- Shake before each use to re-blend the oils.
Tip: Store in a dark glass bottle to preserve the essential oils longer.
5. Using Hydrogen Peroxide As A DIY Toilet Cleaner
Hydrogen Peroxide is a natural disinfectant that whitens and sanitizes without bleach making it a great DIY toilet cleaner you can use at home.
Always wear protective gloves when handling Hydrogen Peroxide.
You’ll Need:
- 240 ml (1 cup) 3% hydrogen peroxide
Method:
- Pour the hydrogen peroxide around the bowl rim.
- Let sit for 15 minutes.
- Scrub with a brush and flush.
Tip: Perfect if you want a germ-killing clean without harsh chemicals.
6. Borax & Lemon Juice Paste
This DIY toilet cleaner is best for tackling stubborn hard water stains and mineral rings.
You’ll Need:
- 50 g (¼ cup) borax
- 60 ml (¼ cup) lemon juice
Method:
- Mix borax and lemon juice into a paste.
- Spread directly on stains in the toilet bowl.
- Leave for 30 minutes.
- Scrub and flush.
Tip: Use an old toothbrush to get into tricky spots.
7. Salt Scrub Cleaner

Salt makes a great DIY toilet cleaner and has great for scrubbing power thanks to coarse salt’s natural abrasiveness.
You’ll Need:
- 60 g (¼ cup) coarse salt
- 120 ml (½ cup) white vinegar
Method:
- Sprinkle salt around the inside of the bowl.
- Pour vinegar on top.
- Scrub well with a toilet brush.
- Flush to rinse.
Tip: Best used for stubborn grime near the waterline.
8. Lemon & Baking Soda Deodorizer
A fresh, citrus-scented DIY toilet cleaner that deodorizes naturally.
You’ll Need:
- 120 g (½ cup) baking soda
- Juice of 1 fresh lemon
Method:
- Sprinkle baking soda in the bowl.
- Pour lemon juice directly on top.
- Let fizz for 10 minutes.
- Scrub and flush.
Tip: Leaves behind a light, clean citrus scent.
9. Vinegar & Dish Soap Mix
Great for greasy buildup or soap scum in the toilet bowl.
You’ll Need:
- 240 ml (1 cup) vinegar
- 15 ml (1 tbsp) eco-friendly dish soap
Method:
- Mix vinegar and dish soap in a spray bottle.
- Spray generously around the bowl.
- Let sit for 15 minutes.
- Scrub and flush.
Tip: Warm the vinegar slightly before mixing for extra cleaning power.
10. Citric Acid Solution
This DIY toilet cleaner is perfect for dissolving limescale and mineral buildup.
You’ll Need:
- 2 tbsp citric acid
- 240 ml (1 cup) hot water
Method:
- Dissolve citric acid in hot water.
- Pour into the toilet bowl.
- Leave overnight.
- Scrub lightly in the morning and flush.
Tip: Ideal for homes with hard water.
11. Vinegar Ice Cubes
A clever way to keep your toilet fresh day by day.
You’ll Need:
- 240 ml (1 cup) white vinegar
- Ice cube tray (these large ice cube trays are great as they hold lots of mixture and dissolve slower)
Method:
- Pour vinegar into an ice cube tray.
- Freeze until solid.
- Drop one cube into the toilet daily.
- Let melt, then flush.
Tip: Add a drop of lemon oil into each cube for extra freshness.
12. Cornstarch Cleaning Gel
This DIY toilet cleaner gel sticks to the sides of the bowl for a longer clean.
You’ll Need:
- 2 tbsp cornstarch
- 240 ml (1 cup) water
- 2 tbsp vinegar
Method:
- Heat water and cornstarch until thickened.
- Let cool, then stir in vinegar.
- Spread the gel along the rim of the toilet.
- Leave for 15 minutes, scrub, and flush.
Tip: Works especially well on vertical surfaces where liquid cleaners drip too quickly.
13. Baking Soda & Eucalyptus Powder
A DIY toilet cleaner deodorizing powder that doubles as an air freshener for the bathroom.
You’ll Need:
- 250 g (1 cup) baking soda
- 10 drops eucalyptus oil
Method:
- Mix baking soda and eucalyptus oil.
- Store in a jar with a shaker lid (these mason jar lids are handy).
- Sprinkle 2 tbsp into the bowl as needed.
- Scrub and flush.
Tip: Keep the jar near the toilet for quick touch-ups.
14. Grapefruit & Salt Scrub
Perfect if you want a natural scrub and a fresh citrus smell.
You’ll Need:
- ½ grapefruit
- 60 g (¼ cup) coarse salt
Method:
- Cut the grapefruit in half.
- Dip the cut side into salt.
- Use it to scrub the toilet bowl stains.
- Flush to rinse.
Tip: You can use leftover grapefruit halves to clean sinks and tubs too.
15. Overnight Vinegar & Baking Soda Soak
Great for deep cleaning with zero effort, just let it sit overnight to work it’s magic!
You’ll Need:
- 120 g (½ cup) baking soda
- 240 ml (1 cup) vinegar
Method:
- Sprinkle baking soda into the bowl before bed.
- Slowly pour vinegar on top.
- Leave overnight with the lid closed.
- Scrub lightly in the morning and flush.
Tip: This DIY toilet cleaner is perfect for removing long-term buildup without much scrubbing.
DIY toilet bowl cleaners are simple, cheap, and surprisingly effective. Most rely on the science of acid (vinegar or lemon juice) reacting with alkaline (baking soda or borax), which helps lift stains and dissolve buildup. Add in essential oils and you get antibacterial properties plus a natural fragrance.
Once you try a few of these, you’ll find yourself reaching for your homemade mixes instead of the bright-blue store-bought stuff. And honestly, it’s kind of fun to know you can clean your entire bathroom with just a handful of pantry staples.
If you love DIY ideas why not check out our posts 20 Natural Gnat Repellent Ideas You Can DIY At Home and 20 Natural Homemade DIY Spider Repellents