Calculate cubic yards and premix bags needed for your project
0% (Exact)
5% (Standard)
10% (Complex Shapes)
Please enter valid positive numbers for all dimensions.
Total Volume Required:0 Cubic Yards
Volume in Cubic Feet:0 cu ft
60lb Premix Bags Needed:0
80lb Premix Bags Needed:0
function calculateConcrete() {
// 1. Get Input Values
var lengthStr = document.getElementById("slab-length").value;
var widthStr = document.getElementById("slab-width").value;
var depthStr = document.getElementById("slab-depth").value;
var wasteStr = document.getElementById("waste-factor").value;
// 2. Validate Inputs
if (lengthStr === "" || widthStr === "" || depthStr === "") {
document.getElementById("error-message").style.display = "block";
document.getElementById("calc-results").style.display = "none";
return;
}
var length = parseFloat(lengthStr);
var width = parseFloat(widthStr);
var depth = parseFloat(depthStr);
var wastePercent = parseFloat(wasteStr);
if (isNaN(length) || isNaN(width) || isNaN(depth) || length <= 0 || width <= 0 || depth <= 0) {
document.getElementById("error-message").style.display = "block";
document.getElementById("calc-results").style.display = "none";
return;
}
// Hide error if valid
document.getElementById("error-message").style.display = "none";
// 3. Calculation Logic
// Convert depth inches to feet
var depthInFeet = depth / 12;
// Calculate Cubic Feet
var cubicFeet = length * width * depthInFeet;
// Apply Waste Factor
var totalCubicFeet = cubicFeet * (1 + (wastePercent / 100));
// Convert to Cubic Yards (1 Yard = 27 Cubic Feet)
var cubicYards = totalCubicFeet / 27;
// Calculate Bags
// Standard Yields:
// 80lb bag yields approx 0.60 cubic feet
// 60lb bag yields approx 0.45 cubic feet
var bags80 = Math.ceil(totalCubicFeet / 0.60);
var bags60 = Math.ceil(totalCubicFeet / 0.45);
// 4. Update UI
document.getElementById("res-cubic-yards").innerText = cubicYards.toFixed(2);
document.getElementById("res-cubic-feet").innerText = totalCubicFeet.toFixed(2);
document.getElementById("res-80lb-bags").innerText = bags80;
document.getElementById("res-60lb-bags").innerText = bags60;
// Show Results
document.getElementById("calc-results").style.display = "block";
}
How to Calculate Concrete for a Slab
Planning a patio, driveway, or shed foundation requires precise measurements to ensure you order enough materials without overspending. This Concrete Slab Calculator helps you determine exactly how many cubic yards of concrete or premix bags you need based on the dimensions of your project.
The Concrete Calculation Formula
To calculate the volume of concrete needed for a rectangular slab, you need to determine the volume in cubic feet and then convert it to cubic yards, which is the standard unit for ordering ready-mix concrete.
Note: Since thickness is usually measured in inches, you must divide the inches by 12 to get the thickness in feet before multiplying.
Why Include a Waste Factor?
Our calculator includes a "Waste Factor" option, defaulting to 5%. In construction, a margin of safety is critical for several reasons:
Uneven Subgrade: The ground below your slab is rarely perfectly flat, meaning some areas may be deeper than measured.
Form Spillage: Some concrete may spill over the forms during pouring and screeding.
Texture loss: If you are creating a slab with a varying depth or complex shape, calculation errors are more common.
For simple rectangular projects, 5% is standard. For complex shapes or sites with difficult access, consider using 10%.
Using Premix Bags vs. Ready-Mix Truck
When should you use bags (like Quikrete or Sakrete) versus ordering a truck?
Under 1 Cubic Yard: Premix bags are usually more economical. You can haul them in a pickup truck or have them delivered on a pallet.
Over 1 Cubic Yard: It becomes labor-intensive to mix by hand. A ready-mix truck delivery is often preferred for larger patios and driveways to ensure a consistent cure and reduce physical strain.
Yield Reference: Generally, an 80lb bag of concrete mix yields approximately 0.60 cubic feet of cured concrete. A 60lb bag yields about 0.45 cubic feet.