Actually, Google bases at least some of the time on actual data. Everyone using an Android phone or Google apps while connected to the internet is sending data back to Google. This is how the slow areas are identified. Google sees a bunch of devices in the area moving more slowly than normal. In some cases, Google compares to the actual speed limit, but does not have speed limit data for many roads. If I check the time to Atlanta, for example, at different times it shows different time estimates, due to road destruction, accidents, traffic, etc. As you drive, Google takes some of these things into account.