Rafter overhang length calculator
A 24 in eave projection at a 6/12 pitch needs about 26.8 in of rafter tail, because the board is cut along the slope, not along the plan. Enter the horizontal overhang and the pitch as rise per 12 to get the tail to add. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Overhang
- 24
- Pitch
- 6
- Pitch label
- 6/12 length
- Unit rise
- 0.5
- Pitch factor
- 1.118
- Rise overhang
- 12
This rafter overhang length calculator converts a horizontal eave projection into the extra rafter length you must add when framing a roof overhang. Carpenters measure the run past the wall plate on the plan, but the board is cut on the slope, so the tail is longer than the horizontal distance by the same pitch factor used on the main common rafter. Enter the horizontal overhang and the pitch as rise per twelve units of run; the engine multiplies the projection by the square root of one plus the unit-rise squared and returns the along-slope rafter overhang plus the vertical drop over that tail. A classic check uses a twenty-four unit horizontal projection with a six-twelve pitch, which yields about twenty-six point eight units of stock after the pitch-factor step. Both inputs must share the same linear unit—inches, feet, or metres—because the engine never converts units for you. The work is pure deterministic arithmetic with no network calls, no sampling, and no date-dependent shortcuts.
What the overhang length is and what you get back
A roof overhang is the portion of the rafter that continues past the exterior wall plate to form the eave. Plans and building codes usually state that projection as a horizontal distance from the face of the wall or the plate, yet the lumber is cut and ordered along the sloping line of the roof.
The extra length of stock required for that tail is therefore the hypotenuse of a right triangle whose base is the horizontal overhang and whose height is the rise over that same run at the roof pitch. Pitch is stated the way carpenters buy stock and read tables: units of rise for every twelve units of run, so six means six-twelve and twelve means a forty-five degree slope in pure geometry.
There is no birdsmouth seat depth, no fascia thickness, and no code table for maximum overhang baked into the core number: you get a geometric conversion so you can add waste, drip-edge clearance, and rafter-tail style after the pure length is known.
Where overhang take-offs fit in DIY, trade quotes, and software
Homeowners meet this calculation when a porch, shed, or garage design calls for a specific eave projection in plan view and the lumber list must not under-order the rafter tails. Framers and small contractors use the same numbers to convert a measured or specified horizontal overhang into cut length before they leave the yard, then add seat-cut waste and fascia allowance that pure geometry does not include.
Estimators embed the contract in take-off tools so a schedule of eave projections and pitches becomes a single along-slope tail length without a spreadsheet full of hidden cells and mixed units. Product and education tools show learners why a two-foot horizontal eave is more than two feet of board once the pitch factor multiplies the run.
Pair it with common rafter length, roof pitch, or shingle helpers when you are building a small lab of free, deterministic roofing calculators, and keep site judgement for hangers, drip edge, and local code limits on overhang that your elevation requires beyond the pure sloping tail length.
What you can do with it
DIY eave tail lumber lists
Convert a planned horizontal eave projection and roof pitch into along-slope rafter overhang length before you buy stock at the yard.
FAQ
What does the rafter overhang length calculator cost?
It is free in your browser on this page.
How is rafter overhang length defined?
Overhang is the horizontal projection; pitch is rise per 12 units of run.
What happens if overhang is zero or negative?
A zero or negative horizontal projection cannot define an eave overhang length.
Is overhang measured horizontally or along the rafter?
Horizontally: enter the plan-view projection past the wall plate.
How is this different from a full rafter length calculator?
This tool converts only the eave overhang segment from horizontal projection to slope length. A full common rafter calculator uses building span, pitch, and optional along-rafter tail for the ridge-to-tail total.
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/rafter-overhang \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"overhang":24,"pitch":6}'const res = await fetch("https://api.kit.forhosting.com/home/rafter-overhang", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"overhang": 24,
"pitch": 6
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/home/rafter-overhang",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"overhang": 24,
"pitch": 6
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/home/rafter-overhang", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"overhang":24,"pitch":6}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"overhang":24,"pitch":6}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/home/rafter-overhang", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"overhang": 24,
"pitch": 6
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "home.rafter_overhang",
"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
What rafter overhang length means and what the response contains
This calculator returns the parsed horizontal overhang and pitch, a pitch_label such as six slash twelve, the unit_rise ratio pitch over twelve, the pitch_factor multiplier equal to the square root of one plus unit-rise squared, the rise_overhang vertical drop over the eave, the final rafter_overhang along the slope, a unit tag, the precision used, a method tag, and a short formula string you can audit. Rejected cases include missing overhang or pitch, non-finite values, magnitudes above the documented ceiling, a zero or negative overhang, and a negative pitch, because a non-positive horizontal projection cannot define an eave tail and a negative pitch is not a physical roof slope.
How overhang, pitch, and precision are read and stay reproducible
Keep every length in one linear unit for a given call; mixing inches of overhang with a pitch defined on a different base will not be corrected by the engine. Prefer overhang for the horizontal eave projection past the wall plate, with aliases horizontal_overhang, projection, eave, run_overhang, and H so forms and query strings can reuse the same contract. Pitch accepts pitch plus aliases rise, pitch_rise, X, and roof_pitch, always as the rise component of an X-over-twelve pitch, never as degrees alone and never as a unitless percent slope. Optional precision, with aliases decimals and dp, chooses decimal places for every numeric field in the response, defaulting to four and capped at fifteen so JSON goldens stay stable across runtimes. Computation forms unit_rise as pitch divided by twelve, builds pitch_factor as the square root of one plus unit_rise squared, multiplies overhang by that factor for rafter_overhang, and multiplies overhang by unit_rise for rise_overhang. Equivalently, rafter_overhang is the hypotenuse of overhang and rise_overhang under Pythagoras. Pair the free browser run on this page with the priced API when you need the identical mathematical result inside an automated pipeline without re-implementing the horizontal-to-slope conversion yourself.
Where overhang take-offs fit in DIY, trade quotes, and software
On this page the work runs entirely in your browser; through the API each successful lookup costs $0.002, failed validation is not charged, and nothing is stored after the response returns. That split — free interactive exploration and a priced, identical API — matches the rest of the KIT tier-A catalog and lets you move from a phone check on site to an automated pipeline without changing the mathematical result.
Integration use cases
Trade quotes and framing take-offs
Turn overhang and pitch schedules into reproducible rafter_overhang values for written roofing and framing quotes.
Estimating software and CI fixtures
Generate deterministic overhang tail lengths for unit tests, property checks, and automated material take-off pipelines.