Whether you are pouring a new patio, a driveway, or a foundation for a shed, calculating the correct amount of concrete is the most critical step in the planning process. Ordering too little concrete creates "cold joints"—weak spots where fresh concrete meets hardening concrete—while ordering too much wastes money and creates disposal issues.
Understanding the Formula
Concrete is measured by volume, specifically in Cubic Yards. The basic formula for a rectangular slab is:
Since thickness is usually measured in inches, our calculator automatically converts your input (e.g., 4 inches) into feet (0.33 feet) before performing the calculation.
Standard Thickness Guidelines
Choosing the right thickness is essential for durability:
4 Inches: The standard for residential sidewalks, patios, and garage floors used for passenger cars.
5-6 Inches: Recommended for driveways that hold heavier vehicles (trucks, SUVs) or areas with poor soil conditions.
8+ Inches: Heavy-duty commercial applications or loading docks.
Why Include a Waste Margin?
Professional contractors never order the exact mathematical amount. Ground preparation is rarely perfectly level, and forms may bow slightly under the weight of the wet mix. Spillage is also inevitable.
We recommend adding a 5% to 10% safety margin (waste factor). This ensures you have enough material to finish the job in one pour without running out.
Bagged Concrete vs. Ready-Mix Truck
When should you mix it yourself versus ordering a truck?
Bagged Mix (DIY): Best for projects requiring less than 1 cubic yard (approx. 40-50 bags of 80lb mix). Ideal for setting posts, small repairs, or tiny pads.
Ready-Mix Truck: Best for any project over 1 cubic yard. It guarantees a consistent mix and saves back-breaking labor. Note that many suppliers have a "short load fee" for orders under 3-4 yards.
function calculateConcrete() {
// 1. Get Input Values
var length = parseFloat(document.getElementById('slabLength').value);
var width = parseFloat(document.getElementById('slabWidth').value);
var thickInches = parseFloat(document.getElementById('slabThickness').value);
var quantity = parseFloat(document.getElementById('slabQuantity').value);
var price = parseFloat(document.getElementById('pricePerYard').value);
var wastePercent = parseFloat(document.getElementById('wasteFactor').value);
// 2. Validation
if (isNaN(length) || isNaN(width) || isNaN(thickInches)) {
alert("Please enter valid numbers for Length, Width, and Thickness.");
return;
}
if (isNaN(quantity) || quantity 0) {
document.getElementById('resCost').innerText = "$" + totalCost.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
} else {
document.getElementById('resCost').innerText = "Enter price to estimate";
}
// Show results area
document.getElementById('results-area').style.display = 'block';
}