1. A method comprising: by one or more computing devices, receiving, from each of a plurality of mobile computing devices associated with a plurality of users, a plurality of data sets that each comprise data identifying: the user that the data set corresponds to; one or more locations where the user was or is at; and for each of the locations, a time when the user was or is at the location; by one or more computing devices, generating one or more statistics based at least in part on one or more of the data sets, wherein the statistics represent behavioral patterns of one or more of the users; by one or more computing devices, generating a recommendation for a particular user based at least in part on one or more of the statistics; and by one or more computing devices, sending the recommendation to the particular user.