About this calculator
This calculator takes off a monolithic raft slab — a reinforced concrete plate cast over the whole building footprint, optionally thickened along its edges — as a full bill of quantities: concrete for the slab and the edge thickening (kept separate), the blinding layer, the under-slab insulation, the welded mesh sheets packed as a real grid with their laps accounted for, the perimeter formwork boards packed by length, the slab area for waterproofing, the perimeter length, and an indicative ground bearing pressure from the slab's own weight.
This calculator computes quantities only. It does not design the slab. Slab thickness, thickening size, mesh size, wire diameter, and layer count are all your own inputs — the calculator counts what they add up to, it does not check whether they are adequate. The actual slab, its reinforcement, and its bearing on your soil must be designed by a qualified structural engineer against the building load, the soil investigation, and the local code.
Footprint is a plain rectangle (length × width). An L- or T-shaped raft is a real thing, but packing mesh sheets and insetting a thickening band on a non-rectangular outline is a different problem, and the calculator does not pretend to solve it — treat an irregular slab as separate rectangles.
Formula
Concrete — slab and edge thickening, separately. The thickening is a
downstand band of constant width EW inset from the slab edge, ED deep below
the slab's underside. Its plan area is the outer rectangle minus the inner one
it leaves, which counts each corner exactly once:
slabArea = L x W; perimeter = 2 x (L + W)
slabVolume = slabArea x T
thickeningArea = slabArea - (L - 2 x EW) x (W - 2 x EW)
thickeningVolume = thickeningArea x ED
concreteNet = slabVolume + thickeningVolume
concreteWaste = round(concreteNet x waste% / 100); concreteTotal = concreteNet + concreteWaste
slabMass / thickeningMass = volume x 2500 kg/m3 (reinforced concrete, see Assumptions)
Blinding and insulation each cover the full plan area once. Under the
thickening both layers step down by ED, but a step changes neither layer's
plan area, so:
blindingVolume = slabArea x B; blindingMass = blindingVolume x 2400 kg/m3 (plain concrete)
insulationArea = slabArea; insulationVolume = slabArea x I
Bearing pressure (indicative). The slab and thickening's own weight over the full plan area — excluding blinding, insulation, and any building load:
groundBearingPressure = (slabMass + thickeningMass) x 9.81 m/s2 / slabArea
Mesh sheets — a real grid, with laps. Adjacent sheets lap by a stated number of squares (wire pitches), so each sheet after the first adds only its length minus the lap of new coverage:
lap = overlapSquares x pitch
sheetsAlong(span, sheet) = 1 if span <= sheet
= 1 + ceil((span - sheet) / (sheet - lap)) otherwise
sheetsPerLayer = sheetsAlong(L, sheetLength) x sheetsAlong(W, sheetWidth)
Both orientations are packed — sheet length along the slab length, or across its width — and the one needing fewer sheets is used (ties go to the unrotated layout). Then:
sheetsNet = sheetsPerLayer x layers
sheetsRequired = ceil(sheetsNet x (1 + meshWaste% / 100))
This is not area division. A 7 × 7 m slab on 6 × 2.4 m sheets needs 8 sheets per layer (2 along each side × 4 across), while dividing 49 m² by a sheet's 14.4 m² says 4, and by its effective 12 m² says 5 — the sheet that reaches 6 m along a 7 m side leaves 1 m that no offcut fills; a second full sheet has to go there.
Mesh mass per sheet counts one wire at every pitch plus a closing wire in each direction, with no overhang past the last wire:
wiresAlong = floor(sheetWidth / pitch) + 1; wiresAcross = floor(sheetLength / pitch) + 1
wireLength = wiresAlong x sheetLength + wiresAcross x sheetWidth
sheetMass = wireLength x pi x (d/2)^2 x 7850 kg/m3
Edge formwork. Boards run horizontally along the slab's outer face only:
formedHeight = T (thickening cast against the trench sides)
= T + ED (thickening board-formed)
courseCount = ceil(formedHeight / boardWidth)
For every course and each of the four sides, one run of that side's length is chunked into stock-board-length pieces; every piece plus a chunked waste allowance is packed into the fewest boards by first-fit decreasing bin packing (longest piece first, into the first board with room, a new board only when none fits) — the same model the strip foundation calculator uses.
Worked example
A 10 × 8 m slab, 250 mm thick, with a 400 mm wide × 300 mm deep edge thickening, 100 mm blinding, 200 mm insulation, 150 × 150 mm ⌀8 mesh in two layers on 6 × 2.4 m sheets lapped 2 squares, every other input at its default.
slabArea = 80 m2; perimeter = 36 m
slabVolume = 80 x 0.25 = 20 m3; slabMass = 50,000 kg
thickeningArea = 80 - 9.2 x 7.2 = 13.76 m2; thickeningVolume = 13.76 x 0.3 = 4.128 m3
concreteNet = 24.128 m3; +5% waste = 25.334 m3
blindingVolume = 80 x 0.1 = 8 m3 (19,200 kg); insulationVolume = 80 x 0.2 = 16 m3
groundBearingPressure = (50,000 + 10,320) x 9.81 / 80 / 1000 = 7.40 kPa
lap = 2 x 150 = 300 mm
along 10 m on 6 m sheets: 1 + ceil(4,000 / 5,700) = 2
across 8 m on 2.4 m sheets: 1 + ceil(5,600 / 2,100) = 4 -> 8 per layer
(rotated: 5 x 2 = 10, so unrotated wins)
sheetsNet = 8 x 2 = 16; sheetsRequired = ceil(16 x 1.05) = 17
formwork (250 mm formed height, 200 mm boards): 2 courses
per course [10, 8, 10, 8] m on 4 m boards -> 8 x 4 m + 2 x 2 m pieces
x2 courses + 10% waste, packed -> 20 boards (18 before waste)
For these inputs the calculator returns exactly this: 24.128 m³ net concrete (25.334 m³ with waste — 20 m³ slab + 4.128 m³ thickening), 16 mesh sheets net, 17 with waste, and 20 formwork boards.
FAQ
Why count the overlap in squares rather than millimetres? Because that is how the standard itself frames it for welded fabric: LST EN 1992-1-1 (Eurocode 2) Cl. 8.7.5.2, Table 8.4, sets the lap of the fabric's secondary wires as a minimum length and a minimum number of wire pitches within the lap (≥ 150 mm and 1 pitch for wires up to 6 mm; ≥ 250 mm and 2 pitches for 6–8.5 mm; ≥ 350 mm and 2 pitches for 8.5–12 mm). The calculator converts your square count to millimetres, shows both, and warns when the lap falls below that table for your wire diameter. It does not compute the lap of the fabric's main wires — Cl. 8.7.5.1 sends those through the full Cl. 8.7.3 anchorage calculation, which depends on bond conditions and stress the calculator does not know. Your engineer specifies the lap; the calculator counts sheets for it.
Why does the sheet count come out higher than slab area divided by sheet area? Because sheets are rectangles laid in a grid, and a grid cannot borrow the unused end of one row to finish another. See the Formula section's 7 × 7 m example: dividing area under-counts by three sheets per layer.
What is "effective sheet length"? The sheet length minus one lap — the new coverage each additional sheet in a row contributes. The first sheet in each row contributes its full length.
Does the thickening need formwork?
Only if it is cast against boards rather than the sides of a trench dug to its
profile. The thickeningFormed switch adds the thickening depth to the formed
edge height; off by default, since a trench-cast thickening is the common case.
Does concrete class affect the volume or mass?
No. concreteClass (the LST EN 206 strength-class designations) is for the
specification only — one constant density is used regardless of class.
Does the calculator check the slab against my building's load? No. The bearing pressure it reports is the slab's own weight spread over its own area, excluding the building entirely — a sanity figure, not a bearing-capacity check. Slab design belongs to a structural engineer working from a soil investigation.
Assumptions and limits
Standards cited, and what each actually covers:
- LST EN 206 — the concrete strength-class designations offered in
concreteClass; nothing else. - LST EN 1992-1-1 (Eurocode 2) — Cl. 8.7.5.2 / Table 8.4, laps of a welded fabric's secondary wires, which is the basis for counting the lap in squares and for the below-table warning. The calculator does not run the Cl. 8.7.3 calculation the main-wire lap requires.
- LST EN 1991-1-1 Annex A (informative) — both concrete densities: 2400 kg/m³ for the blinding (plain) and 2500 kg/m³ for the slab and thickening (reinforced, normal percentage).
Trade practice, not a standard — disclosed here rather than in
meta.standards: the 6.0 × 2.4 m default sheet size (a common stock size in
this market; 2 × 3 m sheets are also common), the 2-square default lap, the
100 mm default blinding and 200 mm default insulation thickness, and the
formwork board sizes.
Mesh is assumed to cover the whole plan area, edge cover ignored — this only rounds the count up. Sheet mass assumes a wire at every pitch plus a closing wire and no end overhang; real mill sheets vary by a wire or two.
Blinding and insulation follow the thickening's stepped profile and cover the plan area exactly once, with no overhang past the slab edge.
Ground bearing pressure is indicative only — self weight of the concrete alone, excluding blinding, insulation, and any building load.
Rectangle only. An irregular footprint should be treated as separate rectangles; the calculator does not pack a non-rectangular grid.
This calculator does not design the slab. Thickness, thickening, mesh size, wire diameter, and layers are your inputs; a qualified engineer must design the real slab.