CP
FIX

The Best Paint to Cover Block Stains

Stains keep bleeding through paint on your block wall. Here is how to cover block stains for good with the right primer and topcoat, plus what to fix first.

Mark Thompson
By Mark Thompson
Pro Contractor & Field Editor
Updated:June 3, 2026
Painted concrete block wall with brown rust stains and white powder bleeding through the paint

Block stains don’t bleed through because your paint was cheap. They bleed because the stain is soluble and your topcoat is porous. Seal the stain first or you’ll be painting the same blotch twice.

Does This Match What You’re Seeing?

The color of the stain tells you the cause, and the cause tells you the fix. Look before you open a can.

  • Brown or yellow blotches: water staining. Old leaks, condensation runs, or dirty water that wicked through the block and dried.
  • Orange or rust streaks: metal. Rebar, wall ties, a buried nail, or rusty fasteners bleeding iron oxide up through the film.
  • White powdery bloom: efflorescence. Mineral salt, not a stain. Moisture is pushing it out from inside the block.
  • Gray or black smudging low on the wall: mildew or mold, common in basements and garages where the block stays damp.
  • Dark gray haze with no texture: smoke or soot. Old furnace room, a past fire, or years of exhaust.
  • Sharp-edged marks: marker, crayon, grease, or tar. Spot stains that sit on the surface.

Bare concrete block wall with rust stains and white efflorescence, wire brush and cleaning bucket nearby Rust bleed and a chalky efflorescence bloom on bare block. Two different problems on one wall.

If you’ve got white bloom AND brown staining together, you have a moisture problem feeding both. Read the prevention section before you paint anything.

How Serious Is This?

A clean, dry block wall with surface stains is a same-weekend fix: clean, seal, topcoat. Two things push it higher.

  • Active efflorescence: salt keeps coming, so water keeps moving through the block. Paint peels off any wall that’s still wet from inside. Medium-to-high until you stop the water.
  • Soft, crumbling block or a wet basement floor: that’s a structural moisture intrusion problem, not a paint job. High. Fix the water first or skip ahead to when to call a pro.

Cosmetic surface stains on a dry interior block wall are the easy case. Rust fed by a slow plumbing drip is not. Find out which one you have before you spend a dime on paint.

Why This Is Happening (root Cause)

Block is the problem and the solution at once. Concrete block is porous and alkaline. It holds water, it wicks moisture sideways and up, and its open pores let anything soluble travel.

Water-soluble stains migrate. Rust, tannin, nicotine, and old water marks dissolve in the moisture inside the block. When you roll a water-based paint over them, the wet paint re-wets the stain and pulls the color up into the fresh film. The stain “ghosts” through, sometimes days later. This is why a flat white wall develops brown halos a week after you painted it.

Efflorescence is moisture, not dirt. Water moving through the block dissolves salts in the concrete and carries them to the surface. The water evaporates and leaves the salt as white powder. Paint over active efflorescence and the salt crystallizes under the film, breaks the bond, and the paint flakes off. The white bloom is the block telling you it’s wet inside.

High pH attacks the wrong coatings. Fresh or damp concrete block can run pH 12 or higher. That alkalinity burns through oil-based films and breaks down some latex binders, a failure called alkali burn. New block needs to cure 28 days, or you need an alkali-resistant primer rated for high-pH masonry.

So the stain you see is the surface story. The water and the chemistry underneath are the real causes. Cover the surface without addressing those and you’re painting over a problem that’s still running.

The Fix

Step 1. Find and Stop the Moisture

Before anything else, figure out if the wall is dry. Tape a 1-foot square of plastic sheeting flat to the block, seal all four edges, and leave it 24 hours. Condensation under the plastic means moisture is coming through the block from outside or below. Dry plastic means your stain is old and the wall is dry now.

If the wall is actively wet, stop. No coating holds on a wall water is moving through. Reroute downspouts, regrade soil away from the foundation, fix the leaking pipe, or run a dehumidifier in a damp basement. See the moisture rules in the peeling paint guide; the same physics drives both failures.

Step 2. Remove Efflorescence and Loose Material Dry

Knock off all white bloom with a stiff wire brush or a wire-wheel on a drill. Do this dry. Wetting efflorescence first just dissolves the salt back into the block, and it returns. Brush until the surface is powder-free, then vacuum.

Scrape any loose, flaking old paint while you’re here. A 2-inch carbide scraper, pulled toward you. Anything that lifts under light pressure has to go.

Step 3. Clean the Stains

Wash the wall with a masonry cleaner or a TSP substitute, scrub with a stiff brush, rinse with clean water. For rust, a masonry rust remover with oxalic or phosphoric acid pulls a lot of the iron out before you prime. For mold or mildew low on the wall, treat with Concrobium Mold Control or a 1:10 bleach solution, dwell 10 minutes, then rinse.

Never mix bleach with vinegar, ammonia, or hydrogen peroxide. It produces toxic chlorine gas. Use one cleaner, rinse with clean water, and let the wall dry before the next product goes near it.

Let the block dry a full 24 hours after washing. Longer in a humid basement. Priming a damp wall traps water and you start the cycle over.

Step 4. Seal the Stains with a Blocking Primer

This is the coat that does the work. Match the primer to the stain:

  • Rust, smoke, deep water rings, the worst of it: Zinsser BIN (shellac). Blocks anything. One coat over the stain, dries in 45 minutes, recoat in an hour.
  • General water staining on dry block: Zinsser Cover Stain (oil-based) or BIN. Both seal soluble stains.
  • New or high-pH block: an alkali-resistant masonry primer rated for fresh concrete. Oil and shellac can burn on uncured block.
  • Rough, pinholed new block needing fill: a heavy masonry block filler first to bridge the pores, then spot-prime the stains.

Spot-prime the stained areas, or prime the whole wall if stains are everywhere. Don’t thin BIN to stretch it. Full strength is what blocks the bleed.

Concrete block wall coated in white stain-blocking primer with the stains hidden One coat of shellac primer over the stains. Sealed, uniform, ready for topcoat.

Step 5. Topcoat with Masonry-Rated Paint

Two coats. Always two coats. One coat over block is half the film you think it is because the pores drink the first one.

  • Finished basement walls: 100 percent acrylic masonry or interior wall paint, eggshell or satin. Satin wipes down and resists the damp.
  • Garage or utility block: a masonry or porch-and-floor acrylic in satin or semi-gloss. Takes scuffs and washing.
  • Exterior block or foundation: an elastomeric or 100 percent acrylic masonry paint built for the freeze-thaw cycle.

Finished concrete block wall painted clean satin white with no stains showing Two coats of satin acrylic over sealed block. The stains are gone and they stay gone.

For sheen choices in a damp room, the sheen guide breaks down what wipes clean and what shows every flaw.

Safety

Shellac and oil primers throw strong fumes. Cross-ventilate, open a window, run a fan, and wear an organic-vapor respirator in a closed basement. Gloves and eye protection for wire-brushing and acid rust removers. A dust mask while you brush off efflorescence; the salt powder is fine and you don’t want it in your lungs.

Block Stains by Type

StainCauseClean withSeal withTopcoat
Brown water marksOld leaks, condensationTSP substituteBIN or Cover StainAcrylic satin
Rust / orangeRebar, ties, fastenersOxalic rust removerZinsser BINAcrylic satin
White powderEfflorescence (moisture)Dry wire brush, masonry washPrime only after dryAcrylic, after water fixed
Gray / black lowMold or mildewConcrobium or 1:10 bleachBINMildew-resistant satin
Dark hazeSmoke, sootTSP, degreaseZinsser BINAcrylic semi-gloss
Marker, grease, tarSurface marksDegreaserBIN spot primeMatch wall

Efflorescence is the odd one out. It isn’t a stain you seal over, it’s water you stop first.

Zinsser BIN Shellac-Base Primer is the one I reach for on block. Shellac seals soluble stains nothing else stops: rust, smoke, deep water rings, marker. One coat, dries in under an hour, and the stain stays buried under the topcoat.

Buy Zinsser BIN on Amazon →

For light water staining on a clean dry wall, Zinsser Cover Stain (oil) costs less and blocks fine. For fresh, high-pH block, skip both and use an alkali-resistant masonry primer instead. Shellac can burn on uncured concrete. More on how shellac blocks bleed in the shellac primer explainer.

Prevention

The stain came back because the water came back. Most block staining is a moisture story, and the fix is usually not paint.

  • Grade soil away from the foundation. A slope of 6 inches over the first 10 feet keeps water off the wall.
  • Redirect downspouts at least 4 feet from the foundation. Water dumping at the base wicks straight into the block.
  • Run a dehumidifier in a damp basement. Keep relative humidity under 60 percent and condensation staining stops.
  • Re-treat new rust sources. A rusting wall tie or fastener keeps bleeding. Cut it back, treat with a rust converter, then prime.
  • Let new block cure 28 days before paint, or use an alkali-resistant primer rated for fresh masonry.
  • Seal the exterior side of a below-grade wall where you can. Stopping water from entering beats fighting it on the inside forever.

When to Call a Pro

  • Standing water or a wet basement floor. That’s water intrusion. A waterproofing contractor, not a painter.
  • Efflorescence that returns within weeks of cleaning and a dry-fixed wall. Moisture is still moving through. Get the source diagnosed.
  • Soft, crumbling, or spalling block. The concrete is failing, often from freeze-thaw or long-term water. Structural, not cosmetic.
  • Mold over 10 square feet (the EPA threshold) in a basement. Remediation first.
  • Pre-1978 building with peeling paint on the block. Lead-test before you scrape or sand. RRP rules apply.

What’ll Bite You in Two Years

Seal the stain, skip the water, and you’ll see the brown halos ghost back through in a season or two. The block is a sponge. As long as moisture keeps cycling through it, the salt keeps blooming and the soluble stains keep migrating up into your topcoat. Paint is the visible layer of a system. Fix the water first, then BIN buries the stain for good. Cover the water with paint and you’ve just hidden the leak from yourself.

Frequently asked questions

Can I just paint over block stains with a thick coat?+
No. Wall paint is porous and the stain bleeds right back through, sometimes in a week, sometimes in a month. Rust, tannin, and smoke are soluble and they migrate up into anything water-based. You have to seal the stain with a stain-blocking primer first. One coat of Zinsser BIN or Cover Stain over the stain, then your topcoat. Skip the primer and you repaint the same spot twice.
What is the white powder on my block, and will paint cover it?+
That white bloom is efflorescence: mineral salts pushed to the surface by moisture moving through the block. Paint over it and the paint peels, because salt keeps crystallizing under the film. Brush it off dry, wash with a masonry cleaner, let the wall dry, and find the water source. Efflorescence is a moisture flag, not a stain. No paint fixes the water problem behind it.
Do I need a masonry primer or a stain blocker on block?+
Both jobs, sometimes two products. A masonry block filler levels the open pores and texture. A stain blocker seals the discoloration. On a clean dry block wall with only surface stains, a shellac or oil stain blocker handles both. On rough new block with deep pinholes, run a block filler first, then spot-prime the stains, then topcoat with masonry paint.
Is the best paint for block stains oil-based or water-based?+
For the stain-blocking coat, oil-based or shellac wins. Water-based stain blockers exist and they handle light water marks, but rust and heavy bleed need shellac (Zinsser BIN) or oil (Zinsser Cover Stain). For the topcoat over block, a 100 percent acrylic masonry or porch paint is fine. Match the sheen to the room: satin in a finished basement, semi-gloss in a garage.
Why do the stains keep coming back even after I prime?+
Two reasons. Either the stain is still active because water keeps feeding it, or you used a water-based primer on a stain that needed shellac. A rust stain fed by a leaking pipe will bleed through any coating until the leak stops. Fix the moisture, switch to BIN, and the stain stays buried. If it ghosts back through shellac, you have an ongoing water source, not a paint problem.
RELATED