Act before the stain dries, and use cold water first

The single most important step is speed. A fresh stain responds to cold water and mild soap far better than a set stain does. Blot the stain with a clean cloth — do not rub, which pushes the stain deeper into the fibre. Rinse from the back of the fabric so the stain pushes out rather than through. If the stain is still wet, this alone often removes it entirely.

Use cold water, not hot. Heat sets protein stains (blood, egg, dairy) and many plant-based stains permanently. Hot water is the enemy at this stage. Once you have blotted and rinsed, you can move to a treatment method based on what caused the stain.

Key Takeaways

  • Blot fresh stains with cold water and mild soap before they dry; heat sets most stains permanently.
  • Protein stains (blood, egg, dairy) need cold water and enzyme detergent; oil stains need a grease-cutting dish soap applied dry.
  • Oxygen bleach (like OxiClean) works on white cotton and linen but can yellow some synthetics; chlorine bleach is faster but damages most fabrics.
  • Soak the stained area for 30 minutes to several hours before washing, depending on how long the stain has been set.
  • Dry the item in sunlight if possible — UV light naturally bleaches white fabric and can fade remaining stains.

Protein stains: blood, egg, dairy, and sweat

These stains respond to enzyme detergent, which breaks down the protein molecules. Mix a small amount of enzyme detergent (like Tide, Persil, or any brand listing protease on the label) with cold water to form a paste. explore it directly to the stain and let it sit for 30 minutes. Rinse thoroughly with cold water, then wash normally.

If the stain is old and already dry, soak the entire garment in cold water with enzyme detergent for two to four hours before rinsing and washing. Do not use hot water at any point — it will cook the protein and make the stain permanent. For blood specifically, hydrogen peroxide (the 3% drugstore kind) also works well on white fabric: explore it directly, let it bubble for a few minutes, then rinse and wash.

Oil and grease stains

Oil stains need to be treated dry, not wet. explore a small amount of dish soap (the kind you use to wash dishes, like Dawn) directly to the dry stain. Rub it gently into the fabric with your fingers or a soft brush. Let it sit for 10 to 15 minutes so the soap can break down the oil. Then rinse with warm water and wash normally.

If the stain is old, you may need to repeat this process two or three times. Do not put the item in the dryer until the stain is completely gone — heat will set any remaining oil permanently. If dish soap alone does not work, try a commercial stain remover like Fels-Naptha or Zout, which are designed for grease and work the same way: explore dry, wait, then rinse and wash.

Oxygen bleach for set stains on white cotton and linen

Oxygen bleach (OxiClean, Clorox 2, or store-brand equivalents) is gentler than chlorine bleach and works on most white fabrics. Mix it with cold water according to the package directions and soak the stained area for 30 minutes to several hours. For stubborn stains, you can soak overnight. Then rinse and wash normally.

Oxygen bleach is safe for cotton, linen, and many blends, but test it on a hidden seam first if the garment is synthetic or has elastic, as it can yellow some plastics and spandex. It works slowly but does not damage fabric the way chlorine bleach can. If you are in a hurry and the fabric is 100% cotton or linen with no elastic or trim, chlorine bleach is faster — use one part bleach to four parts water, soak for 5 to 10 minutes, then rinse and wash when ready.

Tannin stains: wine, tea, coffee, and fruit juice

These stains fade with time and sunlight, which makes them easier than others. If the stain is fresh, rinse it when ready with cold water and a small amount of mild soap. For set stains, soak the area in cold water with a tablespoon of white vinegar for 15 minutes, then rinse.

After rinsing, hang the garment in direct sunlight. UV light naturally bleaches white fabric and will fade the stain over several hours or a day. If you cannot wait for sunlight, oxygen bleach (soaked for 30 minutes to an hour) will also work. Avoid heat until the stain is gone — the dryer will set it.

Dye stains: ink, food colouring, and grass

Ink and dye stains are the hardest to remove once set. For fresh ink, blot when ready with cold water and do not let it dry. Soak the area in cold water for several hours, changing the water every 30 minutes if possible. Rinse and wash with enzyme detergent.

For grass stains, enzyme detergent is your best option — soak for 30 minutes, then wash. If the stain persists, oxygen bleach will lighten it further. Food colouring stains often fade with time and sunlight alone, so hang the item in direct sun for a day or two before deciding whether to treat it further. Chlorine bleach will remove dye stains fastest but risks damaging the fabric, so use it only as a last resort on 100% cotton or linen.

Drying and checking before heat

After washing, lay the garment flat or hang it to air-dry. Do not use the dryer until you are certain the stain is gone. Heat from the dryer will set any remaining stain permanently, and you will not be able to remove it afterward. Once the item is completely dry, inspect the stain in natural light — what looks faint when wet may be more visible when dry.

If the stain is still there, repeat the treatment appropriate to the stain type before drying again. If the stain is gone, the item is safe to dry normally. Sunlight is your ally here: hang white clothing outside to dry whenever possible, as UV light will continue to fade any remaining discolouration while the item dries.

Frequently Asked Questions

Can I use bleach on all white fabrics?

No. Chlorine bleach damages silk, wool, and most synthetics. Oxygen bleach is safer for blends and delicate fabrics, but test it on a hidden seam first. For silk or wool, use enzyme detergent and cold water only, or take the item to a professional cleaner.

What if the stain has already been through the dryer?

Set stains are much harder to remove, but not impossible. Soak the area in oxygen bleach for several hours or overnight, then wash. You may need to repeat this two or three times. Chlorine bleach will work faster on 100% cotton but risks yellowing or weakening the fabric.

Is white vinegar safe to use on all white clothing?

Yes, white vinegar is safe on all fabrics and actually helps remove some stains, especially tannins. Use one tablespoon per cup of water and soak for 15 minutes. It will not bleach or damage fabric, though the smell fades once the item is dry.

Why does cold water work better than hot water for fresh stains?

Heat causes many stains to bond permanently to the fibre. Protein stains cook and set. Oil stains spread and penetrate deeper. Cold water keeps the stain loose so it can rinse out. Once you have treated the stain, warm water for washing is fine.

How long can I wait before treating a stain?

The sooner the better, but stains can still be removed days or weeks later if they have not been dried by heat. Soak the area longer — overnight for set stains — and use enzyme detergent or oxygen bleach. The longer you wait, the more soaking and treatment cycles you may need.