A post hole isn't a solid cylinder of concrete — the post itself takes up space in the middle, and this calculator is built around that: enter your hole's diameter and depth, your post's actual cross-section, and how many holes you're pouring, and it works out the concrete needed for the ring of space around the post, not the whole cylinder. How deep and how wide a hole should be isn't something this calculator decides — that depends on your local frost depth, the post's height and load, and your building or fence code, so check those with your local building department before you dig. What this calculator handles is the arithmetic once you have those numbers: cubic yards, cubic feet, and tons, using the same density figures as the concrete slab and footing calculators, since it's the same material either way. Use the quantity field to calculate an entire run of fence or deck posts at once instead of one hole at a time.
Enter your dimensions above to see results.
The calculator treats each post hole as a cylinder — π × (diameter ÷ 2)² × depth — with the post's own rectangular cross-section subtracted out, since concrete only fills the space around the post, not the space the post occupies. That per-hole volume is multiplied by the quantity you enter, so a whole run of identical posts calculates at once instead of one hole at a time. A waste percentage is added on top to cover spillage and irregular hole walls, and the adjusted cubic yardage is multiplied by concrete's density to get the weight in tons. Bag counts divide the adjusted cubic feet by each bag's yield; ready-mix truckloads divide the adjusted cubic yards by the truck's capacity.
Six fence posts, each set in a 10-inch-diameter hole 30 inches deep, with a nominal 4×4 post (actual 3.5" × 3.5") centered in each: per hole, the hole's cross-section is π × (5 ÷ 12)² = 0.545 ft², minus the post's footprint of (3.5 ÷ 12) × (3.5 ÷ 12) = 0.085 ft², leaving 0.460 ft² of concrete. At 30 inches deep, that's 0.460 × (30 ÷ 12) = 1.15 cubic feet per hole — × 6 holes = 6.90 cubic feet total. In cubic yards, that's 6.90 ÷ 27 = 0.26 yd³. Adding a 10% waste factor: 0.26 × 1.10 = 0.28 yd³. At 2.02 tons per cubic yard, that's 0.28 × 2.02 = 0.57 tons — or 0.55–0.57 tons across the 1.95–2.03 density range. In 60 lb bags, the adjusted 7.59 cu ft (6.90 × 1.10) needs 17 bags for all six holes combined.
Both the depth and diameter of a post hole are decided by factors this calculator doesn't know about — how deep your local frost line runs, how tall and heavily loaded the post above ground is, and what your local building code or fence/deck permit requires for embedment and clearance around the post. None of that is something a generic calculator should guess at; check with your local building department, a permit's engineering notes, or the International Residential Code's deck and fence provisions for the actual numbers your project needs. What this calculator does know is the geometry once you have those numbers: it treats a post hole as a cylinder with the post's own footprint subtracted out, since concrete only fills the gap around the post, not the space the post itself occupies. Enter the post's actual milled dimensions, not its nominal size — a nominal "4x4" post, for example, is actually 3.5" × 3.5" after milling, and using the nominal number overstates how much space the post takes up. Use the quantity field to calculate a whole run of identical posts at once instead of re-running the calculator per hole.
Unlike the landscape materials on this site, concrete is a manufactured product with a tightly controlled mix, so its density varies far less than gravel, sand, or mulch — and the same figure applies whether it's poured as a slab, a footing, or a post hole. CEMEX, a major ready-mix producer, puts a solid unbroken pour at about two tons (4,000 lbs) per cubic yard. ACI 318 and ASTM C138 define normal-weight concrete at 145–150 lb/ft³ — ACI 318 uses 150 lb/ft³ as its default structural value — which works out to 3,915–4,050 lbs (1.96–2.03 tons) per cubic yard. The 1.95–2.03 ton/yd³ range here reflects that normal-weight span, not moisture variation. Lightweight and heavyweight concrete mixes fall outside this range and aren't covered by this calculator. We use 2.02 tons/yd³ as the display figure, drawn from:
Read more in our density methodology.