geoprimsField-grade geospatial math

Slope and grade converter

Converts a slope between rise/run ratio, percent grade, per mille, and degrees.

4.76°

A grade of 8.33% is a slope of 4.76°.

Rise/run
Percent grade
Per mille
Provenance
Computed by
units.slope.convert 1.0.0, core 0.1.0
Model
ratio = tan(angle); percent = 100 × ratio
Accuracy
Exact for ratio, percent, and per mille; degrees to double precision (libm tan/atan)
Notes
None
Cites
National Institute of Standards and Technology, Guide for the Use of the International System of Units (SI), NIST Special Publication 811

Something look off?

Your values

Showing an example. Change anything.
Run many at once from a CSV

Loading…

How we got thisFormula, worked example, sources, and proof

Model: ratio = tan(angle); percent = 100 × ratio

Accuracy: Exact for ratio, percent, and per mille; degrees to double precision (libm tan/atan)

When to use this: Use this whenever a slope is written one way and needed another: a ramp or road at a percent grade against a limit in degrees, a railway gradient in per mille, a rise-over-run on a drawing, a roof pitch. Give it any one of the four and all four come back.

Limitations: A percent grade is not an angle, and the two are only close on shallow slopes -- a 100% grade is 45°, not 90°. Vertical has no grade at all, so ±90° is refused rather than returned as an infinity. This is the slope of a straight line, not a route: a road that climbs and descends has no single grade, and an average of two grades is not the grade of the whole. And the angle conversions go through tan and atan, so they carry a few units in the last place that the exact ratio conversions do not.

Worked example: A 1:12 wheelchair ramp (about 8.33%) in degrees. Source: Definition of grade: angle = atan(0.0833) = 4.76°; a 1:12 ramp is 8.33%.

You enter

Given as
percent
Slope
8.33

You get

Angle
4.76°
Rise/run
0.0833
Percent grade
8.33%
Per mille
83.3‰

Review: Not yet independently reviewed by a metrologist.

Last verified: 2026-09-18, when a maintainer last confirmed this tool's sources at the issuer. See the sources ledger.

Status: version 1.0.0, core 0.1.0. See this tool in the verification report.

Checked against: 25 golden test vectors (download the test vectors, each with its source and tolerance). See how results are checked and every source.

Sources