Nails & Numbers

HomeConcrete › Concrete Slab Calculator

Concrete Slab Calculator

IRC Section R506 in full: base course, vapor retarder and where the steel sits

The code minimum for a residential slab on ground is three and a half inches, not four. IRC Section R506 also governs the fill under it, the four inches of base course under that, the six-mil sheet between them, and one sentence about where the reinforcement has to finish that decides whether the steel does anything at all. This sizes the whole assembly, and prints the section so you can check it.

Slab, base course and vapor retarder

ft
ft
in
in
ft
%

Section R506 is printed in full below. Strength and air entrainment come from R402.2 and are on the concrete calculator.

Specification summary

Generated from on . Reopen that address to reproduce these figures exactly.

Entered

Result

This figure is drawn from the slab you type in above.
The assembly in section, drawn to scale

Worked example

A 24 ft by 24 ft heated garage conversion at 4 in, below grade, on soil that is not Group I, with 4 in of base course and a 10 ft roll of poly.

  1. Area. 24 × 24 = 576 sq ft.
  2. Thickness. 4 in against R506.1's 3 1/2 in minimum, so half an inch over.
  3. Concrete. 576 × 4/12 = 192 cu ft = 7.11 cu yd. At the code minimum it would be 6.22, a saving of 0.89 cu yd.
  4. Base course. Below grade and not Group I soil, so R506.2.2 requires it: another 7.11 cu yd of clean graded material passing a 2 in sieve.
  5. Vapor retarder. Heated and enclosed, so required. A 10 ft roll lapped 6 in covers 9.5 ft, so 3 runs of 24 ft.
  6. Steel. R506.2.4 puts it between 2 in and 2.7 in above the bottom of a 4 in slab.

Two things worth noticing. The base course is the same volume as the concrete and it is easy to forget entirely, which turns a one-delivery job into two. And the poly comes to 720 sq ft on a 576 sq ft slab, 25% more, because every seam is lapped 6 in and the code sets that as a minimum rather than a target. Buying the slab area exactly leaves you short.

The formula

Three quantities, and the third is the one that surprises people:

V = A t/12    Vₖ = A b/12    runs = ⌈W / (r − 6/12)⌉
A, t
slab area in sq ft and thickness in in. R506.1 sets a 3 1/2 in minimum
b
base course thickness. R506.2.2 sets 4 in where the slab is below grade
r
vapor retarder roll width, ft
6/12
the lap. R506.2.3 sets 6 in as a minimum, not a target

The lap term is why the retarder is always more material than the slab. On a 24 ft width with a 10 ft roll the effective cover is 9.5 ft, so three runs are needed rather than the 2.4 a naive division suggests, and 720 sq ft of poly goes over a 576 sq ft slab.

Why this page is not the concrete calculator again

A slab is an assembly. The concrete is the visible part and often not the part that fails.

IRC Section R506 spends four subsections on everything underneath: the vegetation and topsoil that must come out, how deep fill may be before it stops being prescriptive, a 4 in base course of clean graded material where the slab is below grade, and a 6-mil sheet between the concrete and whatever is under it. Then one final subsection on where the reinforcement has to end up.

None of that is volume arithmetic and all of it is a quantity you have to order. The base course alone is usually the same cubic yardage as the concrete, and it arrives on a different lorry from a different supplier.

So this page sizes the assembly and prints the section, and the concrete calculator handles yards, bags and the strength table. They answer different questions about the same pour.

What R506 actually says, in full

A slab on ground is not just the concrete. IRC Section R506 governs the fill under it, the base course under that, the sheet between them and where the reinforcement has to sit. It is short enough to print whole:

R506.1
Concrete slab-on-ground floors shall be designed and constructed in accordance with the provisions of this section or ACI 332. Floors shall be a minimum 3 1/2 inches thick (for expansive soils, see Section R403.1.8). The specified compressive strength of concrete shall be as set forth in Section R402.2.
R506.2.1
The fill shall be compacted to ensure uniform support of the slab, and except where approved, the fill depths shall not exceed 24 inches for clean sand or gravel and 8 inches for earth.
R506.2.2
A 4-inch-thick base course consisting of clean graded sand, gravel, crushed stone, crushed concrete or crushed blast-furnace slag passing a 2-inch sieve shall be placed on the prepared subgrade where the slab is below grade.
R506.2.3
A 6-mil (0.006 inch) polyethylene or approved vapor retarder with joints lapped not less than 6 inches shall be placed between the concrete floor slab and the base course or the prepared subgrade where no base course exists.
R506.2.4
Where provided in slabs-on-ground, reinforcement shall be supported to remain in place from the center to upper one-third of the slab for the duration of the concrete placement.

Transcribed from the 2015 Seattle Residential Code, page 168, which prints the section in full. Read 2026-09-08.

R506.1 says three and a half inches. Not four. Four is the trade convention and a perfectly good one, but the prescriptive minimum for a residential slab on ground is 3 1/2, and the half inch is 12% of the concrete on the job. If you are pouring four because that is what you have always poured, that is a choice rather than a requirement, and it is worth making deliberately.

Three and a half inches, and what the extra half costs

R506.1 sets the minimum at 3 1/2 in. Four inches is the trade convention, and there is nothing wrong with it, but it is 14% more concrete than the code asks for.

On the 576 sq ft example that is 7.11 cu yd against 6.22, so nearly nine tenths of a yard. On a 2,000 sq ft slab it is 3.1 cu yd, which is a meaningful line on a delivery.

None of which is an argument for pouring thin. A slab carrying vehicle loads, or one over poor subgrade, wants the extra and then some, and the section itself offers design to ACI 332 as the alternative route for anything the prescriptive path does not cover. The point is that four inches is a decision, and the calculator shows you both numbers so it is made on purpose.

Expansive soils are explicitly sent elsewhere, to Section R403.1.8, and that is not a thickness question this page can answer.

The base course is a second delivery

Where the slab is below grade, R506.2.2 requires 4 in of clean graded sand, gravel, crushed stone, crushed concrete or crushed blast-furnace slag passing a 2 in sieve. At the same 4 in as a typical slab, that is the same volume again.

It is a different material from a different supplier, and forgetting it is how a one-delivery job becomes two and a pour gets postponed a week.

The exception is narrow and specific: a base course is not required on well-drained or sand-gravel soils classified Group I under the Unified Soil Classification System, per Table R405.1. That is a soil classification, not a guess about whether your garden drains well, and the calculator makes you assert it rather than assuming it.

The quantity is given here in cubic yards only. Aggregate is often sold by the ton and the conversion depends on the material and how it is graded, which the code does not specify and this site will not invent.

What this page does not decide

Reinforcement. Whether the slab has any, what size and at what spacing, is a design question. R506.2.4 only says where it has to finish if it is there. The rebar calculator counts a mat once someone has specified it.

Strength and air. Those come from R402.2, which is on the concrete calculator along with the two jurisdictions that amend it.

Control joints. Where and how deep to cut is not in R506 at all.

Thickened edges, footings and frost depth. Frost depth is set locally and cannot be published as a national number.

The one sentence that decides whether the steel does anything

R506.2.4 is twenty-eight words long and it is the most ignored line in the section:

Where provided in slabs-on-ground, reinforcement shall be supported to remain in place from the center to upper one-third of the slab for the duration of the concrete placement.

Read what it requires. Not that reinforcement exists. That it is supported, that it stays there for the duration of the placement, and that it ends up in the centre to upper third of the slab.

Mesh rolled out on the subgrade and hooked up with a rake as the concrete goes past does not meet any of those three. It ends up somewhere between the bottom of the slab and nowhere in particular, and reinforcement at the bottom of a slab is not resisting the shrinkage cracking at the top that it was put there for. It is expensive gravel.

Which is what chairs and bar supports are for, and why they are a line on the order rather than an afterthought. The calculator does not count them, because spacing depends on the bar stiffness and the traffic during the pour, but it does tell you the band the steel has to finish in for your thickness.

Where the code text came from

Read 2026-09-08, from 2015 Seattle Residential Code, Chapter 5 Floors, Section R506, Seattle Department of Construction and Inspections, page 168.

Why Seattle again. codes.iccsafe.org returns HTTP 403 and cannot be read from here. Seattle publishes its residential code chapter by chapter as free PDFs, prints the model IRC text in full, and marks its own amendments separately, which makes it checkable. It is also, plainly, one city's adopted code: your jurisdiction may have amended any of this. Some require a 10-mil retarder to ASTM E1745 Class A rather than the model 6-mil. Ask before you buy the roll.

Frequently asked questions

How thick does a concrete slab need to be?
IRC Section R506.1 sets a minimum of 3 1/2 in for a residential slab on ground, and sends expansive soils to Section R403.1.8. Four inches is the common trade practice and is 14% more concrete than the minimum. The section also permits design to ACI 332 instead of the prescriptive route.
How much concrete for a 24x24 slab?
At 4 in thick, 192 cubic feet, which is 7.11 cubic yards. At the 3 1/2 in code minimum it is 6.22 cubic yards. Add a waste allowance on top of either: a hand-graded subgrade is not flat, and the hollows are filled with concrete you paid for.
Do I need gravel under a concrete slab?
R506.2.2 requires a 4 in base course of clean graded sand, gravel, crushed stone, crushed concrete or crushed blast-furnace slag passing a 2 in sieve where the slab is below grade. It is not required on well-drained or sand-gravel soils classified as Group I under Table R405.1. At 4 in it is usually the same volume as the concrete itself.
Do I need a vapor barrier under a concrete slab?
R506.2.3 requires a 6-mil polyethylene or approved vapor retarder with joints lapped not less than 6 in, between the slab and the base course. There are four exceptions: garages and unheated accessory structures, unheated storage under 70 sq ft and carports, driveways, walks, patios and other flatwork not likely to be enclosed and heated later, and where the building official approves based on local site conditions.
How much plastic sheeting do I need under a slab?
More than the slab area, because every seam laps at least 6 in. A 10 ft roll covers 9.5 ft effectively, so a 24 ft width needs three runs rather than the 2.4 a straight division suggests, and 720 sq ft of poly goes over a 576 sq ft slab. That is 25% more before any trimming allowance.
Where should wire mesh sit in a concrete slab?
R506.2.4 requires reinforcement to be supported so it stays between the centre and the upper third of the slab for the whole placement. In a 4 in slab that band is roughly 2 in to 2.7 in above the bottom. Mesh laid on the subgrade and hooked up with a rake during the pour meets none of that.
How deep can fill go under a slab?
R506.2.1 limits fill depth to 24 in for clean sand or gravel and 8 in for earth, except where approved, and requires it to be compacted to give uniform support. Deeper than that stops being a prescriptive question.

Check these numbers yourself

How every figure here is verified: Sources & Method. Who builds this: About. Found something wrong? Tell us and it gets fixed or removed.

Figures on this page last checked against the source documents on 2026-09-08. Codes are amended locally; confirm against the edition your jurisdiction enforces.

Related calculators

One city's adopted code, printing the model text. Section R506 was read from the 2015 Seattle Residential Code on 8 September 2026 because codes.iccsafe.org returns HTTP 403. Jurisdictions amend it: some require a 10-mil retarder to ASTM E1745 Class A rather than the model 6-mil. Reinforcement design, control joints, thickened edges and frost depth are not decided here.