I thought Garmin used a combination of highly sophisticated algorithms, highly detailed 3D mapping software, paired with super accurate GPS readings and then just guessed?
Take what any gps records regarding altitude with a pinch of salt. The same type of device riding the same route can come up with different numbers.
My experience (Edge 810) is that the same route can produce wildly differing readings. On one route last summer I managed to cycle along for several miles at well below sea level. However today I've cycled the same road and Garmin assures me that it's 185m above sea level.
The internet (checking OS data) suggests it's actually 10m above sea level.
I'm going to assume that the OS is closer to the mark.
EDIT: just checked and my Edge 810 gives an elevation gain today of 514m. My mate (who was out on exactly the same ride with me) has a figure of 606m elevation gain recorded on his Edge 25.
