1. A non-transitory computer-readable medium embodying a program executable in a computing device, comprising: code that obtains check-in data identifying a plurality of personal points of interest each associated with a respective one of a plurality of users, each of the personal points of interest specifying a respective name, a respective geographic location, and a respective time associated with a visit to the respective geographic location, at least one of the personal points of interest being generated by a check-in application executed in a mobile computing device; code that determines a plurality of different public points of interest, each of the different public points of interest being determined based at least in part on external data, a measure of similarity of the respective names of a respective subset of the personal points of interest meeting a similarity threshold, a measure of proximity of the respective geographic locations of the respective subset of the personal points of interest meeting a first proximity threshold, and a number of different users associated with the respective subset of the personal points of interest meeting a quantity threshold; and code that infers a composite public point of interest from the different public points of interest based at least in part on a measure of proximity of corresponding representative geographic locations for the different public points of interest meeting a second proximity threshold.