Vapor barrier placement comes down to one rule: the moisture vapor barrier (MVB) goes directly against the underside of the concrete slab. No gravel between the poly and the concrete. No sand. No blotter layer. It is the most commonly violated step in slab-on-grade construction, and it is also the one that never shows its damage on pour day. The bill comes six to eighteen months later, as coating delamination, polish whitening, or full epoxy failure, and the fix runs $2 to $5 per square foot in topside vapor mitigation on top of paying for the original coating a second time.
This post covers why placement matters more than product selection, and what our crews check under the SPEC framework’s SET discipline the day before the pour. We have opened up enough failed floors to know the barrier is almost never the reason a slab looks bad. It is the reason a slab that looked fine for a year stops looking fine at all.
Nothing goes between the poly and the slab. Below-slab gravel for drainage is fine; gravel sitting on top of the poly is not, because porous material trapped between the barrier and the concrete turns into a reservoir that never dries, and it feeds vapor pressure upward for as long as the floor exists.
Where does the vapor barrier go on a concrete slab?
The vapor barrier poly goes directly against the concrete. No gravel, no sand, no blotter layer between the MVB and the slab. Our crews verify this placement under the SET discipline of the SPEC framework the day before the pour, because any porous material wedged between the barrier and the slab gives moisture a pathway to accumulate and climb into the concrete for good.
Correct layering from the ground up follows this sequence: compacted subgrade, then the MVB poly sheeting, then concrete placed directly on top of the poly. The barrier does the same job the roof does before the drywall goes up on a house; get it wrong and everything built on top of it inherits the problem. When the membrane is intact and properly positioned, the slab cures with predictable moisture content, and coatings, polished finishes, and overlays bond to the surface without a fight against moisture coming up from underneath.
Why do crews place gravel on top of the vapor barrier?
Gravel on top of the MVB is the single most common installation mistake, and it is easy to see why a crew reaches for it. Wet poly sheeting is slippery underfoot, gravel is not, and a pour crew standing on a moving, awkward surface all day will look for a firmer place to stand.
Crew motivation for the shortcut
- Stable footing for the pour crew
- Easier screeding without slipping
- Concrete trucks chute onto a firm working surface
- Old habit from pre-MVB framing-only construction
Resulting finish failures
That one layout decision converts the gravel from a drainage aid into a permanent vapor pump. Ground moisture wicks into it from the surrounding soil through capillary action, sits directly against the underside of the slab, and never gets a path out. Trapped. Replenished from below. No drying path.
The migration is not a phase the slab grows out of after a 28-day cure. Readings often exceed 3 pounds per 1,000 square feet per 24 hours on calcium chloride testing (ASTM F1869), and the gravel keeps refilling itself from ground moisture year after year, so the vapor source is permanent. No topside treatment fully overcomes that on the cheap.
How does moisture migration cause epoxy floor delamination?
Moisture vapor moving through a concrete slab creates hydraulic pressure beneath any coating or finish bonded to the surface, and that pressure is what eventually breaks the adhesive bond that the installer assumed was good when they walked away from the job. Epoxy coatings, polyurethane sealers, polished concrete densifiers, and cementitious overlays all require surface moisture readings below 3 pounds per 1,000 square feet per 24 hours (ASTM F1869) and below 75% relative humidity at 40% slab depth (ASTM F2170) before application. The vapor pushes upward. It accumulates at the slab-to-finish interface. Then it lifts the bond.
The result is blistering, peeling, whitening, or full delamination, and it does not matter which coating product went down. The slab assembly below the finish causes the problem, not the finish material itself, and that is exactly why the warranty for that coating excludes failure caused by excessive substrate moisture vapor emission.
The delay between installation and failure is what makes this expensive instead of just annoying. A floor that looks perfect for 6 to 12 months, tests fine on the day of application, and fails slowly underneath is a floor nobody catches in time. The pour crew has moved on to the next job, disputes over warranty coverage for the failure drag on, and the fix is removal, surface prep, and reapplication, sometimes with a topside vapor mitigation system going in first if the gravel reservoir is still feeding moisture from below.
What happens when vapor barrier penetrations are not sealed?
Plumbing lines, electrical conduit, and mechanical stub-outs that pass through the slab create penetration points in the MVB, and every one of them can quietly compromise the barrier if a crew does not cut, fit, and seal it correctly. A single unsealed penetration lets ground moisture bypass the barrier entirely, enter the slab locally, and spread outward through the concrete matrix. When coating failures cluster near plumbing penetrations, that pattern usually tells us the MVB failed at those exact spots during construction.
We verify barrier integrity at every penetration point before the pour, under the same SET discipline of the SPEC framework, the day before concrete placement. Every pipe, conduit, and stub-out passing through the poly gets cut cleanly, fitted tight, and sealed with tape or mastic rated for below-grade contact. Overlapping seams near penetrations get extra attention, because the mechanical stress of the pour can shift or tear a joint that was not sealed right the first time; the minimum overlap for MVB seams is 6 inches per ASTM E1643, sealed with manufacturer-specified tape. Once the concrete is placed, there is no practical way to repair a compromised barrier from above. The only fix left is a secondary topside mitigation system, at real added cost to the project.
How does subgrade compaction relate to floor finish performance?
The subgrade beneath the vapor barrier must be uniformly compacted before concrete placement. Soft spots and inconsistent density in the subgrade lead to differential settlement, which means sections of the slab shift unevenly after the pour. Settlement cracking from poor subgrade compaction is fundamentally different from shrinkage cracking. Saw-cut control joints are designed to control shrinkage cracks by creating weakened planes where the concrete will crack predictably. Settlement cracks do not follow these control joints. They form wherever the subgrade support is inadequate, creating random crack patterns that cannot be controlled with joint layout.
Settlement cracking damages floor finishes two ways. The cracks themselves break through any coating or polish on the surface, and the differential movement at the crack edges creates vertical displacement (lippage) that grinding alone cannot always resolve; in severe cases, sections of the slab have to come out and get replaced. For polished concrete, subgrade compaction is not a nice-to-have prep step. It is structural, and it is the thing that decides whether the floor finish makes it through its service life or not. We verify uniform compaction before the MVB goes down, because it is the first link in the chain and every step after it depends on that one holding.
What do people ask most about vapor barriers and floor finishes?
Can you install a vapor barrier on top of an existing concrete slab?
Topside vapor mitigation systems exist for situations where the original below-slab barrier was missing, damaged, or incorrectly placed. These systems use epoxy-based moisture mitigation coatings applied to the concrete surface before the finish coat. They are effective but add significant cost and preparation time compared to correct below-slab MVB placement during original construction.
Does every concrete slab need a vapor barrier?
Slabs receiving any coating, polish, overlay, or adhesive-applied flooring require a vapor barrier. Exterior slabs and utility slabs that will remain uncoated may not require one. The determining factor is whether moisture transmission through the slab will interfere with the intended surface treatment.
How do you test a concrete slab for moisture problems after it is poured?
Calcium chloride testing (ASTM F1869) measures moisture vapor emission rate from the slab surface. Relative humidity testing with in-situ probes (ASTM F2170) measures moisture conditions within the slab at 40% depth. Either test gives a firm number before a coating or overlay goes on a slab that raises a flag. Elevated readings indicate either a missing barrier, a compromised barrier, or insufficient curing time.
What thickness should a concrete vapor barrier be?
Standard practice for below-slab MVB in commercial and residential construction specifies polyethylene sheeting of at least 10 mil thickness. ASTM E1745 classifies vapor retarders into Class A, B, and C based on tensile strength, puncture resistance, and permeance. Class A provides the highest performance and is recommended for slabs receiving polished or coated finishes where moisture sensitivity is greatest.
How long does it take for moisture problems from incorrect barrier placement to appear?
Moisture-related coating failures typically manifest between 6 and 18 months after the finish is applied. The timeline depends on local water table height, soil moisture content, slab thickness, and the permeability of the applied coating. Thinner slabs and more humid subsurface conditions accelerate the failure timeline. Some installations with severe gravel reservoir conditions have shown failure in as few as 3 months.
Placement done correctly turns this whole page into something you never have to think about again. Done wrong, every coating decision that follows is just borrowed time.
