Google Maps Elevation Web Service
code.google.com
code.google.com
Other issue is the accuracy: I am not sure the base DEM resolution they are using, but my guess is it's the standard 10meter spacing between points inside US and territories, and 30meters outside. 10meter grid spacing isn't bad at all, it's actually pretty good, but their algorithm for interpolating is non-existent. For any point not directly on a grid point, they just average the four surrounding elevations and return that. I have played with several interpolation schemes, and I have found either a bilinear or a cubic interpolation for interior points to be vastly superior to a nearest neighbor or averaging scheme. Differences can be easily up to 10 meters for a 10meter grid spacing.
I had been hoping they'd release this, but I'll stick to my home-brewed service with the 500gig NED at 10 meter resolution (1/3 arcsecond). No API limits :)
so you only get 10-20 of such routes before hitting your daily limit.
Not true, from the usage docs: Up to 1,024 locations may be queried within a single request.
So that's really a theoretical max of 25,600,000 locations per day if you maxed out every request.
"Note that on any given query, you may request elevation data for multiple locations, which count as separate queries."
Approximate! No need to do a lot of requests for flat land!
Though if you're somewhere very hilly (ahem Pittsburgh) it appears that slight issues with the GPS track will throw in a lot of extraneous elevation data.