Oblique triangle area calculator
Two sides of 5 and 8 with a 60-degree angle between them enclose about 17.320508 square units. Enter the two sides and the angle they form, and get the area of any triangle without knowing its height. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- A
- 5
- B
- 8
- Angle
- 60
- Angle deg
- 60
- Angle rad
- 1.047198
- Area
- 17.320508
You send two positive side lengths and an included angle in degrees strictly between 0 and 180, and you get back the area, deterministically, in a single analytic pass with no approximation methods and no network calls.
Why the SAS area formula works for oblique triangles
The textbook area formula, base times height divided by two, is awkward when you do not know the height. The side-angle-side rule removes that obstacle. If two sides of a triangle have lengths a and b and the angle included between them is C, then dropping a perpendicular from one vertex shows the height relative to base b is a·sin(C).
Substituting that height into the classic formula gives A = a·b·sin(C)/2 directly from the two sides you already have. Nothing in this derivation assumes the triangle is right-angled, which is why the rule is the standard tool for oblique triangles: any triangle that is not a right triangle qualifies, and in fact the formula handles right triangles as a special case, since sin(90°) is exactly 1. The oblique triangle area calculator implements this formula exactly as written.
It converts the included angle from degrees to radians, evaluates the sine once, multiplies by both side lengths and halves the result. Two sides of 5 and 8 units enclosing a 60-degree angle give an area of about 17.320508 square units, computed the same way on every machine.
Input validation and the domain of the angle
Not every combination of three numbers describes a triangle with a meaningful area. The included angle has its own strict domain. An angle of exactly 0 degrees would collapse the triangle into a segment with zero area, and an angle of exactly 180 degrees would do the same from the other side; both are rejected, along with anything outside the open interval from 0 to 180 degrees.
This strictness is deliberate: a silent zero-area answer would hide the fact that no genuine triangle was described. Because validation failures are classified as client faults, a rejected request is never charged. Only a well-formed triple — two positive sides and an included angle strictly inside its domain — reaches the sine evaluation.
Note that within the valid domain, obtuse angles work perfectly well: the sine of 120 degrees is the same positive value as the sine of 60, and the formula handles it without any special casing.
Deterministic output you can build on
The whole computation is one degree-to-radian conversion, one sine evaluation and a handful of multiplications. There is no randomness, no clock, no network access and no model involved, so identical inputs always produce identical output on any machine. The numeric result is rounded to six decimal places, which keeps the response stable and human-readable without any meaningful loss of precision for engineering or classroom work.
What you can do with it
Estimate triangular land plots
Surveyors often measure two boundary lengths and the angle at their junction. Turn those three numbers directly into the plot's area without computing any height.
Size triangular components in CAD pipelines
Feed two edge lengths and their junction angle from a parametric design and get the face area for material estimates, weight calculations or cost rollups.
Grade trigonometry exercises automatically
Check student answers to SAS area problems against a deterministic reference result, with clear errors when the proposed sides or angle are out of domain.
FAQ
Which formula does it use?
The side-angle-side area rule: A = a·b·sin(C)/2, where a and b are the two given side lengths and C is the angle included between them.
Does it work for obtuse angles?
Yes. The sine of an obtuse angle is positive, so any included angle strictly between 0 and 180 degrees gives a valid positive area, acute or obtuse alike.
Is the result deterministic?
Yes. It is one sine evaluation and a few multiplications, rounded to six decimals, with no randomness, clock or network involved.
Why are angles of 0 or 180 degrees rejected?
At exactly 0 or 180 degrees the triangle collapses into a straight segment with no area. Instead of quietly answering zero, the calculator refuses the angle, because no genuine triangle was described.
Do I need to know the height of the triangle?
No, and that is the point of this rule. The height is the first side times the sine of the angle, so the calculator works it into the formula for you and needs only the two sides and the angle between them.
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/area-oblique-triangle \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":5,"b":8,"angle":60}'const res = await fetch("https://api.kit.forhosting.com/math/area-oblique-triangle", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 5,
"b": 8,
"angle": 60
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/area-oblique-triangle",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 5,
"b": 8,
"angle": 60
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/area-oblique-triangle", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":5,"b":8,"angle":60}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":5,"b":8,"angle":60}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/area-oblique-triangle", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"a": 5,
"b": 8,
"angle": 60
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.area_oblique_triangle",
"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
The oblique triangle area API answers one of the most common questions in trigonometry: given two side lengths of a triangle and the angle between them, what is the enclosed area? It applies the formula A = a·b·sin(C)/2, the side-angle-side area rule that works for every triangle — acute, right or obtuse — without needing any height or third side.
Input validation and the domain of the angle
Each side length must be a positive finite number: a zero or negative side cannot bound any region, so the request is rejected with an invalid_input error that names the offending field.
Deterministic output you can build on
Alongside the area, the response echoes the two side lengths and the included angle in both degrees and radians, so callers can verify exactly which triangle was measured without re-encoding their request. That predictability matters downstream: a land-survey pipeline can assert exact responses in its test suite, a homework grader can compare student submissions against a known answer, and a geometry preprocessor can chain this area into a larger calculation. The same code that runs on our edge also powers the free calculator on this page, so what you test in the browser is exactly what the API returns when you automate it for $0.002 per request.
Technical questions
What does it cost?
$0.002 per request. It is also free to run in your browser on this page, with the same code the API uses.
Is the angle in degrees or radians?
Degrees. Send the included angle as a number strictly between 0 and 180; the response echoes it in both degrees and radians.
What happens with a zero, negative or out-of-range value?
Any non-positive side, or an angle outside the open interval (0, 180), is rejected with an invalid_input error naming the problem. Rejected requests are never charged.