It would be nice to be able to estimate the grade of a road while riding, even if the estimate is not completely accurate. With a GPS, in theory it should be possible in theory to ride a short distance and divide the difference in elevation by the distance ridden to get a rough estimate. (Note that the sine and tangent are comparable for small angles.)

Is the elevation given by a cell phone or GPS-equipped bike computer accurate enough to give a meaningful grade estimate over short distances? Furthermore, is there any practical way to estimate the grade of a road that does not require a GPS?


Get an inclinometer. They're not particularly accurate, but readout is instant and the price is right.

enter image description here

  • Interesting. I had never heard of an inclinometer, but I was wondering whether something like this might exist. – amcnabb Jul 17 '12 at 21:59
  • 2
    I've found this to be about useless for me...any amount of forward motion and the bubble moves too much to be of any use. YMMV. – Ken Hiatt Jul 17 '12 at 22:41
  • 1
    Yeah, the bubble dances around quite a bit on roads of a certain roughness. I suspect it may be the design of the particular unit I have, though (which is not the one pictured). But you still get pretty good readings on 5% and "better" hills -- it's just on the flat that it dances so much. – Daniel R Hicks Jul 17 '12 at 23:04
  • 2
    I've thought about it in the past. A possible alternative would be a metal sphere inside an upside-down (curved up) transparent capsule filled with thick but translucid oil. That would take some seconds to settle, so shakes and accelerations wouldn't affect it so much. Just a thought! – heltonbiker Jul 17 '12 at 23:52
  • I should note that while the unit I have is less than perfect, it's still quite useful. And as inexpensive and light as the things are, it's a reasonable thing to have even with its imperfections. – Daniel R Hicks Jul 18 '12 at 1:06

Most of the Garmin Edge series GPS cycling computers can display grade. The Edge 500 and Edge 800 (not the Edge 200) have barometric altimeters to determine altitude. You can then change or add a display data field to show the current grade.

Funny you ask as I just put added the grade as a display field this morning on a hilly ride.

It updates the grade calculation ever 100-200 m of horizontal travel (guestimate) so there is a little delay before you get an up-to-date grade calculation. Overall the grade estimate seems quite reasonable, if you take into the account the delay.

Also many computer applications can take a GPS track log, and retrieve the known altitude of that point and compute grade after the fact. For example if you using OS X I know Ascent does this (note I am NOT endorsing this program, just using it as a known example). I am also sure there are many other GPS track analysis programs that do as well. I am sure there are some smartphone applications that can record an GPS track, which you could potentially import into one of these analysis programs to get the grade after the fact.

Aside - Some of the older discontinued Edge Units (e.g. Edge 305, 705) have barometric altimeters as well. This can be a more affordable option if you can find a used one on ebay or craigslist. I say this as I am about to list my old Edge 305 after upgrading to an Edge 800.

  • Thanks for the information, especially about baromitric altimeters. In addition to GPS bike computers with altimeters, it looks like there are a number of standalone altimeters available in the $30 to $50 range, as well as non-GPS bike computers with altimeters. – amcnabb Jul 17 '12 at 19:50
  • Good point about non-GPS bike computers... I almost forgot those exist as I have been using a GPS bike computers for so long now. I am sure some of the higher end Polar computers will do this. – Rider_X Jul 17 '12 at 20:12
  • I use the Edge 800 and 500...both do a decent job of giving you the grade. It's not perfect and it's not instant, but it's good enough for use while riding. Both give better (and close match to maps) with the data once loaded into the computer. – Ken Hiatt Jul 17 '12 at 22:44
  • 1
    Do you have to calibrate the Edge altimeter often? A buddy had a barometric altimeter and he had to dial in the current altitude based on maps twice daily since minor variations in air pressure could lead to substantially different readings, but as long as he did that, it agreed well with the map in the places where we checked. – Mike Samuel Sep 16 '12 at 16:28
  • 1
    No, the Edge units self-calibrates. I live in a mountainous area, near the ocean and whenever I drop down to the ocean or head to a known peak it is pretty close to the true elevation. The manual doesn't seem to specify how it calibrates, but the best discussion I have found on it is here. – Rider_X Sep 17 '12 at 4:27

Cell phones, usually not. Some applications will attempt to massage the data using elevation information provided from third-parties, but its a crapshoot at best. A dedicated GPS with a barometric altimeter is probably your best bet. I can't really speak to their level of accuracy, but it's certainly better than other practical options.

If you just want grade, there's an app for that.

  • The iHandy Level app seems like an interesting idea, but you would need some way to make a surface for it that's level with the ground, wouldn't you? – amcnabb Jul 17 '12 at 19:52
  • 1
    Isn't the ground level with the ground? – Stephen Touset Jul 18 '12 at 13:30
  • 1
    Yes, but then the measurement would be very sensitive to bumps and slight variations, and it seems like the road would be likely to scratch a phone. Also, some of the other options don't require stopping. – amcnabb Jul 18 '12 at 14:56
  • You only need to measure the road grade once. And it's probably more accurate than a GPS device for shorter hills. You'd probably need to stop to get a reasonable readout from the inclinometer anyway. – Stephen Touset Jul 18 '12 at 15:01
  • 1
    Unrelated: "inclinometer" is a great word. I have endless fun pronouncing it "incline-o-meter" in my head. – Stephen Touset Jul 18 '12 at 15:04

Others have already discussed GPS and GPS-enabled phones, altimetric barometers, and inclinometers. Bubble inclinometers (such as the Skymounti shown elsewhere among the answers) can be affected by acclerations so to get the best readings you should be stationary. dGPS (differential GPS) is used in surveying instruments to measure grades, but these are generally not consumer-level devices, nor are they compact enough for bicycle use. Grades can also be measured, while stopped, with a long straightedge, a protractor, and a plumb line. Some phones and other devices (such as iPods and Wii controllers) have built-in multi-axis accelerometers that will report gradient information as you ride, but reports are that their precision can be affected by bumpy roads. The iBike line of bicycle computers use a combination of barometric, speed, and accelerometer sensors; reportedly, the gradient estimates can be quite good.

That said, one of the most precise devices that can be used to determine road grade while on a bicycle is a well-calibrated power meter. Under favorable conditions, road grade can be extracted from speed and power data (if one knows or can measure a few other variables). For example, here is a comparison of the profile of the flat Moriarty, New Mexico, TT course on which the 40 km US national time trial record was set. The course is a straight out-and-back (that is, 20km out, a turn-around, and then 20km back for a total of 40km) and one of the flattest in the country, with only 30 meters of drop over 20km for an average gradient of .0015 (0.15%). The plot below shows three traces: a measurement of the gradient using a consumer-level GPS receiver in blue, and two traces (in red and green) derived from power meter measurements. The green line shows the reconstructed elevation profile on a day with unfavorable conditions, while the red line shows the reconstructed profile on a favorable day. Because this course is an out-and-back, the profiles before and after the 20km point should be mirror images, and at the end should match up at the same elevation. As can be seen, under favorable conditions the profile reconstructed from the power meter outperforms that from a GPS (though on an unfavorable day the profile is much worse).

Moriarty NM time trial course elevation profiles

For another example, here is the reconstructed elevation profile for a multi-use path along the shore of San Francisco Bay.

Bay trail elevation profile

This shows the profile over a 1 mile (=1.6 km) out-and-back segment of the trail. Once again, you can see that the two halves of the reconstructed profile are mirror images, and the average slope was about .00125. Just as importantly, you can easily spot consistent dips in the trail of less than 40 cm (about a foot).

The description of the analytical method used for these two plots and the additional data required is given here.

  • So what were the unfavorable conditions that caused the green trace to be so inaccurate? That seems interesting. – amcnabb Jul 18 '12 at 14:59
  • 1
    @R.Chung – Crazy number crunching! When you are computing the elevation from the power data are you adding a smoothing kernel? Also would you be able to overlay the altimeter readings from the good and bad day as well as the true profile (e.g. from one the the USGS maps)? Could be quite interesting. My only caveat with this example is that we are talking about small elevation changes (-+ 35 m). Well small compared to many of our climbs which are upwards of 1200m. – Rider_X Jul 18 '12 at 15:25
  • @amcnabb - I am guessing unfavourable conditions = wind. – Rider_X Jul 18 '12 at 15:28
  • 1
    Right, it was a slight headwind out / tailwind back (slight meaning a bit less than 2mph). If we hadn't known the wind speed we could actually have figured it out by guessing various wind speeds until the green and red profiles matched. But notice that the "inaccuracy" of the green profile is exaggerated because the scale is so small -- the vertical scale is in meters while the horizontal scale is in km, and the largest absolute error over the entire course was only about 40 meters and the absolute error in estimated slope was only about 0.25% – R. Chung Jul 18 '12 at 16:29
  • No smoothing kernel needed. We do need accurate speed and power data. There are other examples in that paper of comparing this method with altimetric barometers on big climbs and against public works road plans like here. – R. Chung Jul 18 '12 at 16:38

Ignoring GPS-derived elevation, the GPS can still be useful.. If you record your ride, then upload your ride to Strava you see the elevation profile based on a terrain-elevation-database:

Strava elevation profile

You can mouse over sections of the elevation-profile, which shows you the grade at that point. The area you mouse-over is indicated on the map as a marker:

Strava elevation and map connection

You can also drag-select a section of your ride and it gives you stats like the average-grade and elevation-gain.

While this doesn't directly tell you the grade of the hill you are cycling up the time, you can quickly learn how to estimate the grade "by feel" (by how hard it is to cycle up), or by memory (by knowing this road is a Strava segment, and what it's average grade is)


On an Android phone, load 'Leveler' by chkuentz, an excellent, free level app that puts out degrees of slope directly. Use the formula, tan(degrees)= percent grade. Example: tangent of 3 degrees = 0.052, or 5.2 percent. Either lay your phone on it's side edge, on the road surface, or on your to bar, if it's level with the road. Read off the degrees then covert. Not elegant, but it's cheap and fairly accurate.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.