I'm pretty sure Google Maps and a plethora of other applications on the App Store simply use the MUNI schedules (http://www.sfmta.com/cms/mroutes/schedules.htm) for the purposes of "time prediction." Since buses in SF are basically never time due to many reasons (traffic, accidents, once I was on a bus where the trainee who was driving took the wrong exit on the way to Daly City BART and the actual Muni driver on the bus had to take over the wheel) the predictions are never accurate.
The only app that has done me right is Transporter, and I'm pretty sure it scrapes Nextbus or some other service for time predictions.
The only app that has done me right is Transporter, and I'm pretty sure it scrapes Nextbus or some other service for time predictions.