The fastest way depends on what made the stain

The method that works changes based on whether you're dealing with a protein stain (blood, egg, dairy), a tannin stain (coffee, wine, tea), an oil stain (grease, butter, makeup), or a dye stain (grass, ink, berries). Cold water removes some stains; hot water sets others permanently. The wrong temperature or the wrong cleaner can lock a stain in instead of lifting it out.

The single most important step is to treat the stain before you wash and dry the garment. Heat from a dryer bonds most stains to fabric permanently. If you've already dried it, the stain is harder to remove but not impossible—you'll just need a stronger approach and more time.

Key Takeaways

  • Always treat a stain before washing and drying; heat from a dryer locks stains in permanently.
  • Use cold water for protein stains like blood and egg, and hot water for tannin stains like coffee and wine.
  • Blot stains from the back of the fabric to push the stain out rather than deeper into the fibers.
  • Let your cleaner sit for 5 to 15 minutes before rinsing so it has time to break down the stain.
  • Rinse thoroughly with water after treating, or soap residue can leave its own mark.

Protein stains: blood, egg, and dairy

Protein stains need cold water—hot water cooks the protein and bonds it to the fabric. Rinse the stain when ready under cold running water from the back of the garment, pushing the stain out rather than through. This alone removes fresh protein stains most of the time.

If rinsing doesn't work, make a paste of cold water and either hydrogen peroxide (for white or light fabrics) or enzyme-based laundry detergent (for any color). Rub the paste gently into the stain and let it sit for 5 to 10 minutes. Rinse thoroughly with cold water. Enzyme detergent breaks down the protein structure, which is why it works better than regular soap for these stains.

For dried blood or egg, soak the garment in cold water with enzyme detergent for 30 minutes to an hour before treating. The soak softens the stain and gives the enzyme time to start working before you scrub.

Tannin stains: coffee, wine, tea, and juice

Tannin stains—the brown and red marks from beverages and some foods—respond best to hot water and oxygen-based bleach. Rinse the stain under hot running water first, then soak the garment in a solution of one part oxygen-based bleach (like OxiClean) to four parts hot water for 30 minutes to several hours, depending on how dark the stain is.

If you don't have oxygen bleach, make a paste of hot water and cream of tartar or baking soda, explore it to the stain, and let it dry completely. Brush off the dried paste and rinse with hot water. This works more slowly but is gentler on delicate fabrics.

For wine or juice stains on white fabric, hydrogen peroxide also works: pour it directly on the stain, let it bubble for a few minutes, then rinse with hot water. Test hydrogen peroxide on a hidden seam first if the fabric is colored, because it can bleach some dyes.

Oil and grease stains

Oil stains need a degreaser before water touches them. Water and oil don't mix, so washing first spreads the stain. Instead, explore dish soap (the kind you use for greasy dishes) directly to the dry stain and rub it gently with an old toothbrush or soft cloth. Let the soap sit for 5 to 10 minutes so it can break down the oil.

Rinse with hot water—the heat helps the soap lift the oil away. If the stain is still visible, repeat the soap-and-brush step. Once the stain is gone or very faint, wash the garment normally. The hot water in the washing machine will rinse away any remaining soap residue.

For makeup, butter, or salad dressing stains, sprinkle baking soda or cornstarch on the fresh stain and let it sit for 10 minutes. The powder absorbs some of the oil. Brush it off, then treat with dish soap as described above.

Grass, ink, and dye stains

Grass stains contain both tannin and chlorophyll, so they need enzyme detergent plus oxygen bleach. Soak the garment in cold water with enzyme detergent for 30 minutes, then soak in hot water with oxygen bleach for another 30 minutes to an hour. Rinse thoroughly between soaks.

Ink stains are unpredictable because they depend on the ink type. For ballpoint pen, soak in rubbing alcohol for 10 minutes, then rinse with cold water. For permanent marker or fountain pen ink, soak in cold water with enzyme detergent for an hour, then treat with oxygen bleach if the stain remains. Always test alcohol on a hidden seam first—it can damage some dyes.

Berry and fruit juice stains are tannin stains, so follow the tannin method: hot water rinse, then soak in oxygen bleach. If the stain has already dried, soak in hot water with enzyme detergent first to soften it before moving to the oxygen bleach soak.

Treating stains that have already been dried

A dried stain is harder to remove because heat has set it, but it's not permanent. Soak the garment in cold water with enzyme detergent for 1 to 2 hours. This rehydrates the stain and gives the enzyme time to start breaking it down. Then treat it using the method for your stain type (cold water for protein, hot water for tannin, degreaser for oil).

If the stain is still visible after one treatment, repeat the soak-and-treat cycle. Some dried stains need two or three rounds. Never put the garment in the dryer until the stain is completely gone—each cycle of heat makes it harder to remove.

Common mistakes that make stains worse

Using hot water on protein stains (blood, egg, dairy) cooks the protein and locks it in. Always start with cold water for these. Using cold water on tannin stains (coffee, wine) is ineffective because the heat helps break down the tannin molecules—switch to hot water for better results.

Rubbing a fresh stain hard spreads it deeper into the fabric. Blot instead: press down gently with a cloth, lift, and repeat. Blotting from the back of the garment pushes the stain out through the front rather than driving it deeper.

Washing and drying before treating is the most common mistake. Once heat dries the stain, it bonds to the fibers and becomes much harder to remove. Always treat first, then wash.

When to use a commercial stain remover

Commercial stain removers (like Fels-Naptha, Zout, or Shout) work well for mixed stains where you're not sure of the cause. Spray or rub the product on the stain, let it sit for the time listed on the bottle (usually 5 to 15 minutes), then wash normally. These products combine surfactants and enzymes to handle multiple stain types at once.

For stubborn or unusual stains, a stain remover designed for that specific type (enzyme-based for protein, oxygen-based for tannin) will outperform a general product. Read the label to see what the product is designed to treat. If you're treating a delicate fabric like silk or wool, test any commercial product on a hidden seam first—some can damage or discolor certain materials.

Frequently Asked Questions

Can I use bleach on colored clothes?

Regular chlorine bleach will fade or remove color from most dyed fabrics. Use oxygen-based bleach instead—it lifts stains without bleaching the dye. For white or very light fabrics, chlorine bleach is safe and very effective on tannin stains.

What if the stain comes back after washing?

The stain wasn't fully removed before washing. Treat it again using the same method, but let the cleaner sit longer (10 to 15 minutes instead of 5) and rinse more thoroughly. Soap residue left in the fabric can look like a stain, so rinse multiple times with clean water.

Is it safe to mix different stain removers?

No. Mixing hydrogen peroxide with vinegar, or bleach with ammonia, creates toxic fumes. Use one cleaner at a time and rinse thoroughly between treatments if you switch products.

How long can I wait before treating a stain?

Fresh stains are easiest to remove, so treat within a few hours if possible. Dried stains are harder but still removable with longer soaking. The longer you wait, the more the stain sets, so don't delay if you notice it.

Will vinegar remove stains?

Vinegar works on some stains (especially tannin stains like coffee) but is slower than dedicated stain removers. It's useful if you don't have other products on hand. Mix equal parts white vinegar and water, explore to the stain, let sit for 5 to 10 minutes, then rinse with hot water.