Welcome! Note that this article is several years old. Please excuse me for pointing out things that are more obvious now... like how to plot a route on Google Maps :) The GPSVisualizer tip partway through the article is still good and I use it regularly.
This isn't anything I've made, but it's a cool combination of tools I came across for mapping running and biking routes and finding their elevation profiles.
Google Maps introduced a very cool "routes" feature a while back that allows you to find directions between two points, and drag that route around to find alternate routes. You can add intermediate destinations or "node" points along the route. I've been finding distances of potential biking routes by simply using Google Maps.
Once at the Google Maps website, right-click at the starting point of your route and choose "Directions from Here". Follow your route to major intersection, and right-click on the map again and choose "Directions To Here". Google Maps will automatically fill in a suggested route. If you don't like it, click and drag it until it's the route you'd like to take between those two points.
After this, find another point along your route and choose "Add Destination". Again, adjust the route if you want. Google will usually choose the most direct driving route from point to point. Keep adding more destinations until you're at the finish!
Usually you can map a lengthy run with 5-10 destinations. This is MUCH quicker than using route mapping tools like the USATF running route tool, where it draws a straight line between each point you click on the map. The drawback is that routes are more limited to roads, so this would be pointless on a trail route.
So now you have a nice running or cycling route, with accurate distance. Now, directly above the map, you'll see the words "Print, Send, Link" in the blue bar. Click "Link" and copy the email/IM link given. Head over to http://www.gpsvisualizer.com and click "Draw a profile" in the top menu.
Find the box that says "Or provide the URL of Data on the Web" at bottom right of the page. Paste your map link here. This site will generate an elevation profile graph of the route.
It only takes a few minutes to do this. I might consider working something like this into a future version of TrueGoal.