How to Stain Concrete

Applying stain to a concrete floor can add beauty and depth to this hard-wearing material, and make it even easier to maintain. If your concrete floor is already in good shape, you're just a few easy steps away from a durable, dramatic new finish.
how to stain a concrete floor

We may earn revenue from the products available on this page and participate in affiliate programs. Learn More ›

Homeowners used to think of concrete as strictly utilitarian stuff, resorted to only when a better-looking material would be either unsuitable or far too expensive. Now, however, more homeowners are choosing concrete floors for their indoor and outdoor spaces because of the building material’s beauty and durability, and doing it yourself will cut the cost of the improvement significantly. From garage floors, basement floors, and even outdoor concrete patios, you can make your home look amazing with stained concrete floors.

What You Should Know About Staining a Concrete Surface

One popular way to finish concrete is with either acid-staining acrylic or water-based concrete stains. I recommend acid staining because it lasts longer and looks better. The downside of an acid stain, however, is that it can be somewhat unpredictable.

Rather than coating on like a wood stain, acid concrete stain generates color through a chemical reaction. Results depend in part on the stain you’ve chosen and how much of it you apply, but also on the concrete itself—its location, age, and mineral composition. The color you end up with may be quite different from the one you expected to get. And there’s no way to erase or undo the stain once you’ve applied it. Your only option is adding more stain to intensify the effect.

Tools & Materials may earn a commission from purchases made through these links.

STEP 1: Surface Preparation

To stain concrete successfully, the first step is to prepare the surface, being sure that it’s free of residual adhesive, flaking paint, and similar debris. Scrub the concrete with a solution of TSP and water. Treat stubborn stains aggressively with a degreaser or chemical paint stripper. Here are a few more tips to help you prepare your concrete surface:

how to stain concrete floor
  • New concrete surfaces should be at least four weeks old before treatment.
  • Use a pressure washer to remove dust, dirt, and debris from old concrete surfaces.
  • Don’t use muriatic acid to clean—it will remove minerals and could potentially create darker colors and splotches.
  • Make sure your starting concrete is porous enough to absorb water.
  • Don’t be afraid of sanding down uneven parts of your concrete slab to ensure evenly stained concrete floors.

Be sure to clean up all debris, tools, etc., on the floor to help you complete the DIY project as efficiently as possible. The entire staining process depends on your ability to get stain into the pores of the concrete, and you don’t want anything preventing that.

STEP 2: Tape Off Your Concrete Slab

Tape off any sections of the concrete surface that you do not wish to stain. Do this very carefully, as it may prove impossible to remove the stain if it lands somewhere you didn’t intend it to go.

Depending on your needs, you can use masking tape and a water-resistant cover material to protect surfaces you don’t want stained. You can prevent stain bleeding by laying duct tape over masking tape on areas where you want to have clean edges or more intricate styles.

STEP 3: Test Stains Before Application

To get an impression of how the stain will look, test it in an inconspicuous corner or along a remote edge of the concrete. Don’t love how it looks? Adjust the stain accordingly, diluting or intensifying it.

STEP 4: Apply the Concrete Stain

Now you’re ready to start applying the stain. The goal here is to achieve even coverage. To that end, many choose to employ a sprayer (whose parts are plastic so as not to corrode upon contact with acid). Here are a few more tips to keep in mind when staining concrete:

  • Use a specialized sprayer when you apply a concrete acid stain for an even coat.
  • Use a paint roller or paintbrush to apply stain in smaller areas.
  • Maintain a wet edge by using an overlapping spray pattern.
  • Use a wet-dry vacuum as needed to pick up excess liquid and remove debris as needed.

After spraying—never so much that there’s puddling—use a shop broom to ensure that no parts of the surface look relatively darker or lighter. If necessary, spray again to eliminate marks left by the broom.

home with stained concrete floor

STEP 5: Allow Enough Drying Time

Different stains and different stains across the color chart will take different periods to set correctly; consult the label on the chosen product. While the stain is setting, the chemical reaction continues. It ceases only when you neutralize it by washing the floor in a solution of water and detergent (and sometimes baking soda).

STEP 6: Apply Concrete Sealant

Finish up by protecting the stained concrete with a sealer. Again, please consult the product label; it’s a good idea to use the manufacturer-recommended sealer. Indoor concrete flooring is usually sealed with wax, although I would opt for epoxy beneath urethane in a high-traffic area. The same is true for your outdoor space, so consult the manufacturer’s guide to ensure you follow the correct staining process. Note that you can use a buffing machine to facilitate the sealing process, so long as you are working on a floor surface indoors.

Staining concrete can bring new life to the indoor and outdoor areas of your home. You can stain old concrete and new concrete floors, but make sure you follow these step-by-step instructions to ensure you end up with the look and feel of stained concrete floors you’re going for!


Q: Why should I stain my concrete floors?

Applying a stain to a concrete floor can add beauty and depth to this heavy-duty material and make it even easier to maintain.

Q: Should I use an acid stain?

I prefer acid-staining acrylic over water-based stains, however, keep in mind that acid-based concrete stains are a bit more challenging in that they are less predictable because the staining happens via a chemical reaction.

Q: How much will it cost to stain my own concrete floors?

DIY concrete staining costs between $0.30 and $0.40 per square foot