Quadrilateral area from diagonals calculator
Enter the two diagonals of a quadrilateral and the angle between them and get its area: diagonals of 6 and 8 crossing at 90° enclose 24, half their product times the sine of the angle. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- D1
- 6
- D2
- 8
- Angle
- 90
- Area
- 24
Finding the area of a general quadrilateral when you know the two diagonals and the angle between them is a classic Euclidean result that shows up in homework, surveying, and CAD notes.
Why area equals half the product of the diagonals times sin of the angle
In plane geometry the two diagonals of a convex quadrilateral divide the figure into four triangles that share the intersection point. If the diagonals have lengths d1 and d2 and meet at angle θ, each pair of opposite triangular pieces can be rearranged so the total area is the area of a parallelogram spanned by vectors of those lengths at that angle, which is exactly half d1 d2 sin θ.
More formally, drop the diagonals as two line segments intersecting at one interior point; the four triangle areas sum to (1/2)·d1·d2·sin(θ) because each triangle contributes a (1/2)·a·b·sin term on the half-segments and the sines of vertical angles match. When θ equals ninety degrees, sin θ is one and the formula collapses to the familiar half-product A = (d1 × d2) / 2 used for rhombi and kites with perpendicular diagonals.
When θ approaches zero or one hundred eighty degrees the figure flattens and the area approaches zero, which is why this calculator requires a strictly open interval 0 < θ < 180 so the diagonals are not collinear. The formula does not need side lengths or corner angles; the two diagonals and their mutual angle alone fix the enclosed area.
The calculator returns the numerical area together with the formula string so teaching pages and APIs can show the same expression the engine applied without hard-coding the identity on the client.
When the diagonals are all you know
Classrooms and tutoring platforms use a quadrilateral area from diagonals calculator so learners can check A = ½·d1·d2·sin(θ) for arbitrary positive lengths and acute or obtuse intersection angles without mixing degrees with radians or confusing the general formula with the perpendicular special case. Exam-prep generators need a deterministic oracle that marks wrong an angle of two hundred degrees or a negative diagonal instead of silently returning a signed or zero area a buggy grader might treat as success. Failed validation does not consume balance.
Keep requests small, pin the rounded area in tests, and you get reproducible areas for homework, LMS plugins, and edge workers without standing up symbolic math infrastructure of your own.
What you can do with it
Classroom and homework checks
Let students submit two diagonal lengths and the angle between them and verify that the area matches A = ½·d1·d2·sin(θ) against textbook worked examples.
Exam and LMS auto-grading
Mark quadrilateral-area items with a deterministic oracle that rejects angles outside 0–180 and non-positive diagonals and never invents a signed area from invalid input.
Survey and fabrication notebooks
Convert measured diagonal spans and their crossing angle into plot or panel area in CAD or spreadsheet pipelines without importing a full geometry CAS.
FAQ
How do I calculate the area of a quadrilateral from its diagonals and angle?
Send positive numbers d1 and d2 and an angle in degrees strictly between 0 and 180.
What if a diagonal is zero or negative?
Diagonal lengths must be strictly positive so the figure has a meaningful area.
Does ninety degrees recover the rhombus formula?
Yes. When angle is 90, sin(θ) is 1, so area reduces to (d1 × d2) / 2, the standard half-product for perpendicular diagonals.
Why must the angle stay between 0 and 180 degrees?
As the angle gets close to 0 or 180 degrees the two diagonals line up, the figure flattens and the area shrinks towards zero. Only an angle strictly inside that range describes a real four-sided shape.
Do I need the side lengths or the corner angles?
No. The two diagonals and the angle where they meet are enough to fix the enclosed area, so you can skip measuring the sides or the corners of the shape.
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/geom/quadrilateral-area-diagonals \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"d1":6,"d2":8,"angle":90}'const res = await fetch("https://api.kit.forhosting.com/geom/quadrilateral-area-diagonals", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"d1": 6,
"d2": 8,
"angle": 90
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/quadrilateral-area-diagonals",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"d1": 6,
"d2": 8,
"angle": 90
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/quadrilateral-area-diagonals", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"d1":6,"d2":8,"angle":90}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"d1":6,"d2":8,"angle":90}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/quadrilateral-area-diagonals", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"d1": 6,
"d2": 8,
"angle": 90
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.quadrilateral_area_diagonals",
"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
Unlike the shoelace path that needs ordered vertex coordinates, or the rhombus and kite shortcuts that assume right-angled diagonals, the general formula multiplies half the product of the diagonals by the sine of their intersection angle: area equals one-half times d1 times d2 times sin of theta. This quadrilateral area from diagonals calculator accepts the two positive lengths and the angle in degrees, returns the area with a short formula string you can display next to the answer, and fails cleanly with invalid_input when the angle is not strictly between zero and one hundred eighty degrees or when a diagonal is not positive.
Input contract, response shape, and error behaviour
Both diagonals must be strictly positive—zero or negative lengths are rejected with a clear message and are not billed. On success the body includes the echoed d1, d2, and angle, the computed area rounded to twelve decimal places for stable goldens across runtimes, and a formula field restating area equals one-half times d1 times d2 times sin of theta. Example: d1 equals six, d2 equals eight, and angle equals ninety yields area twenty-four, because half of forty-eight times sin ninety degrees is twenty-four—the same result as the perpendicular-diagonals shortcut. Another check: d1 equals ten, d2 equals twelve, angle equals sixty yields thirty times square root of three, about fifty-one point nine six. POST a JSON body with three required finite numbers: d1, the first diagonal length; d2, the second diagonal length; and angle, the intersection angle in degrees. Each field may arrive as a JSON number or as a numeric string; non-finite values, missing fields, and empty strings fail with invalid_input naming the field. The angle must be strictly between zero and one hundred eighty degrees exclusive; values at or outside the endpoints fail with a message that the angle must be between 0 and 180 so clients can match on that phrase in tests. Aliases diagonal1, diagonal_1, and p map to d1; diagonal2, diagonal_2, and q map to d2; theta, angle_deg, and deg map to angle. This endpoint computes area only and does not emit plots, side lengths, or perimeter.
Where a diagonals-and-angle area API earns its keep
Surveying and architecture notebooks often know the two measured diagonals of a plot or panel and the angle at their crossing before they know every side; calling a tiny parse API avoids pulling a full geometry library for one sine and two multiplies.
Technical questions
What happens if the angle is not between 0 and 180?
The task fails with invalid_input. The angle must satisfy 0 < angle < 180 degrees; endpoints and values outside that range are rejected and are not billed.
What does the quadrilateral area from diagonals calculator cost?
The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.