Thrust-to-weight calculator
Engines giving 760000 N of thrust on a vehicle weighing 380000 N make a thrust-to-weight ratio of 2, so it lifts off. Enter the thrust and the weight, or the mass and gravity, to get the ratio and whether the vehicle stays down, hovers or climbs. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Thrust
- 760,000
- Weight
- 380,000
- Twr
- 2
- Thrust to weight
- 2
- Lift class
- lifts_off
- Weight source
- weight
Thrust-to-weight ratio is the dimensionless number that tells you whether a rocket, missile, or VTOL vehicle can leave the pad: engine thrust divided by vehicle weight. This calculator accepts engine thrust in any consistent force unit and either vehicle weight in the same force unit or vehicle mass with a gravitational acceleration, then returns TWR together with a lift class of cannot lift, hover, or lifts off. When you pass mass instead of weight, the solver multiplies mass by g, using standard gravity 9.80665 metres per second squared unless you supply a local or planetary value.
What thrust-to-weight ratio means for a rocket
Thrust-to-weight ratio is the simplest pad-lift figure of merit in introductory propulsion. If the engines produce force F and the vehicle weighs W at the current gravity, the dimensionless ratio TWR equals F divided by W. When TWR is greater than one, thrust exceeds weight and the vehicle can accelerate upward from a standing start.
When TWR equals one, thrust exactly balances weight and the vehicle hovers. When TWR is less than one, the engines cannot lift the stack and the vehicle stays on the pad. That identity is dimensionless when both quantities use the same force unit: newtons over newtons, pounds-force over pounds-force, or any other consistent pair.
Textbooks often give sea-level thrust and a launch mass rather than a weight; mass is not weight, so this landing converts W equals m times g, using standard gravity 9.80665 metres per second squared unless you pass a local or planetary g. Zero vehicle weight — including a zero mass that would produce zero weight — makes the ratio undefined, and the calculator rejects that case instead of returning Infinity or a quiet NaN.
The tool does not stack engines, burn propellant over time, or fold in aerodynamic lift; reduce those problems to a single current thrust and a single current weight (or mass and g) before calling.
Practical tips, limits, and related searches
Use one consistent force unit end to end — for example both quantities in newtons — before calling; this landing does not convert between SI and imperial. When a datasheet lists launch mass in kilograms rather than weight in newtons, pass mass and optionally g instead of converting by hand. This page targets people searching for a thrust to weight ratio calculator, rocket TWR from engine thrust, or F over W online.
It is not a rocket-thrust calculator from mass flow and exhaust speed, not a Tsiolkovsky delta-v solver, and not a specific-impulse converter. Prefer this capability when you already know engine thrust and either vehicle weight or mass and only need the dimensionless ratio plus a lift class. Round-trip checks are easy: recompute thrust divided by weight by hand and confirm it equals the published twr within the same twelve-significant-digit rounding used in the response.
If your design later compares the pad TWR against a staging budget or a vacuum TWR after propellant burn, do that comparison after this ratio check matches the notes, not instead of it.
What you can do with it
Homework checks for rocket TWR
Students enter engine thrust and vehicle weight or mass from textbook propulsion problems and compare the dimensionless TWR and lift class against a deterministic F/W oracle before submitting.
FAQ
How is thrust-to-weight ratio calculated?
The calculator uses TWR = thrust / weight. The result is dimensionless when thrust and weight use the same force unit.
What happens if vehicle weight is zero?
Division by zero is rejected because the thrust-to-weight ratio is undefined when vehicle weight is zero.
Can I enter mass instead of weight?
Yes. Provide mass (and optionally g). The solver computes W = m × g and then TWR = F / W. If both weight and mass are sent, explicit weight is used as the denominator.
Does this compute rocket thrust from mass flow?
No. This landing only divides thrust by weight.
Is the thrust-to-weight calculator free?
The browser tool is free and runs locally.
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/phys/thrust-weight \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"thrust":760000,"weight":380000}'const res = await fetch("https://api.kit.forhosting.com/phys/thrust-weight", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"thrust": 760000,
"weight": 380000
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/phys/thrust-weight",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"thrust": 760000,
"weight": 380000
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/phys/thrust-weight", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"thrust":760000,"weight":380000}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"thrust":760000,"weight":380000}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/phys/thrust-weight", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"thrust": 760000,
"weight": 380000
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "phys.thrust_weight",
"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.
Limits
max_abs_force | 1000000000000000 |
max_abs_mass | 1000000000000000 |
max_abs_g | 1000000 |
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
Zero vehicle weight makes the ratio undefined, so the task fails with invalid_input instead of inventing infinity. Successful API calls are billed at $0.002 per request; failed validation is never charged.
What thrust-to-weight ratio means for a rocket
Negative thrust, negative weight, and negative mass are physical nonsense for this pad-lift model and fail with invalid_input. It also does not compute thrust from exhaust mass flow and exhaust velocity; that is a different search, served by a dedicated rocket-thrust landing that multiplies ṁ by v_e.
How to call the API and what comes back
If both weight and mass are sent, explicit weight is the denominator, because TWR is defined as a force ratio. Absolute values must stay within the published limits, thrust and weight must not be negative, g must be positive on the mass path, and weight must not be zero within a tiny numerical epsilon used to catch exact and near-zero singular cases. Mass and g appear only when they were supplied or used, so unused optional keys are omitted rather than returned as null. Pair classroom examples deliberately: thrust seven hundred sixty thousand and weight three hundred eighty thousand yields TWR equal to two. Send a JSON body with the required finite field thrust (aliases F, force, engine_thrust, and thrust_newtons) and at least one of weight (aliases W, vehicle_weight, and weight_newtons) or mass (aliases m, vehicle_mass, and mass_kg). Optional g (aliases gravity, gravity_accel, gravitational_acceleration, g0, and accel_g) is used only on the mass path; when omitted there, the solver uses standard gravity 9.80665. Failed validation — missing thrust, neither weight nor mass, non-finite numbers, negatives, non-positive g on the mass path, or zero weight — returns invalid_input and is never charged. Pricing is a flat $0.002 per successful request with unit item.
Practical tips, limits, and related searches
Keep thrust and weight inside the published absolute range so the quotient remains finite in IEEE double precision on the Worker and in the browser. Failed tasks that return invalid_input do not consume prepaid balance, which keeps exploratory scripts cheap when learners deliberately set the vehicle weight to zero. Related landings that start from ṁ and v_e to recover thrust, or from mass ratio and exhaust velocity to recover delta-v, are different search intents and different tools.
Integration use cases
First-pass pad-lift sizing scripts
Propulsion notebooks convert known sea-level thrust and launch mass into TWR fixtures for stage budgets before adding time-varying mass, multi-engine clustering, or atmospheric models.
Auto-graders and golden tests
Generate known-good TWR cases plus deliberate zero-weight rejections for coding kata expected values in flight sims, LMS plugins, and physics-engine unit tests.