Projectile Motion Calculator: Range, Max Height, Time of Flight
Calculate trajectory, range, time of flight, and maximum height. Solve for launch angles or speeds to hit targets, and visualize projectile paths with interactive graphs.
Calculate trajectory, range, time of flight, and maximum height. Solve for launch angles or speeds to hit targets, and visualize projectile paths with interactive graphs.
Range R = (v₀² · sin(2θ)) / g. That's projectile motion range on level ground without air resistance, and it tells you most of what you need before any calculation. Maximum at θ = 45°, and the function is symmetric around it. So a 30° launch and a 60° launch land at the same spot with the same speed. Counterintuitive until you derive it. The full motion decouples: x grows linearly while y follows a parabola from −½gt². This calculator handles both level and elevated launches. If your range looks wrong, the usual cause is forgetting the launch height. An extra 5 m of platform adds flight time and stretches R by tens of percent.
Before computing anything, draw the parabola. Sketch the launch point, peak, and landing. Mark the velocity vectors at launch (angled upward) and at the peak (purely horizontal). This diagram reveals what the equations describe: horizontal motion at constant speed, vertical motion under constant downward acceleration. Without the picture, students mix up components and get sign errors.
The free-body diagram of an idealized projectile contains exactly one arrow: weight, mg, pointing down. No drag, no lift, no thrust. That's the entire dynamics. Place your origin at the launch point, x positive in the direction of horizontal travel, y positive up. The acceleration vector is a = (0, −g) for the entire flight. Constant. This is what makes the kinematic equations apply cleanly to both axes.
What's actually constant matters more than what changes. The horizontal velocity component, v₀ cos θ, doesn't budge from launch to landing because no horizontal force acts on the body. The vertical component changes at a steady −9.81 m/s² because gravity is the only vertical influence. Mass is constant (we're ignoring rocket-fuel burn). The angle θ is set at launch and never reappears as a time-varying quantity. The diagram should show v₀ split into v₀ₓ and v₀ᵧ as a right triangle, with mg drawn separately at the body's instantaneous position.
Two equations running simultaneously
Horizontal: x(t) = x₀ + v₀ₓ · t // constant velocity
Vertical: y(t) = y₀ + v₀ᵧ · t − ½ g t² // accelerated motion
Doubling horizontal speed doubles range (x grows twice as fast for the same flight time). Doubling vertical speed quadruples maximum height (H ∝ v₀ᵧ²). These scaling behaviors fall out once you accept that horizontal and vertical are independent games sharing only the clock.
You don't need a separate formula for range, time of flight, max height, and impact speed. You need two: the position equation and the velocity equation, applied in each direction. Everything else is a special case.
| Question | Equation to reach for | Why |
|---|---|---|
| Time to apex | v_y = v₀ᵧ − gt, set v_y = 0 | Apex condition is vertical velocity zero |
| Max height | v_y² = v₀ᵧ² − 2gH | Time-independent shortcut |
| Total flight time, level ground | T = 2v₀ᵧ / g | Twice the time to apex by symmetry |
| Range, level ground | R = v₀² sin(2θ) / g | Substitute T into x = v₀ₓ · t |
| Range, elevated launch | Solve y(T) = 0 quadratic, then x = v₀ₓ · T | No closed-form shortcut for h₀ > 0 |
The chooser is which variable is missing. Don't care about time? Use the time-independent v² = v₀² − 2g(y − y₀) on the vertical axis. Don't care about final velocity? Use y = y₀ + v₀ᵧt − ½gt². The level-ground range shortcut is convenient but disposable. The position and velocity equations always work.
Halliday & Resnick treats this as a vector decomposition problem first, scalar formulas second. That's the right priority. Memorize the two component equations and you can derive the rest under time pressure.
The convention this calculator uses: rightward is +x, upward is +y, g is the magnitude 9.81 m/s² (always positive), and the −g in the position equation carries the direction. If you write y = y₀ + v₀ᵧt − ½gt² and then plug in g = −9.81, you've double-negated and your projectile climbs forever. The minus sign is already in the formula.
| Scenario | v₀ₓ | v₀ᵧ | y₀ | Notes |
|---|---|---|---|---|
| Upward launch from ground | + (forward) | + (upward) | 0 | Standard case |
| Upward launch from height | + | + | +h₀ | Solve quadratic for T |
| Horizontal launch from cliff | + | 0 | +h₀ | θ = 0°, T = √(2h₀/g) |
| Downward launch from cliff | + | − (downward) | +h₀ | θ negative, shorter T |
| Straight up (θ = 90°) | 0 | + | 0 | R = 0, max H |
The other convention trip is the angle itself. θ is measured from horizontal in this tool. A 35° launch and a 35° depression below horizontal aren't the same thing. Negative θ produces negative v₀ᵧ, and the projectile never goes up. Some artillery references measure from vertical instead, so a manual quoting "55° elevation" might mean what we'd call 35°. Always check the figure caption.
One more: when you solve the impact-time quadratic for elevated launches, you get two roots. The negative root is the time the projectile would have crossed y = 0 if it had been launched earlier from below. Pick the positive root. This convention trips most undergraduates because the algebra doesn't flag which root is physical.
Pure projectile flight is a single phase. Gravity acts the whole time. But realistic problems often glue projectile motion onto a powered phase or a guided phase that uses different physics.
The discipline is to sketch a timeline and label what physics owns each segment. Phase boundaries are where the dominant force changes. At a boundary, the position and velocity from the previous phase become the initial conditions for the next. Never try to write a single equation across a phase change. You'll get nonsense because the acceleration jumped.
For projectile motion specifically, the force approach (Newton's second law on each axis) is usually faster because the acceleration is constant and the equations are linear in time. Energy methods don't care about time, which is exactly what kills them when the question is "when does it land?" or "where is it at t = 1.4 s?"
Energy wins for one specific question: impact speed. mgh + ½mv₀² = ½mv_f² gives you the landing speed for an elevated launch in one line, with no quadratic to solve. Plug in the launch height as h, the initial speed as v₀, and out pops the magnitude of the impact velocity. You don't learn the impact angle this way (energy is a scalar), but if all you need is the speed for a damage estimate or kinetic-energy budget, this is the shortcut.
Force methods win whenever the question involves where, when, or in what direction. They also win when the launch is asymmetric. For symmetric ground-to-ground flight at the same altitude, the energy answer is trivial: v_impact = v_launch. So energy adds nothing. For a cliff launch dropping to a beach 40 m below, energy gets you the speed in one step while force needs the quadratic plus a Pythagorean combine.
Tipler's textbook organizes projectile chapters under kinematics and revisits them later under energy conservation precisely because both views are valid and each is sharper for different questions. Pick whichever fits the question rather than picking favorites.
A field gun fires a shell at muzzle velocity 700 m/s, elevation 35°, from a position 50 m above the target plain. Compute time of flight, horizontal range, and impact speed under the no-drag idealization. Then compare to what an actual artillery firing table would say.
Step 1: decompose v₀
v₀ₓ = 700 cos 35° = 700 × 0.8192 = 573.4 m/s
v₀ᵧ = 700 sin 35° = 700 × 0.5736 = 401.5 m/s
Step 2: solve y(T) = 0 with y₀ = 50 m
0 = 50 + 401.5·T − 4.905·T²
4.905 T² − 401.5 T − 50 = 0
T = [401.5 + √(401.5² + 4·4.905·50)] / (2·4.905)
T = [401.5 + √(161202 + 981)] / 9.81 = [401.5 + 402.7] / 9.81
T ≈ 81.94 s
Step 3: range and impact velocity
R = v₀ₓ · T = 573.4 × 81.94 ≈ 46,985 m, so about 47.0 km
v_y(T) = 401.5 − 9.81 × 81.94 = −402.6 m/s
|v_impact| = √(573.4² + 402.6²) = √(328788 + 162087) = √490875 ≈ 700.6 m/s
The energy check confirms it: ½v₀² + g·h₀ = ½(700)² + 9.81·50 = 245000 + 490.5 = 245490.5 m²/s² per unit mass, which yields v_impact = √(2 · 245490.5) ≈ 700.7 m/s. Matches within rounding.
Reality check: A real 155 mm howitzer firing M107 at 35° and 700 m/s ranges about 18 to 22 km, not 47. Drag eats more than half the range at these velocities. The vacuum formula is the upper bound. Firing tables in TM 9-1300-251-20 incorporate measured drag coefficients, Magnus effects, wind, and Coriolis force at long ranges.
Projectile motion derives from Newton's second law applied to constant gravitational acceleration. These sources cover derivations, worked examples, and extensions to drag and spin.
Note: This calculator uses ideal projectile motion (no drag). For applications that require air resistance modeling, use ballistics software with drag coefficients specific to your projectile.
Real questions from students stuck on launch height, angle units, complementary trajectories, and real-world vs ideal range.
Projectile motion is two-dimensional motion of an object thrown or launched into the air, where gravity is the only force acting on it after release. Air resistance gets ignored in the standard treatment. The trick is that the horizontal and vertical components decouple. Horizontal velocity stays constant: vₓ = v₀cos(θ). Vertical velocity changes with gravity: vᵧ = v₀sin(θ) − gt. That separation is what makes the math tractable. For a launch from ground level at angle θ with initial speed v₀, the range is R = (v₀² · sin(2θ)) / g. Peak height is H = (v₀² · sin²(θ)) / (2g). Total flight time T = (2v₀ · sin(θ)) / g, twice the time to apex. Maximum range happens at θ = 45° on level ground. A baseball hit at 40 m/s and 30° flies about 141 m horizontally and reaches 20.4 m at the peak. The standard model breaks down for fast objects where drag matters, spinning objects subject to Magnus force, high arcs where Earth's curvature appears, and anything launched in significant wind. For a pop fly or a thrown rock, it's accurate within a few percent.
Neither. The 45° optimal applies only to level ground (h₀ = 0). Shot putters release from shoulder height (~2 m), which shifts the optimal angle down to about 40–42°. The higher you start, the lower the optimal angle. Use the calculator with your actual release height to find the true optimal—it's usually θ_opt ≈ arctan(v₀/√(v₀² + 2gh₀)), which gives less than 45° whenever h₀ > 0.
It matters a lot. Launching from h₀ = 5 m instead of ground level adds roughly 0.6 seconds of extra flight time (the time to fall that extra 5 m). At 17 m/s horizontal speed, that's an extra 10+ meters of range. The level-ground formula R = v₀² sin(2θ)/g doesn't include height—if your problem has h₀ > 0, you need the full quadratic time-of-flight formula. Always check whether the launch point is elevated before using the shortcut.
It means the projectile is moving downward when it lands, which is correct. At launch, vᵧ = v₀ sin θ (positive, upward). At impact on level ground, vᵧ = −v₀ sin θ (negative, downward). The negative sign comes from the sign convention: up is positive, down is negative. Impact velocity magnitude is √(vₓ² + vᵧ²), which is always positive. Don't drop the minus sign—it tells you direction.
That's actually correct. Moon gravity is g = 1.62 m/s² versus Earth's 9.81 m/s²—about 6× weaker. Range scales inversely with g (R ∝ 1/g), so weaker gravity gives proportionally longer range. Time of flight also increases (T ∝ 1/√g for given launch speed and angle). If you're comparing to your intuition about 'jumping on the Moon,' remember astronauts' leg muscles generate less launch speed in a spacesuit—but for a fixed v₀, yes, 6× range is right.
Same range, different trajectories. At 30°, the ball travels fast and low (short flight time, low apex). At 60°, it arcs high and slow (long flight time, high apex). Both hit the same x-coordinate because the range formula R = v₀² sin(2θ)/g depends on sin(2θ), and sin(60°) = sin(120°). The heights differ because H ∝ sin²(θ), which is larger for 60° than 30°. Complementary angles give identical range but opposite trajectory shapes.
Degrees to radians: multiply by π/180. So 45° = 45 × π/180 = 0.785 radians. Radians to degrees: multiply by 180/π. Most projectile calculators expect degrees (0–90), but if yours expects radians, use 0–π/2. If results look nonsensical (range of thousands of meters or negative values), check angle units first. On a TI calculator, press MODE and verify Degree vs Radian. In code, Math.cos() uses radians—convert with angle × Math.PI / 180.
Air drag. The calculator assumes no air resistance, but real projectiles slow down in flight. A soccer ball at 25 m/s loses about 15–20% of ideal range due to drag; a lighter ping pong ball loses 50%+. Other factors: measurement error in launch speed/angle (±5° changes range by 10%), wind, spin (Magnus effect curves the ball), and bounce/roll after landing. Treat calculator results as upper bounds and expect real data to fall short.
Find the height y at horizontal distance x = 20 m using y = v₀ᵧ·t − ½gt², where t = x/v₀ₓ. Example: 18 m/s at 40° gives v₀ₓ = 13.79 m/s, v₀ᵧ = 11.57 m/s. Time to reach x = 20 m is t = 20/13.79 = 1.45 s. Height: y = 11.57 × 1.45 − ½ × 9.81 × 1.45² = 6.46 m. Since 6.46 m > 3 m wall height, the ball clears by 3.46 m. If y came out less than 3 m, increase angle or speed.
Time to max height (t_apex) is when the vertical velocity reaches zero: t_apex = v₀ sin θ / g. Total flight time (T) is when the projectile returns to ground. For level ground, T = 2 × t_apex—the descent mirrors the ascent. If you stopped at t_apex, you got half the answer. For elevated launches (h₀ > 0), the descent takes longer than the ascent, so T > 2 × t_apex. Always compute full flight time using the quadratic formula when the start and end heights differ.
At θ = 90°, all velocity is vertical: v₀ₓ = v₀ cos(90°) = 0. With zero horizontal speed, there's no horizontal displacement—the projectile goes straight up and comes straight down. Range R = v₀ₓ × T = 0 × T = 0. This is physically correct: if you throw a ball straight up, it lands at your feet (ignoring wind). If you want horizontal travel, use an angle less than 90°.
Enter your projectile parameters and click "Calculate" to see the trajectory, range, and flight time.