How to Clean a Stained Mattress
Blood, vomit, and sweat aren't the same stain, and treating them the same way is why one lifts and the others don't. Here's the cold-water rule that matters most, and the different fix each one actually needs.

Quick answer · care label Mattress cover — foam, innerspring or hybrid core
-
1 · Wash
Do not wash -
2 · Bleach
No bleach -
3 · Dry
No tumble dry -
4 · Iron
Do not iron -
5 · Pro care
Pro clean P
In one line Blood, vomit, and sweat are protein stains: cold water always, never heat. Blood responds to cold water then diluted hydrogen peroxide if dried. Vomit needs an enzymatic cleaner for the odor. Sweat lifts with a baking soda and peroxide paste. Never soak the core.
Most mattress stains are protein, and heat is the mistake that sets them for good
Blood, vomit, sweat, and most food or drink spills that land on a mattress share one property that changes how you should clean them: they’re protein-based. Protein binds to fabric fibers when it’s exposed to heat, which is exactly what happens if you reach for a hot washcloth or point a hair dryer at a stain to speed things along. What felt like a shortcut turns a stain that would have lifted with cold water into one that’s chemically welded to the mattress cover. This is different from a urine stain, where the problem is uric acid crystallizing as it dries; here the enemy is heat, and the fix starts with knowing which stain you’re actually dealing with before you touch it with anything warm.
The other thing that trips people up is treating every mattress stain the same way. Blood responds to cold water and, for dried spots, diluted hydrogen peroxide. Vomit carries stomach acid and food residue that needs an enzymatic step, not just blotting. Sweat leaves a yellowish stain from oxidized body oils that soap barely touches but hydrogen peroxide and baking soda break down well. Using one all-purpose method on all three usually means partial success on one and no progress on the others.
Hot water and heat sources cook the proteins in blood, vomit, and sweat into the fabric, turning a liftable stain into a permanent one. If you’ve already used hot water and the stain has darkened or set, cold-water treatment still helps, but expect a fainter shadow to remain rather than a full removal.
What you’ll need
| Item | Why | Substitute |
|---|---|---|
| Cold water, in a spray bottle | The base treatment for every protein stain; never substitute warm water here | An ice cube run over the spot for a fresh, small stain |
| 3% hydrogen peroxide | Oxidizes and lifts dried blood and sweat stains; fizzes visibly on contact with fresh blood, which doubles as a way to confirm what you’re looking at, though an old stain often won’t react | A commercial oxygen-based stain remover mixed per the label |
| Enzymatic cleaner | Breaks down the protein and food residue in vomit that cold water alone can’t fully lift, and neutralizes the odor at the source | A mix of dish soap and cold water, though it won’t touch odor the way enzymes do |
| Baking soda | Pairs with hydrogen peroxide as a paste for set-in sweat stains, and works alone as a final odor and moisture step on any stain type | None that adsorbs odor quite as well |
| White towels or rags | Blotting lifts a stain out; rubbing drives it deeper into the foam or batting below the cover | Paper towels, changed often so you’re not reapplying what you just lifted |
| Fan | Dries the treated area within a day, which keeps moisture from working down into the core | An open window with cross-breeze |
Blood, fresh

Blot immediately with cold water
Press a cold, damp cloth onto the stain and blot outward from the edges. Never rub, and never reach for warm water even if it feels like it would work faster. Cold water keeps the protein from bonding to the fabric while it’s still fresh.
Apply a cold water and dish soap mix
A few drops of dish soap in a cup of cold water, dabbed on and blotted off, usually finishes a fresh blood stain that was caught within the first hour or two.
Blot dry and check under good light
If a faint shadow remains, treat it as a dried stain with hydrogen peroxide rather than repeating the same cold-water pass, which won’t do more the second time around.
Blood, dried or set-in
Rehydrate with cold water first
Mist the stain and let it sit for a couple of minutes. A dried stain needs to soften before peroxide can reach the protein bound in the fibers.
Apply 3% hydrogen peroxide directly
Pour a small amount straight onto the stain. It will fizz on contact, a reaction specific to blood that also confirms you’re treating the right kind of stain. Let it foam for a minute or two.
Blot as it lifts, reapplying as needed
Blot with a clean section of towel each time, and reapply peroxide to any remaining color. Older stains often need two or three rounds rather than one heavy application.
Rinse the residue lightly and dry with a fan
A light mist of cold water lifts the last of the peroxide, then blot and run a fan over the spot until it’s dry to the touch.
Peroxide is a mild bleach and can lighten colored mattress covers, especially darker fabric. Test on a hidden corner or the underside seam before treating a visible stain.
Vomit
Remove solids and blot the wet residue
Scrape away anything solid with a spoon or the edge of a card before it dries further, then blot the remaining moisture with cold, not warm, towels.
Treat with an enzymatic cleaner
Vomit carries stomach acid, bile, and food particles that plain water blotting won’t fully lift, and that plain soap won’t deodorize. Spray enough to cover the area and let it dwell for the time printed on the bottle, usually 10-15 minutes.
Blot dry, then dust with baking soda
Blot until no more moisture transfers, then a light layer of baking soda left for a few hours pulls out any lingering odor before you vacuum it away.
Sweat stains

Sweat itself is nearly colorless. The yellowish stain that shows up on a mattress cover over time is body oil and residue reacting and oxidizing where it sits, which is why scrubbing with detergent alone rarely clears it. A paste of hydrogen peroxide and baking soda, left to sit and then brushed off, breaks down the oxidized residue in a way plain washing doesn’t.
Mix a paste of baking soda and hydrogen peroxide
Roughly two parts baking soda to one part peroxide, enough to form a spreadable paste.
Spread over the stained area and let it dry fully
The paste needs to dry completely, not just sit for a few minutes, for the oxidizing reaction to finish working through the residue.
Brush off the dried paste and vacuum
A stiff brush loosens the dried residue, then a vacuum with the upholstery attachment picks up the rest.
A mattress that stays damp below the surface for more than a day or two grows mold where a fan can’t reach it, which is a worse problem than any of these stains on their own. Keep every application light enough to dry within 24 hours, the same rule that applies to urine stains on a mattress, a damp rug backing, or a comforter’s baffle box that never fully dries.
Interactive
Label decoder
Tap a symbol from your care label. No guessing, no scrolling.
19 symbols. Pick one.
Not sure what the stain is?
A stain with no known origin, found weeks later or inherited with a secondhand mattress, is safest treated as a protein stain by default: cold water first, then hydrogen peroxide if color remains after the cold-water pass. Avoid layering an enzymatic cleaner on top of peroxide in the same session; they work against each other, and it’s better to finish one full method before trying the next. If a stain doesn’t respond to either after two rounds, it may be an oil-based or dye stain rather than a body-fluid one, which needs a dish-soap and warm-water approach instead, the one combination that’s off-limits for the protein stains above.
What ruins a mattress cover during cleanup
| Mistake | What happens | Fix |
|---|---|---|
| Hot water or a hair dryer on a fresh stain | Cooks the protein into the fabric, turning a liftable stain into a set one | Cold water only, air-dry with a fan instead of heat |
| Scrubbing instead of blotting | Pushes the stain deeper into the foam or batting and can fray the cover fabric | Blot from the outside edge inward |
| Undiluted peroxide on colored fabric without testing | Can bleach or lighten darker mattress covers | Spot test in a hidden corner first |
| Soaking the mattress to flush out a stain | Pushes moisture past the cover into the foam or spring core, where it can take days to dry and invites mold | Light, even application; blot and extract rather than pour |
| Sealing a still-damp mattress under a protector | Traps residual moisture against the surface instead of letting it finish evaporating | Wait until fully dry to the touch before covering again |
Related guides
The same protein stains on washable bedding instead of a mattress cover have a lot more room to work with, since the fabric can go in the washing machine: see how to clean bed stains. If the stain is specifically urine, the chemistry is different: dried urine crystallizes into a form soap can’t touch, and how to clean urine out of a mattress covers the enzymatic method that actually breaks it down. For the same trapped-moisture risk on other absorbent home textiles, see how to clean a rug and how to clean a down comforter. If a stain was left damp long enough for mold to start, how to clean mold off clothes covers the kill-first method a living colony needs. For a stain that isn’t protein at all, how to clean ink stains on clothes uses the same cold-treatment, never-dry-until-confirmed rule on a completely different chemistry. For the wider framework this site uses to sort any stain into a category first, see how to clean stains from clothes. For the routine care that catches most of these before they set, vacuuming, deodorizing, and a protector doing the real barrier work, see how to clean a mattress.
Questions
Can I use hot water to speed up cleaning a mattress stain?
No. Blood, vomit, and sweat are protein-based, and heat cooks that protein into the fabric, turning a stain that would lift with cold water into one that’s set permanently. Use cold water for every step, and air-dry with a fan rather than a hair dryer or heater.
How do I know if a stain is blood versus something else?
Hydrogen peroxide fizzes on contact with fresh blood, a reaction other stains don’t produce, so a small dab in a corner of the stain is a quick way to confirm before committing to a full treatment. The test only works one way, though. The fizz comes from catalase, an enzyme in the blood itself, and catalase is destroyed by drying hard and by heat, so an old or heat-set blood stain can fail to react at all. No fizz means the stain is past its first phase, not that it isn’t blood: see how to clean a blood stain.
Is it safe to mix hydrogen peroxide and an enzymatic cleaner?
Don’t apply them in the same session. Peroxide is an oxidizer and can interfere with the enzymes’ ability to break down protein, so finish one method fully, let the area dry, and only then try the other if the stain persists.
Will these stains ever fully disappear?
Fresh stains treated promptly usually clear completely. Older, set-in stains that already went through a hot-water or dryer mistake often leave a faint shadow even after correct treatment, since some protein bonding to the fabric is permanent once it’s cooked in.