{
  "title": "Concrete calculator",
  "human_url": "https://happytails.ai/en/calculators/concrete-calculator/",
  "agent_url": "https://happytails.ai/agents/en/calculators/concrete-calculator/",
  "language": "en",
  "markdown_url": "https://happytails.ai/en/calculators/concrete-calculator.md",
  "content": "Concrete calculator\nEstimate concrete volume, waste allowance and the number of bags for a slab or cylinder.\nHow can we improve this tool?\nReport a problem or share an idea.\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\nHow to use Concrete calculator\nChoose Slab for a rectangular pour or Cylinder for a solid round post. Enter the dimensions, units and number of identical pieces.\nChoose a waste allowance and enter the volume yield printed on your concrete bag. Bag weight alone does not determine yield.\nA 3 m × 2 m slab, 100 mm deep, needs 0.6 m³ net. With 10% waste, that becomes 0.66 m³, or 33 bags yielding 20 litres each. Copy the result or download the estimate.\nUseful next steps\nVolume calculator\nPercentage\nHow Concrete calculator works\nThe concrete calculator estimates how much concrete a rectangular slab or a solid cylinder needs. It multiplies the area by the depth and the number of identical pieces, adds your waste allowance, and divides by the yield of one bag, rounding bags up to whole numbers. Results appear in cubic metres, cubic yards, cubic feet and litres, with a downloadable estimate, all calculated in your browser. Use the volume yield printed on your bag, since bags vary. It estimates material only, not strength or structural design.\nBefore you start\nMeasure length, width or diameter and the depth, and choose the matching units, since you can mix feet and inches or metric units. Read the volume yield per bag from your product, not its weight.\nA worked example\nA 10 ft by 10 ft slab, 4 in deep, with 10 percent waste and bags yielding 0.6 ft³ needs 36.67 ft³, or about 1.36 yd³, which is 62 bags.\nWhat to expect\nEstimate concrete volume, waste allowance and the number of bags for a slab or cylinder. Enter slab length and width, or cylinder diameter, then depth, quantity and waste. Mix feet and inches or metric units. Results show cubic metres, cubic yards, cubic feet, litres and whole bags rounded up from your product’s stated volume yield. This is a material estimate, not a structural design.\nCommon questions\nHow do I calculate concrete for a slab?\nMultiply length by width by thickness in the same unit. A 10 ft by 10 ft slab 4 in thick is 10 × 10 × 0.333 ft, about 33.3 ft³. Divide cubic feet by 27 for cubic yards, about 1.23 yd³ here, then add extra for waste and uneven ground.\nHow many bags of concrete do I need?\nDivide the total volume, including waste, by the yield of one bag and round up. With 36.67 ft³ and bags yielding 0.6 ft³, that is 61.1, so the calculator shows 62 bags. Always use the yield printed on your product, because similar bag weights can yield different volumes.\nHow much extra concrete should I add for waste?\nThe calculator defaults to 10 percent, and you can set anything from 0 to 100. Spillage, an uneven subgrade, form bulges and slightly deeper spots all use extra material. Running short in the middle of a pour is usually worse than having a little left over.\nHow do I calculate concrete for a round post hole?\nChoose Cylinder and enter the full diameter, not the radius, plus the depth and the number of holes. Four holes 12 in wide and 4 ft deep with 5 percent waste need about 13.19 ft³, or 22 bags yielding 0.6 ft³ each. Subtract the volume of any post yourself.\nWhy is my depth result so large or so small?\nDepth has its own unit selector, separate from length and width. A common slip is entering 100 for a 100 mm slab while the depth unit is set to m, which makes the slab 1,000 times too deep. Changing a unit keeps the number you typed, so recheck both selectors.",
  "content_format": "text/plain",
  "visibility": "public",
  "links": [
    {
      "name": "Volume calculator",
      "url": "https://happytails.ai/en/calculators/volume-calculator/"
    },
    {
      "name": "Percentage",
      "url": "https://happytails.ai/en/calculators/percentage/"
    }
  ],
  "tool": {
    "id": "concrete-calculator",
    "category": "calculators",
    "built": true,
    "requirements": "Enter slab length and width, or cylinder diameter, then depth, quantity and waste. Mix feet and inches or metric units. Results show cubic metres, cubic yards, cubic feet, litres and whole bags rounded up from your product’s stated volume yield. This is a material estimate, not a structural design.",
    "implementation": {
      "fields": [
        {
          "key": "shape",
          "label": "Shape",
          "value": "Slab",
          "type": "select",
          "values": [
            "Slab",
            "Cylinder"
          ]
        },
        {
          "key": "dimensionUnit",
          "label": "Length / diameter unit",
          "value": "m",
          "type": "select",
          "values": [
            "m",
            "cm",
            "ft",
            "in"
          ]
        },
        {
          "key": "length",
          "label": "Length",
          "value": 3,
          "type": "number",
          "step": "any",
          "min": 0,
          "max": 1000000,
          "showWhen": {
            "shape": [
              "Slab"
            ]
          }
        },
        {
          "key": "width",
          "label": "Width",
          "value": 2,
          "type": "number",
          "step": "any",
          "min": 0,
          "max": 1000000,
          "showWhen": {
            "shape": [
              "Slab"
            ]
          }
        },
        {
          "key": "diameter",
          "label": "Diameter",
          "value": 0.3,
          "type": "number",
          "step": "any",
          "min": 0,
          "max": 1000000,
          "help": "Full width across the cylinder, not the radius.",
          "showWhen": {
            "shape": [
              "Cylinder"
            ]
          }
        },
        {
          "key": "depth",
          "label": "Depth / height",
          "value": 100,
          "type": "number",
          "step": "any",
          "min": 0,
          "max": 1000000
        },
        {
          "key": "depthUnit",
          "label": "Depth / height unit",
          "value": "mm",
          "type": "select",
          "values": [
            "mm",
            "cm",
            "m",
            "in",
            "ft"
          ]
        },
        {
          "key": "quantity",
          "label": "Number of identical pieces",
          "value": 1,
          "type": "number",
          "step": 1,
          "min": 1,
          "max": 10000
        },
        {
          "key": "waste",
          "label": "Waste allowance (%)",
          "value": 10,
          "type": "number",
          "step": "any",
          "min": 0,
          "max": 100
        },
        {
          "key": "bagYield",
          "label": "Yield per bag",
          "value": 20,
          "type": "number",
          "step": "any",
          "min": 0,
          "max": 1000000000,
          "help": "Use the volume yield on your concrete bag, not its weight."
        },
        {
          "key": "yieldUnit",
          "label": "Bag yield unit",
          "value": "L",
          "type": "select",
          "values": [
            "L",
            "m³",
            "ft³",
            "yd³"
          ]
        }
      ],
      "input": false,
      "live": true,
      "presentation": "metrics",
      "note": "Estimate a rectangular slab or solid cylinder, including extra concrete for waste. Use the yield on your chosen bag; 20 litres is an editable example. Bags round up. This estimates materials, not strength or structural design. Changing units keeps the entered numbers. Calculated on your device.",
      "experience": {
        "automatic": true,
        "single": false,
        "inputMaxLength": 1000000,
        "inputMode": "text",
        "label": "Your text",
        "placeholder": "Type or paste your input…",
        "help": "Change the input or settings to update your result. Results update as you type. Up to 1,000,000 characters.",
        "action": null
      },
      "mode": "automatic",
      "interactive": false
    },
    "execution": "Browser interface",
    "api": null,
    "browser_agent": {
      "supported": true,
      "name": "run_current_tool",
      "discovery": "WebMCP on the human page in a supporting browser",
      "verification": "See audit/API-AUDIT.md; availability is not verification"
    }
  },
  "markdown": "# Concrete calculator\n\n- Human page: https://happytails.ai/en/calculators/concrete-calculator/\n- Markdown: https://happytails.ai/en/calculators/concrete-calculator.md\n- Structured JSON: https://happytails.ai/agents/en/calculators/concrete-calculator/index.json\n- Visibility: public\n\n## Tool capabilities\n\n| Property | Value |\n| --- | --- |\n| Tool ID | `concrete-calculator` |\n| Category | calculators |\n| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |\n| Browser execution | Automatic updates after valid input or file selection. |\n| Browser processing | Browser; see tool notes for network behavior. |\n| HTTP API | Not callable through HTTP. |\n| Browser-agent interface | run_current_tool |\n\n### Implementation notes\n\nEstimate a rectangular slab or solid cylinder, including extra concrete for waste. Use the yield on your chosen bag; 20 litres is an editable example. Bags round up. This estimates materials, not strength or structural design. Changing units keeps the entered numbers. Calculated on your device.\n\n### Inputs and settings\n\nNo free-text input is required. Use the file inputs and/or settings below.\n\n| Setting | Meaning | Control type | Default | Constraints |\n| --- | --- | --- | --- | --- |\n| `shape` | Shape | select | \"Slab\" | Allowed: Slab, Cylinder |\n| `dimensionUnit` | Length / diameter unit | select | \"m\" | Allowed: m, cm, ft, in |\n| `length` | Length | number | 3 | min=0 max=1000000 step=any |\n| `width` | Width | number | 2 | min=0 max=1000000 step=any |\n| `diameter` | Diameter | number | 0.3 | min=0 max=1000000 step=any |\n| `depth` | Depth / height | number | 100 | min=0 max=1000000 step=any |\n| `depthUnit` | Depth / height unit | select | \"mm\" | Allowed: mm, cm, m, in, ft |\n| `quantity` | Number of identical pieces | number | 1 | min=1 max=10000 step=1 |\n| `waste` | Waste allowance (%) | number | 10 | min=0 max=100 step=any |\n| `bagYield` | Yield per bag | number | 20 | min=0 max=1000000000 step=any |\n| `yieldUnit` | Bag yield unit | select | \"L\" | Allowed: L, m³, ft³, yd³ |\n\n### Browser-agent workflow\n\n1. Open the human page in a browser that supports WebMCP.\n2. Discover the interface exposed by that page; use its actual schema.\n3. Select files on the page first when the tool requires files.\n4. Call `run_current_tool` with valid input and settings.\n5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.\n\nCalls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.\n\n### Planning specification\n\nEnter slab length and width, or cylinder diameter, then depth, quantity and waste. Mix feet and inches or metric units. Results show cubic metres, cubic yards, cubic feet, litres and whole bags rounded up from your product’s stated volume yield. This is a material estimate, not a structural design.\n\nThis describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.\n\n### Complete machine-readable capability record\n\n```json\n{\n  \"id\": \"concrete-calculator\",\n  \"category\": \"calculators\",\n  \"built\": true,\n  \"requirements\": \"Enter slab length and width, or cylinder diameter, then depth, quantity and waste. Mix feet and inches or metric units. Results show cubic metres, cubic yards, cubic feet, litres and whole bags rounded up from your product’s stated volume yield. This is a material estimate, not a structural design.\",\n  \"implementation\": {\n    \"fields\": [\n      {\n        \"key\": \"shape\",\n        \"label\": \"Shape\",\n        \"value\": \"Slab\",\n        \"type\": \"select\",\n        \"values\": [\n          \"Slab\",\n          \"Cylinder\"\n        ]\n      },\n      {\n        \"key\": \"dimensionUnit\",\n        \"label\": \"Length / diameter unit\",\n        \"value\": \"m\",\n        \"type\": \"select\",\n        \"values\": [\n          \"m\",\n          \"cm\",\n          \"ft\",\n          \"in\"\n        ]\n      },\n      {\n        \"key\": \"length\",\n        \"label\": \"Length\",\n        \"value\": 3,\n        \"type\": \"number\",\n        \"step\": \"any\",\n        \"min\": 0,\n        \"max\": 1000000,\n        \"showWhen\": {\n          \"shape\": [\n            \"Slab\"\n          ]\n        }\n      },\n      {\n        \"key\": \"width\",\n        \"label\": \"Width\",\n        \"value\": 2,\n        \"type\": \"number\",\n        \"step\": \"any\",\n        \"min\": 0,\n        \"max\": 1000000,\n        \"showWhen\": {\n          \"shape\": [\n            \"Slab\"\n          ]\n        }\n      },\n      {\n        \"key\": \"diameter\",\n        \"label\": \"Diameter\",\n        \"value\": 0.3,\n        \"type\": \"number\",\n        \"step\": \"any\",\n        \"min\": 0,\n        \"max\": 1000000,\n        \"help\": \"Full width across the cylinder, not the radius.\",\n        \"showWhen\": {\n          \"shape\": [\n            \"Cylinder\"\n          ]\n        }\n      },\n      {\n        \"key\": \"depth\",\n        \"label\": \"Depth / height\",\n        \"value\": 100,\n        \"type\": \"number\",\n        \"step\": \"any\",\n        \"min\": 0,\n        \"max\": 1000000\n      },\n      {\n        \"key\": \"depthUnit\",\n        \"label\": \"Depth / height unit\",\n        \"value\": \"mm\",\n        \"type\": \"select\",\n        \"values\": [\n          \"mm\",\n          \"cm\",\n          \"m\",\n          \"in\",\n          \"ft\"\n        ]\n      },\n      {\n        \"key\": \"quantity\",\n        \"label\": \"Number of identical pieces\",\n        \"value\": 1,\n        \"type\": \"number\",\n        \"step\": 1,\n        \"min\": 1,\n        \"max\": 10000\n      },\n      {\n        \"key\": \"waste\",\n        \"label\": \"Waste allowance (%)\",\n        \"value\": 10,\n        \"type\": \"number\",\n        \"step\": \"any\",\n        \"min\": 0,\n        \"max\": 100\n      },\n      {\n        \"key\": \"bagYield\",\n        \"label\": \"Yield per bag\",\n        \"value\": 20,\n        \"type\": \"number\",\n        \"step\": \"any\",\n        \"min\": 0,\n        \"max\": 1000000000,\n        \"help\": \"Use the volume yield on your concrete bag, not its weight.\"\n      },\n      {\n        \"key\": \"yieldUnit\",\n        \"label\": \"Bag yield unit\",\n        \"value\": \"L\",\n        \"type\": \"select\",\n        \"values\": [\n          \"L\",\n          \"m³\",\n          \"ft³\",\n          \"yd³\"\n        ]\n      }\n    ],\n    \"input\": false,\n    \"live\": true,\n    \"presentation\": \"metrics\",\n    \"note\": \"Estimate a rectangular slab or solid cylinder, including extra concrete for waste. Use the yield on your chosen bag; 20 litres is an editable example. Bags round up. This estimates materials, not strength or structural design. Changing units keeps the entered numbers. Calculated on your device.\",\n    \"experience\": {\n      \"automatic\": true,\n      \"single\": false,\n      \"inputMaxLength\": 1000000,\n      \"inputMode\": \"text\",\n      \"label\": \"Your text\",\n      \"placeholder\": \"Type or paste your input…\",\n      \"help\": \"Change the input or settings to update your result. Results update as you type. Up to 1,000,000 characters.\",\n      \"action\": null\n    },\n    \"mode\": \"automatic\",\n    \"interactive\": false\n  },\n  \"execution\": \"Browser interface\",\n  \"api\": null,\n  \"browser_agent\": {\n    \"supported\": true,\n    \"name\": \"run_current_tool\",\n    \"discovery\": \"WebMCP on the human page in a supporting browser\",\n    \"verification\": \"See audit/API-AUDIT.md; availability is not verification\"\n  }\n}\n```\n\n## Page guide\n\nEstimate concrete volume, waste allowance and the number of bags for a slab or cylinder.\n\nHow can we improve this tool?\n\nReport a problem or share an idea.\n\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\n\n### How to use Concrete calculator\n\n1. Choose Slab for a rectangular pour or Cylinder for a solid round post. Enter the dimensions, units and number of identical pieces.\n2. Choose a waste allowance and enter the volume yield printed on your concrete bag. Bag weight alone does not determine yield.\n3. A 3 m × 2 m slab, 100 mm deep, needs 0.6 m³ net. With 10% waste, that becomes 0.66 m³, or 33 bags yielding 20 litres each. Copy the result or download the estimate.\n\n## Useful next steps\n\n- [Volume calculator](https://happytails.ai/en/calculators/volume-calculator/) ([Markdown](https://happytails.ai/en/calculators/volume-calculator.md))\n\n- [Percentage](https://happytails.ai/en/calculators/percentage/) ([Markdown](https://happytails.ai/en/calculators/percentage.md))\n\n## How Concrete calculator works\n\nThe concrete calculator estimates how much concrete a rectangular slab or a solid cylinder needs. It multiplies the area by the depth and the number of identical pieces, adds your waste allowance, and divides by the yield of one bag, rounding bags up to whole numbers. Results appear in cubic metres, cubic yards, cubic feet and litres, with a downloadable estimate, all calculated in your browser. Use the volume yield printed on your bag, since bags vary. It estimates material only, not strength or structural design.\n\n### Before you start\n\nMeasure length, width or diameter and the depth, and choose the matching units, since you can mix feet and inches or metric units. Read the volume yield per bag from your product, not its weight.\n\n### A worked example\n\nA 10 ft by 10 ft slab, 4 in deep, with 10 percent waste and bags yielding 0.6 ft³ needs 36.67 ft³, or about 1.36 yd³, which is 62 bags.\n\n## What to expect\n\nEstimate concrete volume, waste allowance and the number of bags for a slab or cylinder. Enter slab length and width, or cylinder diameter, then depth, quantity and waste. Mix feet and inches or metric units. Results show cubic metres, cubic yards, cubic feet, litres and whole bags rounded up from your product’s stated volume yield. This is a material estimate, not a structural design.\n\n## Common questions\n\n### How do I calculate concrete for a slab?\n\nMultiply length by width by thickness in the same unit. A 10 ft by 10 ft slab 4 in thick is 10 × 10 × 0.333 ft, about 33.3 ft³. Divide cubic feet by 27 for cubic yards, about 1.23 yd³ here, then add extra for waste and uneven ground.\n\n### How many bags of concrete do I need?\n\nDivide the total volume, including waste, by the yield of one bag and round up. With 36.67 ft³ and bags yielding 0.6 ft³, that is 61.1, so the calculator shows 62 bags. Always use the yield printed on your product, because similar bag weights can yield different volumes.\n\n### How much extra concrete should I add for waste?\n\nThe calculator defaults to 10 percent, and you can set anything from 0 to 100. Spillage, an uneven subgrade, form bulges and slightly deeper spots all use extra material. Running short in the middle of a pour is usually worse than having a little left over.\n\n### How do I calculate concrete for a round post hole?\n\nChoose Cylinder and enter the full diameter, not the radius, plus the depth and the number of holes. Four holes 12 in wide and 4 ft deep with 5 percent waste need about 13.19 ft³, or 22 bags yielding 0.6 ft³ each. Subtract the volume of any post yourself.\n\n### Why is my depth result so large or so small?\n\nDepth has its own unit selector, separate from length and width. A common slip is entering 100 for a 100 mm slab while the depth unit is set to m, which makes the slab 1,000 times too deep. Changing a unit keeps the number you typed, so recheck both selectors.\n"
}