This calculator works out how much mulch, bark or compost you need to cover a garden bed. Enter the bed dimensions and the depth of the mulch layer and it returns the volume to buy — in cubic metres for metric users, or cubic feet and cubic yards in imperial mode.
How it works
The volume is the bed area multiplied by the layer depth, with the depth unit converted to match the length unit:
volume = length × width × depth
In metric mode, depth is entered in millimetres and divided by 1000 to give metres; the result is in cubic metres. In imperial mode, depth is in inches and divided by 12 to give feet; the result is in cubic feet plus cubic yards (dividing by 27), because suppliers in the UK and US commonly sell mulch by the cubic yard. A 50–75 mm (2–3 inch) layer is the widely recommended depth for weed suppression and moisture retention in most garden beds.
Worked examples
A 5 m × 2 m bed with a 50 mm mulch layer:
area = 5 × 2 = 10 m²; depth = 50 ÷ 1000 = 0.05 m; volume = 10 × 0.05 = 0.5 m³
| Bed size | Depth | Volume |
|---|---|---|
| 5 m × 2 m | 50 mm | 0.5 m³ |
| 5 m × 2 m | 75 mm | 0.75 m³ |
| 10 ft × 4 ft | 2 in | 6.67 ft³ (0.25 yd³) |
| 10 ft × 4 ft | 3 in | 10 ft³ (≈0.37 yd³) |
Choosing the right depth
50 mm (2 inches) is the practical minimum for keeping weed seeds in the dark and slowing moisture loss in most climates. 75 mm (3 inches) is better for heavy clay soils or areas with high summer evaporation. Going deeper than 100 mm around perennial plants can suffocate roots and encourage slugs; keep mulch away from plant stems by a few centimetres regardless of depth.
Buying tips
Many garden centres sell loose mulch by the cubic metre or cubic yard; bagged mulch is typically sold in 60-litre or 2 cu ft bags. One cubic metre equals roughly 17 standard 60-litre bags; one cubic yard equals roughly 14 bags of 2 cu ft. Add 10–15% to your calculated volume when ordering, since mulch compresses over time and it is easier to return a spare bag than make a second trip. All calculations run entirely in your browser and nothing is sent to a server.