IIRC there's a setting buried in the web interface for my Garmin 800 that lets me select the barometric (on-device) elevation gain over the on-line mapped gain. Are you using the barometric data? It's possible, depending on the route, that the on-line will miss the fact that a road goes through a cut or over a fill, and credit you with climbing all sorts of contour lines.