Principles
- No hidden defaults. We never fill in a depth, an extra allowance, a bag yield, a density or a price. Blank stays pending; “I don’t know yet” stays unknown; an explicit zero is different from a missing value.
- Round up to what you can buy. Pieces, boxes and bags are rounded up to whole items. A tiny floating-point tolerance stops exact results (say 600.000000001) becoming one item too many.
- Your units, kept exactly. What you type is stored with the unit you typed it in, and converted only when used, so switching between US and metric never changes your entries.
- One calculation everywhere. The quick answer, Guide Me, the full plan, Store Mode and the printout all read the same calculation.
Formulas
| Calculator | Main formulas |
|---|---|
| Areas (all) | Rectangle l × w; square s²; circle π (d ÷ 2)²; L-shape l × w − cut-out l × cut-out w. Net area = included areas − areas left out. |
| Pavers | Pavers = ceil(area × (1 + extra) ÷ paver face). Edge restraint = edges you mark open. Base, bedding = area × depth. Dig depth = base + bedding + paver thickness. |
| Gravel, mulch, soil | Volume = net area × depth (raised beds: l × w × fill depth × count). Order = volume × (1 + allowance). Gravel weight = order × your supplier’s weight per volume. |
| Concrete | Slab = area × thickness. Footing = l × w × depth × count. Holes = (π (d ÷ 2)² − post cross-section) × depth × count. Bags = ceil(order ÷ label yield). |
| Fence | Each stretch between ends and gates: sections = ceil(stretch ÷ max spacing). Posts counted one per section end and gate side; joined sides share corners. Pickets = ceil((stretch + gap) ÷ (width + gap)). Rails = sections × rails per section. |
| Flooring | Boxes = ceil(area × (1 + waste) ÷ coverage per box). Tiles = ceil(area × (1 + waste) ÷ tile face). Roll = ceil(width across ÷ roll width) strips × (length + trim). |
| Store Mode | Packages = ceil(required ÷ package size). Cost = packages × your price. A total is only called a total when every item is priced. |
Sources and how we use them
Arithmetic needs no source. Construction guidance does. We classify each claim as general information, true only within a stated scope, a figure that must come from your product or supplier, or a local requirement. Where reputable sources disagree, we show the range and the sources rather than pick one. Sources we cite include paver manufacturers’ installation guides (Belgard, Unilock), university extension services (Iowa State, Kentucky, Florida), a concrete manufacturer’s data sheet (Quikrete), the American Softwood Lumber Standard for actual lumber sizes, and the 811 before-you-dig service.
What we deliberately don’t estimate
- Structural design: slab thickness for loads, reinforcement, footing size, post depth.
- Local requirements: permits, frost depth, setbacks, fence height limits.
- Universal loose-to-compacted factors for gravel and base, and default product coverage or prices.
- Labour time, tools or difficulty, for which we found no reliable source.
Testing
Every formula has hand-worked examples checked by automated tests, including exact multiples (so an even division never adds a phantom item), metric/US round trips, invalid and blank inputs, and every shape. Each fixed bug gets a test that would have caught it.
Editorial policy and corrections
Pages are written to explain what a calculator does and doesn’t do, with worked examples you can repeat by hand. We update a page when a source changes or an error is found, not to make it look fresh. Report a mistake at hello@howmuchtodiy.com or via the contact page.