Concrete column calculator
Four round columns 0.4 m across and 3 m tall take about one and a half cubic metres of concrete: pi times the radius squared times the height, times the number of columns. Enough to order ready-mix or bags with confidence. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Diameter
- 0.4
- Height
- 3
- Quantity
- 4
- Radius
- 0.2
- Volume one
- 0.3769911184
- Volume total
- 1.5079644736
- Pi
- 3.1415926536
Ordering ready-mix for circular piers, porch posts or structural columns starts with geometry, not guesswork. This concrete column calculator turns diameter, height and how many identical cylinders you will pour into a deterministic volume so you can size a truck, a barrow mix or a pour schedule with the same numbers every time. The engine treats each column as a right circular cylinder: radius is half the diameter, one-column volume is pi times radius squared times height, and total volume multiplies by the column count. Non-positive diameter or height fails with a clear invalid input error so estimators and mobile forms can validate before a purchase order.
Measure diameter and height in one consistent unit system
A circular column is defined by the outside diameter of the concrete shaft and the height of the pour along the column axis. Measure diameter across the form or design circle, not the circumference, and measure height from the top of the footing or slab to the underside of the beam or capital unless your detail includes a different embed length. Express both numbers in the same linear unit—metres with metres, feet with feet, inches with inches—because the calculator does not convert systems.
Volume then appears in cubic units of that system: cubic metres when diameter and height are metres, cubic feet when both are feet. If you only know the design radius, double it before calling; the contract is diameter-first so store labels and pier schedules that list dia map without a mental conversion.
What you can do with it
Porch posts and deck piers
Homeowners enter pier diameter, exposed height and how many posts to pour so they can order the right cubic volume of ready-mix or bagged concrete for a weekend build.
Contractor takeoff and ready-mix tickets
Estimating tools batch circular column schedules from plans, multiply by count, and emit cubic volumes for plant orders without retyping pi formulas in spreadsheets.
FAQ
What units should I use?
Any consistent linear system. If diameter and height are in metres, volume is in cubic metres. Mixing centimetres for diameter with metres for height will produce wrong results.
What if diameter or height is zero or negative?
Diameter and height must both be strictly positive; non-positive dimensions cannot define a pour volume and are not charged.
Is the concrete column calculator free?
The browser tool runs free on your device.
Does count default if I omit it?
Provide a positive integer count when pouring several identical columns.
Where do I measure the diameter and height of a column?
Measure the diameter straight across the form or design circle, not around it. Measure the height from the top of the footing or slab to the underside of the beam or capital, unless your detail shows a different embedment.
Related tools
For developers — API access
Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.
API endpoint
Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/home/concrete-column \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"diameter":0.4,"height":3}'const res = await fetch("https://api.kit.forhosting.com/home/concrete-column", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"diameter": 0.4,
"height": 3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/home/concrete-column",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"diameter": 0.4,
"height": 3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/home/concrete-column", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"diameter":0.4,"height":3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"diameter":0.4,"height":3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/home/concrete-column", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"diameter": 0.4,
"height": 3
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "home.concrete_column",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |
Technical notes
Measure diameter and height in one consistent unit system
Send diameter as a strictly positive finite number; aliases d, dia and column_diameter are accepted for form labels that use shorter names. Send height the same way with aliases h, length and column_height. Zero, negative or non-numeric values for either dimension raise invalid_input and are not charged, because a non-positive diameter or height cannot define a physical cylinder. Extremely small or huge values outside the published stability range are also rejected so floating-point results stay meaningful on a Worker isolate.
Column count, the cylinder formula, and how to read the response
Most jobs pour more than one matching pier. Rectangular or square columns are out of scope: multiply length by width by height yourself or use a different product intent; this landing is specifically the cylindrical concrete column volume people search for when piers and round posts are specified. The optional count field is a positive integer that defaults to one when omitted; aliases n, columns, qty and quantity map to the same number. The engine computes radius as diameter divided by two, volume_one as pi times radius squared times height using the platform Math.PI constant, and volume_total as volume_one times count. The response echoes diameter, height and count, includes radius and pi for audit trails, and labels formula as pi times open parenthesis diameter over two close parenthesis squared times height times count with method always equal to cylinder_volume so downstream code can branch without sniffing shapes. Use volume_one when checking a single form, volume_total when ordering for the whole line of posts, and keep your own waste or pump-loss factor outside this geometric result if site practice adds five to ten percent. Non-integer or non-positive count values fail with invalid_input. Identical inputs always produce identical JSON because the path is pure arithmetic with no network, random seed or wall clock.
API usage, pricing, takeoff workflows, and practical limits
Call the free in-browser concrete column calculator for quick home estimates, contractor whiteboards and classroom statics demos without opening a spreadsheet. Remember that formwork may be slightly larger than the finished architectural diameter, and that some codes call for overpour into the footing—adjust the inputs to match the concrete you will actually place, not only the neat structural radius. Send a JSON body with required diameter and height plus optional count when more than one identical column is required. Use the prepaid API when a renovation app, structural takeoff tool, ready-mix quote form or property-management pipeline needs a stable contract under KIT balance at $0.002 per successful item; validation failures never consume balance after the engine rejects the request. Pair this endpoint with unit converters when customers mix millimetres on drawings with metres on tickets, or with footing volume helpers when the pad under the pier is a separate rectangular pour. Authors shipping SDKs can map volume_total straight into order lines while showing volume_one, radius and formula as explanatory detail for the buyer or the field engineer reviewing the ticket.
Integration use cases
Renovation apps and configurators
Mobile and web apps compute cylinder volume as users change diameter or height, using the same deterministic API contract for quotes and material lists.
Technical questions
How does the concrete column calculator compute volume?
It treats each column as a right circular cylinder: radius = diameter/2, volume_one = π × radius² × height, volume_total = volume_one × count. The method label is always cylinder_volume.