deadsea - 7:03 pm on Mar 25, 2011 (gmt 0)
Google webmaster tools now gives you bulk data an what your site is ranking for. Go to webmaster tools -> "your site on the web" -> "search queries" -> "download this table". I get a spreadsheet with thousands of search phrases that includes average rank. You can even use the "Filters..." to restrict it to a specific country, search type, or substring match.
If you were willing to download this once a week, you could keep track over time pretty easily. I don't know if there is a programmatic way to log in and get this data automatically.
The rank data looks pretty good to me, but it does have a couple problems:
1. It isn't accounting for SEM ads or Google placements (map, images, currency, etc) that show up above the organic results.
2. We rank #1, #2, AND #3 for our brand name. It reports the average rank as 2.1. It would be far more useful for them to report average rank for my best slot (which in this case would be very close to 1).