A vertical curve is the parabolic transition road and site designers use to connect two straight grades without a sharp break in slope. This calculator applies the standard AASHTO equation used in highway and driveway design to find the elevation anywhere along a crest or sag curve, plus the high or low point that governs sight distance and drainage.

How the Vertical Curve Calculator works

PVI is the tangent intersection at station L/2, not generally a point on the curve. PVC = PVI − g1×L/200. With grades in percent and x measured from PVC, E(x) = PVC + g1×x/100 + (g2−g1)×x²/(200×L).

Inputs and what they mean

Entry grade (g1) and exit grade (g2) are the two straight tangent slopes the curve connects, entered as signed percentages. Curve length (L) is the horizontal distance from the PVC to the PVT, in feet — longer curves change grade more gradually, which is why higher-speed roads use longer curves for the same grade change. PVI elevation anchors the whole curve vertically; it's the elevation the two tangents would share if extended to meet at the curve's midpoint. Station is the point you want to evaluate, always measured as a distance from the PVC — entering an absolute highway station number instead of a PVC-relative distance is the single most common input mistake with this formula.

Limits and edge cases

When g1 equals g2 there's no curvature at all — it's a straight tangent, and there's no distinct high or low point to solve for, which the calculator flags directly. A station entered outside the 0–L range is mathematically extrapolated beyond the PVC or PVT and is not a valid point on the physical curve, so treat that result as informational only. This tool computes geometry only: it does not check minimum curve length for stopping sight distance, K-value design standards, or drainage adequacy at a sag's low point — those require checking against the AASHTO Green Book or your governing jurisdiction's design manual, and a low point without a drain inlet is a common real-world grading defect this calculator won't catch on its own.