.calc-container-wrapper {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
max-width: 800px;
margin: 0 auto;
padding: 20px;
line-height: 1.6;
color: #333;
}
.concrete-calculator {
background-color: #f8f9fa;
border: 1px solid #e9ecef;
border-radius: 8px;
padding: 30px;
box-shadow: 0 4px 6px rgba(0,0,0,0.05);
margin-bottom: 40px;
}
.calc-title {
text-align: center;
margin-bottom: 25px;
color: #2c3e50;
font-size: 24px;
font-weight: 700;
}
.calc-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
}
@media (max-width: 600px) {
.calc-grid {
grid-template-columns: 1fr;
}
}
.input-group {
margin-bottom: 15px;
}
.input-group label {
display: block;
margin-bottom: 8px;
font-weight: 600;
font-size: 14px;
color: #555;
}
.input-group input, .input-group select {
width: 100%;
padding: 12px;
border: 1px solid #ddd;
border-radius: 4px;
font-size: 16px;
box-sizing: border-box;
}
.input-group input:focus {
border-color: #4a90e2;
outline: none;
}
.calc-btn {
grid-column: 1 / -1;
background-color: #e67e22;
color: white;
border: none;
padding: 15px;
font-size: 18px;
font-weight: bold;
border-radius: 4px;
cursor: pointer;
margin-top: 10px;
transition: background-color 0.2s;
width: 100%;
}
.calc-btn:hover {
background-color: #d35400;
}
.results-area {
grid-column: 1 / -1;
background-color: #fff;
border: 1px solid #e1e1e1;
padding: 20px;
border-radius: 4px;
margin-top: 20px;
display: none;
}
.result-row {
display: flex;
justify-content: space-between;
border-bottom: 1px solid #eee;
padding: 10px 0;
}
.result-row:last-child {
border-bottom: none;
}
.result-label {
font-weight: 600;
color: #444;
}
.result-value {
font-weight: 700;
color: #2c3e50;
}
.highlight-result {
color: #e67e22;
font-size: 1.2em;
}
.article-content h2 {
color: #2c3e50;
border-bottom: 2px solid #e67e22;
padding-bottom: 10px;
margin-top: 30px;
}
.article-content h3 {
color: #34495e;
margin-top: 25px;
}
.article-content p {
margin-bottom: 15px;
}
.article-content ul {
margin-bottom: 20px;
padding-left: 20px;
}
.article-content li {
margin-bottom: 8px;
}
.info-box {
background-color: #e8f4fd;
border-left: 4px solid #4a90e2;
padding: 15px;
margin: 20px 0;
}
How to Calculate Concrete for a Slab
Planning a patio, driveway, or shed foundation requires accurate measurements to ensure you order enough concrete without overspending. This Concrete Slab Calculator helps you determine the exact volume needed in cubic yards and cubic feet, as well as the number of pre-mix bags required for smaller DIY projects.
The Concrete Formula
To calculate the volume of concrete required for a rectangular slab, you need to multiply the length by the width and the thickness (depth). However, since dimensions are often measured in different units (feet for length/width and inches for thickness), conversion is necessary.
Standard Formula:
(Length in feet × Width in feet × (Thickness in inches ÷ 12)) ÷ 27 = Cubic Yards
Step-by-Step Guide
- Measure the Length and Width: Measure the area you intend to pour in feet.
- Determine Thickness:
- 4 Inches: Standard for sidewalks, patios, and residential driveways (passenger cars).
- 5-6 Inches: Recommended for heavier vehicle driveways (RVs, trucks) or reinforced foundations.
- Calculate Volume: Convert the thickness to feet by dividing by 12, multiply by the area to get Cubic Feet, then divide by 27 to convert to Cubic Yards.
Bagged Concrete vs. Ready Mix Truck
If your calculation shows you need less than 1 cubic yard of concrete, buying pre-mixed bags (60lb or 80lb) from a hardware store is usually the most cost-effective method. For projects requiring more than 2 cubic yards, ordering a ready-mix truck is typically cheaper and much less labor-intensive.
Yield Reference:
- One 80lb bag yields approximately 0.60 cubic feet.
- One 60lb bag yields approximately 0.45 cubic feet.
- It typically takes about 45 bags (80lb) to make 1 cubic yard of concrete.
Why Include a Waste Margin?
Professional contractors always order slightly more concrete than the exact mathematical calculation. This accounts for:
- Uneven subgrade (ground) depth.
- Spillage during transport and pouring.
- Settling of the formwork.
We recommend adding a 5% to 10% safety margin to your order to prevent running out mid-pour, which can result in a "cold joint" and weaken your slab.
function calculateConcrete() {
// Get Input Values
var length = parseFloat(document.getElementById('slabLength').value);
var width = parseFloat(document.getElementById('slabWidth').value);
var inches = parseFloat(document.getElementById('slabThickness').value);
var waste = parseFloat(document.getElementById('wasteFactor').value);
// Validate Inputs
if (isNaN(length) || isNaN(width) || isNaN(inches) || length <= 0 || width <= 0 || inches <= 0) {
alert("Please enter valid positive numbers for all dimensions.");
return;
}
// 1. Calculate Cubic Feet
// Convert thickness inches to feet: inches / 12
var thicknessFeet = inches / 12;
var cubicFeet = length * width * thicknessFeet;
// Apply Waste Factor
var totalCubicFeet = cubicFeet * waste;
// 2. Calculate Cubic Yards
// 1 Cubic Yard = 27 Cubic Feet
var totalCubicYards = totalCubicFeet / 27;
// 3. Calculate Bags
// Yield: 80lb bag ~ 0.6 cu ft, 60lb bag ~ 0.45 cu ft
var bags80 = Math.ceil(totalCubicFeet / 0.60);
var bags60 = Math.ceil(totalCubicFeet / 0.45);
// Display Results
document.getElementById('resYards').innerHTML = totalCubicYards.toFixed(2);
document.getElementById('resFeet').innerHTML = totalCubicFeet.toFixed(2);
document.getElementById('resBags80').innerHTML = bags80;
document.getElementById('resBags60').innerHTML = bags60;
// Show Result Div
document.getElementById('resultsArea').style.display = 'block';
}