🔬
🔬 Science & engineering

Vertical Curve Calculator (crest & sag)

Results update as you type.

Your numbers

Understanding the vertical curve calculator — concept and principle

A vertical curve is the smooth transition between two road or railway grades. A crest curve joins an uphill grade to a flatter or downhill one, and a sag curve does the opposite. This calculator gives the elevation at any distance along a parabolic vertical curve, the location of its high or low point, and its K value, which designers compare against sight-distance and comfort criteria.

Crest vertical curve between +3% and −2% gradesStarting at 100 m, the curve 80 m along sits at 101.6 m, 0.8 m below the +3% grade line; the high point is at 120 m and K = 40 m per %.A crest curve rounds off two grades+3 %−2 %grade lines meet (PVI)0.8 mx = 80 m: 101.6 mtop 120 mstart 100.0 mend 101.0 m (L = 200 m)y = 100 + 0.03×80 − 0.05×80² ÷ 400 = 101.6K = 200 ÷ 5 = 40 m per %grades change by 5 % over 200 m
The parabola drops below the grade line by (g₂ − g₁)x² ÷ 2L — here 0.8 m at 80 m (heights exaggerated).

How it is calculated

The principle

A parabola is used because its slope changes at a constant rate along the horizontal distance. The slope starts at g₁, changes linearly to g₂ over length L, and integrating that linearly changing slope gives the quadratic term (g₂ − g₁)x²/(2L). It is easy to set out with offsets from the tangents. K measures how gentle the curve is: the larger K, the longer the curve for the same change in grade, and the more sight distance over a crest.

Worked example

  1. Inputs: g₁ = 3%, g₂ = −2%, L = 200 m, x = 80 m, start elevation 100 m.
  2. Tangent rise: 0.03 × 80 = 2.4 m.
  3. Curve correction: (−0.02 − 0.03)/(2 × 200) × 80² = −0.000125 × 6400 = −0.8 m.
  4. Elevation at x = 100 + 2.4 − 0.8 = 101.6 m.
  5. High point: x = −3/(−5/200) = 120 m from the start (elevation 101.8 m).
  6. K = 200/|−2 − 3| = 200/5 = 40 m per %.
How Elevation at x (m) changes with Start elevation (m)How Elevation at x changes with Start el…050100150200250255075100125150200Example: 101.6Start elevation (m)
Each point is the calculator re-run with only “Start elevation (m)” changed; the gold point is the default example. Change the inputs above and this chart follows your numbers.
Start elevation (m)Elevation at x (m)
2526.6
5051.6
7576.6
100101.6
125126.6
150151.6
200201.6

How to read the result

For a crest, a larger K gives longer sight distance over the hump; for a sag, it governs headlight sight distance and comfort. AASHTO's tabulated minimum K values for 80 km/h are about 26 for crest curves and 30 for sag curves, so K = 40 in the example comfortably exceeds both. Drainage also matters: on very flat curves near the high or low point, water may pond unless kerbs and inlets are planned.

Common mistakes

Keep in mind: Minimum K values and curve lengths depend on the design speed, eye and object heights and the national road standard. Final vertical alignment must follow your local code and be checked by a qualified highway engineer.

Frequently asked questions

What is the PVI?

The point of vertical intersection, where the two tangent grades would meet; on a symmetric curve it lies at L/2 from the start.

How much does the curve depart from the PVI?

The middle ordinate is (g₂ − g₁)·L/8 with decimal grades; in the example it is 1.25 m.

Why use parabolas instead of circular arcs?

Over the small angles of road grades they are nearly identical, but parabolas are much simpler to compute and set out.

Sources: AASHTO, A Policy on Geometric Design of Highways and Streets (Green Book) · N. J. Garber and L. A. Hoel, Traffic and Highway Engineering, Cengage Learning

Checked 8 Nov 2026. Standard textbook formulas in SI units, computed in your browser. For learning and estimates — real designs must follow your local codes and be checked by a qualified engineer.

🔬 All science & engineering tools →🌍 Calculators by country →