Vertical Curve Calculator - Symmetric Parabolic Road Grade Elevations
Use this vertical curve calculator to enter the BVC, g1, g2, L, and station, and get the road elevation, PVI, EVC, offset, A, r, and crest or sag type.
Vertical Curve Calculator
Results
What Is a Vertical Curve Calculator?
A vertical curve calculator is a road design tool that finds the elevation of the road surface at any point along a parabolic grade transition between two straight grades. Vertical curves are the smooth connections civil engineers insert between an entering tangent grade g1 and an exiting tangent grade g2 so that vehicles, drainage, and sight distance stay safe. The same calculator works for crest curves (a hilltop), sag curves (a valley), and continuous-grade transitions where the two grades have the same sign.
- • Setting driveway and parking lot grades: Design a parabolic transition between the flat parking area and the steeper street crown, then read off the elevation at any station to set forms and check drainage.
- • Computing earthwork and paving quantities: Use the elevation outputs to drive a cross-section for a road, bike path, or rail bed, then feed the cut and fill into the earthwork estimate.
- • Verifying crest and sag curve design checks: Check the high or low point elevation, the curve length, and the rate of change against AASHTO stopping or headlight sight distance criteria.
The most common form in road design is a symmetric parabolic curve, where the PVI sits at the horizontal midpoint on the tangent intersection (not on the curve itself), and the elevation follows a single quadratic equation.
To set the entering and exiting tangent grades g1 and g2 from rise and run measurements on the site, the elevation grade calculator returns the percent grade and the slope angle that feed the curve inputs.
How the Vertical Curve Calculator Works
It applies the symmetric parabolic vertical curve equation to the BVC elevation, the two grades, the curve length, and the station, then returns the road surface elevation, the PVI and EVC elevations, the tangent offset, and the curve type.
- E_BVC: Elevation at the Beginning of Vertical Curve, in feet or meters.
- g1: Initial tangent grade, as a decimal (percent divided by 100).
- g2: Final tangent grade, as a decimal (percent divided by 100).
- L: Horizontal length of the curve, in the same units as elevation.
- x: Horizontal distance from the BVC at which the elevation is wanted.
- A: Algebraic difference g2 - g1, in percent. Negative is a crest curve, positive is a sag curve.
The formula matches the symmetric parabolic form in the AASHTO Green Book and the Caltrans Highway Design Manual Chapter 200, so a paper-based worksheet and this tool agree to the second decimal place.
Worked example: AASHTO crest curve with explicit sight-distance check
BVC 100 ft, g1 = +3%, g2 = -2%, L = 400 ft, station = 100 ft.
In decimal: g1 = 0.03, g2 = -0.02, A = -5%, r = -1.25% per 100 ft. PVI = 100 + 0.03 * 200 = 106 ft, EVC = 100 + 0.03 * 400 - 10 = 102 ft, station elevation at x = 100 = 100 + 3 - 0.625 = 102.375 ft.
Road elevation = 102.375 ft, PVI = 106 ft, EVC = 102 ft, offset = -0.625 ft, A = -5%, r = -1.25% per 100 ft, type = Crest.
AASHTO sight-distance check: K = L / |A| = 400 / 5 = 80, well above the 30 mph Green Book minimum K of 19, so the curve clears stopping sight distance. The rate of change r = 1.25% per 100 ft also sits inside the AASHTO comfort band for 30 mph local roads.
According to the AASHTO A Policy on Geometric Design of Highways and Streets (the Green Book), the symmetric parabolic vertical curve equation E_x = E_BVC + g1 * x + (g2 - g1) * x^2 / (2 * L) returns the road elevation at any station, with E_PVI = E_BVC + g1 * L / 2 and E_EVC = E_BVC + g1 * L + (g2 - g1) * L / 2. The Caltrans Highway Design Manual Chapter 200 reproduces the same equation and the AASHTO K-value and stopping sight distance tables used to size crest and sag vertical curves on California state highways.
When the vertical curve transitions into a curb ramp or an ADA accessible path, the ramp calculator checks the running slope and the cross slope against the same percent units used in g1 and g2.
Key Concepts Explained
Four ideas drive every vertical curve problem:
BVC, PVI, and EVC Point Naming
BVC marks the Beginning of the Vertical Curve, PVI is the Point of Vertical Intersection where the tangents cross, and EVC marks the End. For a symmetric curve the PVI sits at the horizontal midpoint (L/2 from the BVC) on the tangent intersection above or below the curve, not on the curve itself.
Algebraic Grade Difference A
A = g2 - g1 in percent. Negative gives a crest, positive gives a sag, and zero means the tangents are parallel with no high or low point.
Tangent Offset Y(x)
The tangent offset is the vertical distance between the initial tangent line and the curve at the same station. It grows as the square of x divided by 2L times (g2 - g1), and is useful for offset stakes and sight distance checks.
Crest vs Sag Curve Type
Crest curves are designed for stopping sight distance over the top of a hill; sag curves are designed for headlight sight distance at the bottom of a valley. The same parabolic equation handles both.
These four ideas map directly to the AASHTO Green Book profile symbols.
For drainage-style parabolic shapes that share the rise-over-run vocabulary used in road design, the roof pitch calculator reads the same percent-grade units so the math is consistent across the project.
How to Use the Vertical Curve Calculator
Five short steps turn an alignment sketch into elevation outputs:
- 1 Enter the BVC elevation: Type the elevation at the Beginning of Vertical Curve in the units you want the output in, usually feet or meters.
- 2 Enter the initial and final grades: Type g1 and g2 in percent, positive for uphill and negative for downhill. The sign of (g2 - g1) drives the crest or sag label.
- 3 Enter the curve length L: Type the horizontal length of the curve. For a symmetric curve, the PVI's horizontal position is at L/2 on the tangent intersection and the EVC is at L from the BVC on the curve itself.
- 4 Pick a station from the BVC: Type the horizontal distance from the BVC at which you want the road elevation, between 0 and L for a point inside the curve.
- 5 Read the result panel: The result panel shows the road elevation at the station, the PVI and EVC elevations, the tangent offset, the grade difference A, the rate of change, and the crest or sag type.
Practical example: BVC 100 ft, g1 = +3%, g2 = -2%, L = 400 ft, station = 100 ft returns road elevation 102.375 ft, PVI 106 ft, EVC 102 ft, offset -0.625 ft, A = -5%, r = -1.25% per 100 ft, and type Crest.
Benefits of Using the Vertical Curve Calculator
A purpose-built vertical curve tool removes the quadratic math and the crest-vs-sag guesswork.
- • Fast elevation lookup at any station: The calculator runs the symmetric parabolic equation on every change, so you can read the road surface elevation at any station without redoing the quadratic by hand.
- • BVC, PVI, and EVC in one place: The result panel reports all three AASHTO profile points at once, so you can sanity-check the curve against the profile sheet.
- • Crest and sag in one formula: The sign of (g2 - g1) drives the crest or sag label, so the same form covers both cases.
- • Pairs with elevation grade and ramp math: Use the same elevation grade and ramp numbers for the straight grades outside the curve, then drive the parabolic transition without re-entering the survey data.
- • Rate of change for sight distance: The rate of change r = A / L * 100 is reported in percent per 100 ft, the AASHTO sight distance unit.
The road elevation is the headline number, but the PVI and EVC set the hubs for the surveyor and the rate of change sizes the sight distance for the engineer.
After the vertical curve is set, the asphalt calculator converts the pavement area and thickness from the profile into a tonnage estimate for the paving crew.
Factors That Affect Your Results
Five variables drive the result, and two limitations tell you when to double-check the math.
Algebraic Grade Difference A
A = g2 - g1 sets the magnitude of the parabolic correction. A larger A gives a deeper crest or sag and a higher rate of change, which is what triggers the AASHTO sight distance and comfort checks.
Curve Length L
A longer L spreads the same grade change over more distance, which reduces r = A / L * 100 and flattens the tangent offset.
Sign of A for Crest vs Sag
A negative A gives a crest with a high point; a positive A gives a sag with a low point. The design check changes by case, so read the curve type first.
BVC Elevation Anchor
The BVC elevation sets the vertical origin of the entire curve, so a 1 ft survey error there propagates to every station. Verify the BVC against the benchmark before laying out.
Station Inside vs Outside the Curve
Stations outside [0, L] are not on the design curve. The calculator clamps the station to L so the elevation stays on the curve.
- • This calculator implements the symmetric parabolic form. Unsymmetric vertical curves with different L1 and L2 distances from the PVI are not supported; for those, use the AASHTO unsymmetric formulas.
- • The formula assumes the BVC, PVI, and EVC are collinear with the road stationing direction. A horizontal curve laid over the vertical curve introduces a stationing offset that this tool does not correct for.
A common trap is to copy the curve length from a previous project without re-checking the rate of change, which can violate AASHTO stopping sight distance on a crest curve.
According to the FHWA Geometric Design program page, U.S. highway geometric design standards are developed by state DOTs through AASHTO committees, and FHWA adopts the Green Book for the National Highway System, which defines vertical curves as parabolic transitions between straight grades with BVC, PVI, and EVC as standard profile points and A as the algebraic grade difference in percent.
If the curve ends in a concrete apron, drainage swale, or curb section, the concrete calculator returns the volume of concrete needed to finish the transition.
Frequently Asked Questions
Q: What is a vertical curve in road design?
A: A vertical curve is a smooth, usually parabolic transition between two straight road grades, running from the BVC to the EVC between the entering and exiting tangents. The PVI marks where the extended tangents would cross at the horizontal midpoint (L/2 from the BVC) on the tangent intersection, not on the curve, which keeps sight distance, drainage, and rider comfort within design limits.
Q: What is the vertical curve formula?
A: For a symmetric parabolic vertical curve, the elevation at horizontal distance x from the BVC is E_x = E_BVC + g1 * x + (g2 - g1) * x^2 / (2 * L), where g1 and g2 are the entering and exiting grades in decimal, L is the curve length, and E_BVC is the elevation at the BVC.
Q: What is the difference between a crest and a sag vertical curve?
A: A crest curve has the final grade lower than the initial grade, so (g2 - g1) is negative and the road hits a high point inside the curve. A sag curve has the final grade higher than the initial grade, so (g2 - g1) is positive and the road hits a low point. Crest curves are designed for stopping sight distance; sag curves are designed for headlight sight distance.
Q: How do you find the high or low point on a vertical curve?
A: The high or low point is the station where the slope of the curve is zero, which for a symmetric curve works out to x = -g1 * L / (g2 - g1) from the BVC. Plug that x back into the elevation equation to read the extreme elevation, which is the top of a crest curve or the bottom of a sag curve.
Q: What does BVC, PVI, and EVC stand for?
A: BVC is the Beginning of the Vertical Curve, PVI is the Point of Vertical Intersection where the tangent grades cross, and EVC is the End of the Vertical Curve. For a symmetric curve the PVI sits at the horizontal midpoint (L/2 from the BVC and EVC) on the tangent intersection above or below the curve, not on the curve itself.
Q: How long should a vertical curve be?
A: The curve length is sized to keep stopping sight distance for crest curves and headlight sight distance for sag curves, and to keep the rate of change r = A / L * 100 inside the AASHTO comfort band. Higher design speeds and larger grade differences both need a longer L.