I just noticed a local restaurant has a score of 3.9 with 16 reviews, but if you click in to read the reviews there are actually 19 of them. The average is actually 3.47, so it seems they did not count three of the 1-star reviews towards the rating.
My first though was that there might be newer reviews that didn't get counted yet, but this is not the case. The newest review is 3 months old, and after I added a review the count went up to 17 but the rating didn't update.
How does Google decide which ones to not include in the average rating, if this is actually what they are doing?
UPDATE:
If I sort the reviews from oldest to newest, they now show only 16 reviews. I also included a running average:
SCORE AVERAGE
Oldest 1 1.00
2 1.50
5 2.67
5 3.25
5 3.60
4 3.67
2 3.43
5 3.63
5 3.78
1 3.50
5 3.64
4 3.67
1 3.46
5 3.57
5 3.67
Newest 4 3.69
As you can see, at no point did the average ever get up to 3.9, so the idea that the average calculation is stale is out. Perhaps it has something to do with the missing 3 reviews (went from 19 to 16)? But the real average went UP since it was showing 19 reviews, which means the missing 3 were below the average and can't explain the 3.9 score either.