#concrete-calculator-wrapper .calc-box {
background: #f8f9fa;
border: 1px solid #e9ecef;
border-radius: 8px;
padding: 30px;
box-shadow: 0 4px 6px rgba(0,0,0,0.05);
margin-bottom: 40px;
}
#concrete-calculator-wrapper h3 {
margin-top: 0;
color: #2c3e50;
text-align: center;
margin-bottom: 25px;
}
#concrete-calculator-wrapper .input-group {
margin-bottom: 15px;
display: flex;
flex-direction: column;
}
#concrete-calculator-wrapper label {
font-weight: 600;
margin-bottom: 5px;
color: #495057;
}
#concrete-calculator-wrapper input,
#concrete-calculator-wrapper select {
padding: 10px;
border: 1px solid #ced4da;
border-radius: 4px;
font-size: 16px;
width: 100%;
box-sizing: border-box;
}
#concrete-calculator-wrapper .row {
display: flex;
gap: 20px;
flex-wrap: wrap;
}
#concrete-calculator-wrapper .col {
flex: 1;
min-width: 200px;
}
#concrete-calculator-wrapper button.calc-btn {
background-color: #007bff;
color: white;
border: none;
padding: 12px 20px;
font-size: 18px;
font-weight: bold;
border-radius: 5px;
cursor: pointer;
width: 100%;
margin-top: 10px;
transition: background-color 0.2s;
}
#concrete-calculator-wrapper button.calc-btn:hover {
background-color: #0056b3;
}
#concrete-calculator-wrapper #calc-results {
display: none;
background-color: #fff;
border: 1px solid #28a745;
border-radius: 5px;
padding: 20px;
margin-top: 25px;
}
#concrete-calculator-wrapper .result-item {
display: flex;
justify-content: space-between;
border-bottom: 1px solid #eee;
padding: 10px 0;
font-size: 18px;
}
#concrete-calculator-wrapper .result-item:last-child {
border-bottom: none;
}
#concrete-calculator-wrapper .result-label {
color: #6c757d;
}
#concrete-calculator-wrapper .result-value {
font-weight: bold;
color: #2c3e50;
}
#concrete-calculator-wrapper .highlight {
color: #28a745;
font-size: 20px;
}
#concrete-calculator-wrapper .seo-content {
line-height: 1.6;
color: #333;
}
#concrete-calculator-wrapper .seo-content h2 {
color: #2c3e50;
border-bottom: 2px solid #007bff;
padding-bottom: 10px;
margin-top: 30px;
}
#concrete-calculator-wrapper .seo-content ul {
background: #f1f8ff;
padding: 20px 40px;
border-radius: 5px;
}
function calculateConcrete() {
var length = parseFloat(document.getElementById("slabLength").value);
var width = parseFloat(document.getElementById("slabWidth").value);
var thickness = parseFloat(document.getElementById("slabThickness").value);
var quantity = parseFloat(document.getElementById("slabQuantity").value);
var waste = parseFloat(document.getElementById("wasteFactor").value);
if (isNaN(length) || isNaN(width) || isNaN(thickness) || isNaN(quantity)) {
alert("Please enter valid numbers for all fields.");
return;
}
// Convert thickness from inches to feet
var thicknessInFeet = thickness / 12;
// Calculate base volume in cubic feet for one item
var volumeCubicFeet = length * width * thicknessInFeet;
// Multiply by quantity
var totalCubicFeet = volumeCubicFeet * quantity;
// Apply waste factor
var wasteMultiplier = 1 + (waste / 100);
var finalCubicFeet = totalCubicFeet * wasteMultiplier;
// Calculate Cubic Yards (27 cubic feet = 1 cubic yard)
var cubicYards = finalCubicFeet / 27;
// Calculate Bags needed
// Standard pre-mix yield:
// 80lb bag ~= 0.60 cubic feet
// 60lb bag ~= 0.45 cubic feet
var bags80 = finalCubicFeet / 0.60;
var bags60 = finalCubicFeet / 0.45;
// Update UI
document.getElementById("resYards").innerHTML = cubicYards.toFixed(2) + " yd³";
document.getElementById("resFeet").innerHTML = finalCubicFeet.toFixed(2) + " ft³";
document.getElementById("resBags80″).innerHTML = Math.ceil(bags80) + " bags";
document.getElementById("resBags60″).innerHTML = Math.ceil(bags60) + " bags";
document.getElementById("calc-results").style.display = "block";
}
How to Calculate Concrete for Slabs and Footings
Estimating the correct amount of concrete is crucial for any construction project, whether you are pouring a driveway, a patio, or post footings. Ordering too little can result in expensive "short load" fees or cold joints, while ordering too much is a waste of money.
The Concrete Formula
Concrete is measured by volume, specifically in Cubic Yards. To find this, you must multiply the Length x Width x Thickness of your slab, ensuring all units are in feet, and then divide by 27 (since there are 27 cubic feet in one cubic yard).
Formula: (Length(ft) × Width(ft) × Thickness(ft)) / 27 = Cubic Yards
Standard Thickness Guide
- 4 Inches: 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 hot tubs.
- 42 Inches+: Often required for frost-line footings in colder climates.
Why Include a Waste Factor?
No pour is perfect. Our calculator allows you to add a waste margin (typically 5-10%) to account for:
- Spillage during transport or pouring.
- Uneven subgrade (dips in the ground) requiring more material.
- Form bowing (wood forms bending slightly outward under pressure).
For simple flatwork like a patio, 5% is usually sufficient. For complex shapes, stairs, or footings dug directly into the earth, a 10% safety margin is safer.