I suspect it's a mixture of ones which are calculated on the fly from the data in the database at the time (which would be close to real-time) and ones based on the profile statistics (which would probably work the way you suggested). It would depend on whether there are any complex calculations needed. "Top finders" would be very easy to generate based on a simple SQL query, so would most likely be done on the fly. "Top caching streaks" would be more likely to be the other sort.