#concrete-calculator-wrapper .calc-container {
background-color: #f9f9f9;
border: 1px solid #e0e0e0;
border-radius: 8px;
padding: 30px;
box-shadow: 0 4px 6px rgba(0,0,0,0.05);
margin-bottom: 40px;
}
#concrete-calculator-wrapper h2 {
text-align: center;
color: #2c3e50;
margin-bottom: 25px;
}
#concrete-calculator-wrapper .input-group {
margin-bottom: 20px;
}
#concrete-calculator-wrapper label {
display: block;
font-weight: 600;
margin-bottom: 8px;
color: #555;
}
#concrete-calculator-wrapper input,
#concrete-calculator-wrapper select {
width: 100%;
padding: 12px;
border: 1px solid #ccc;
border-radius: 4px;
font-size: 16px;
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 {
width: 100%;
padding: 15px;
background-color: #e67e22;
color: white;
border: none;
border-radius: 4px;
font-size: 18px;
font-weight: bold;
cursor: pointer;
transition: background-color 0.3s;
margin-top: 10px;
}
#concrete-calculator-wrapper button.calc-btn:hover {
background-color: #d35400;
}
#concrete-calculator-wrapper #calc-results {
margin-top: 30px;
padding: 20px;
background-color: #fff;
border-left: 5px solid #27ae60;
display: none;
}
#concrete-calculator-wrapper .result-item {
display: flex;
justify-content: space-between;
padding: 10px 0;
border-bottom: 1px solid #eee;
}
#concrete-calculator-wrapper .result-item:last-child {
border-bottom: none;
}
#concrete-calculator-wrapper .result-value {
font-weight: bold;
font-size: 18px;
color: #2c3e50;
}
#concrete-calculator-wrapper .calc-article {
line-height: 1.6;
margin-top: 50px;
}
#concrete-calculator-wrapper .calc-article h3 {
color: #2980b9;
margin-top: 30px;
}
#concrete-calculator-wrapper .calc-article ul {
padding-left: 20px;
}
#concrete-calculator-wrapper .calc-article li {
margin-bottom: 10px;
}
function calculateConcrete() {
// Get inputs
var len = parseFloat(document.getElementById('slabLength').value);
var wid = parseFloat(document.getElementById('slabWidth').value);
var depth = parseFloat(document.getElementById('slabDepth').value);
var waste = parseFloat(document.getElementById('wasteFactor').value);
var priceYard = parseFloat(document.getElementById('pricePerYard').value);
var priceBag = parseFloat(document.getElementById('bagPrice').value);
// Validation
if (isNaN(len) || isNaN(wid) || isNaN(depth) || len <= 0 || wid <= 0 || depth 0) {
document.getElementById('res-cost-truck').innerText = "$" + costTruck.toFixed(2);
} else {
document.getElementById('res-cost-truck').innerText = "N/A";
}
document.getElementById('res-bags-60').innerText = bags60 + " bags";
document.getElementById('res-bags-80').innerText = bags80 + " bags";
if (priceBag > 0) {
document.getElementById('res-cost-bags').innerText = "$" + costBags.toFixed(2) + " (using 80lb bags)";
} else {
document.getElementById('res-cost-bags').innerText = "N/A";
}
// Show result container
document.getElementById('calc-results').style.display = 'block';
}
How to Calculate Concrete Needed for a Slab
Whether you are pouring a patio, a driveway, or a shed foundation, calculating the correct amount of concrete is crucial to the success of your project. Ordering too little can result in a catastrophic "cold joint" if you run out mid-pour, while ordering too much is a waste of money.
The Concrete Formula
To determine the volume of concrete required, you need to calculate the volume of your slab in cubic feet and then convert that number to cubic yards, which is how ready-mix trucks measure their load.
The basic formula is:
- Length (ft) × Width (ft) × Depth (ft) = Cubic Feet
- Cubic Feet ÷ 27 = Cubic Yards
Note: Since depth is usually measured in inches, remember to divide the inches by 12 to convert to feet before multiplying.
Why Include a Waste Factor?
Professional contractors always include a "margin of error" or waste factor, typically between 5% and 10%. This accounts for several variables:
- Spillage: Some concrete is inevitably lost during the transfer from truck to wheelbarrow or form.
- Uneven Subgrade: If your ground isn't perfectly flat, some areas of the slab will be thicker than the calculated depth.
- Form Settling: Wooden forms may bow slightly under the weight of the wet concrete.
Bagged Mix vs. Ready-Mix Truck
When should you mix it yourself versus ordering a truck? Our calculator provides estimates for both.
Bagged Concrete (DIY): Best for projects under 1 cubic yard (approx. 45-50 bags of 80lb mix). It requires physical labor and a mixer but allows you to work at your own pace on smaller projects like post holes or small landings.
Ready-Mix Truck: Best for projects over 1 cubic yard. It guarantees a consistent mix and allows for a monolithic pour, which is stronger. However, it requires a minimum order quantity (often 1 yard + a delivery fee) and you must work quickly once the truck arrives.
Standard Slab Thicknesses
- 4 Inches: Standard for residential sidewalks, patios, and garage floors (for passenger cars).
- 5-6 Inches: Recommended for driveways holding heavier vehicles, RV pads, or hot tub foundations.
- 8+ Inches: Heavy industrial use or areas with poor soil conditions.