Isosceles triangle area calculator
Enter the base and the equal sides of an isosceles triangle to get its height and area together: a base of 6 with sides of 5 gives a height of 4 and an area of 12. Handy for gables, panels and pennants. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Base
- 6
- Side
- 5
- Height
- 4
- Area
- 12
Enter the base of an isosceles triangle and the length of its two equal sides, and get its area computed through the height: the altitude to the base splits the triangle into two congruent right triangles, so h = √(side² − (base/2)²) and A = base·h/2.
Two measurements fix the whole triangle
An isosceles triangle has two equal sides and a base, and those two numbers — base and side — determine every other property of the figure. The key observation is symmetry: the altitude dropped from the apex to the base always hits the exact midpoint, splitting the figure into two congruent right triangles. Each of those halves has hypotenuse equal to side and one leg equal to half the base, so the height follows directly from the Pythagorean theorem: h = √(side² − (base/2)²).
Once the height is known, the area is the familiar one half base times height, A = base·h/2. There is no ambiguity and no case analysis: any pair of positive numbers that satisfies the triangle inequality describes exactly one isosceles triangle up to reflection, and exactly one area. Because the inputs are the two measurements most people actually have — the bottom edge and the slanted sides — no intermediate calculation is ever needed on your side.
The triangle inequality, enforced
Not every pair of positive numbers describes a real isosceles triangle. The three sides must satisfy the triangle inequality, which for an isosceles triangle reduces to a single condition: twice the equal side must strictly exceed the base, 2·side > base. When 2·side equals the base the figure collapses into a flat segment with zero height and zero area, and when 2·side is smaller the sides cannot even meet.
What you can do with it
Roofing and gables
Compute the area of an isosceles gable end or roof face from its base width and rafter length before ordering sheathing or shingles.
Geometry teaching
Show how the symmetry of an isosceles triangle turns Pythagoras into an area formula, with adjustable decimals for step-by-step classroom work.
Design and fabrication
Size triangular panels, pennants, or sail gussets from the two measurements you actually have: the base edge and the two equal sides.
FAQ
What inputs does it need?
Two numbers: base (the unequal side) and side (the length of each of the two equal sides). Both must be positive and finite.
Which formula is used?
The altitude to the base bisects it, so h = √(side² − (base/2)²) by Pythagoras, and A = base·h/2. No iteration or approximation is involved.
What if the sides cannot form a triangle?
A valid isosceles triangle requires twice the equal side to strictly exceed the base.
What exactly is returned?
An object with the echoed base and side plus the computed height and area, all rounded half-up to the decimals you chose (six by default).
How do I calculate the area of a gable end?
Measure the width of the gable at its base and the length of one rafter, the slanted side, then enter them as base and equal side. A base of 6 with sides of 5 gives 12 square units of sheathing to order.
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/math/isosceles-triangle-area \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"base":6,"side":5}'const res = await fetch("https://api.kit.forhosting.com/math/isosceles-triangle-area", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"base": 6,
"side": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/isosceles-triangle-area",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"base": 6,
"side": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/isosceles-triangle-area", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"base":6,"side":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"base":6,"side":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/isosceles-triangle-area", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"base": 6,
"side": 5
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.isosceles_triangle_area",
"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
Both inputs must be positive finite numbers, and twice the equal side must strictly exceed the base, otherwise the three lengths cannot form a triangle and the request is rejected with a typed invalid_input error. The response echoes the base and side alongside the computed height and area, all rounded half-up to the number of decimals you choose — six by default.
Two measurements fix the whole triangle
For example, base = 6 and side = 5 gives h = √(25 − 9) = 4 and A = 12, the classic 3-4-5 right triangle doubled.
The triangle inequality, enforced
This endpoint enforces the condition before doing any arithmetic: if it fails, the call is rejected with a typed invalid_input error that states the rule, instead of returning a meaningless square root of a negative number or a silent zero. The same strictness applies to the inputs themselves — base and side must be JSON numbers, positive and finite, so strings, booleans, null, NaN, and Infinity are all rejected with errors that name the offending field.
Precision, rounding, and determinism
Rounding to zero decimals is allowed and returns whole numbers, handy for coarse material estimates. The height and area are first computed in full IEEE-754 double precision and only then rounded, so the rounding step never feeds back into the computation and cannot compound. The response contains four fields — base, side, height, and area — all rounded with the same rule, so the quartet you receive is always internally consistent. If the inputs are so large that the intermediate squares overflow to infinity, the result is rejected as a typed error rather than silently returning Infinity, because a non-finite area is never a useful answer to give back to a client.
Technical questions
Is it free?
The tier A browser widget is free and runs the same isomorphic module as the API, which is billed from $0.002 per call.