1. A computer implemented method comprising: receiving, at a social networking system, a location query from a user of the social networking system, the location query having one or more attributes; accessing a user profile associated with the user in the social networking system, the user profile describing characteristics of the user and other users of the social networking system connected to the user; accessing location data stored by the social networking system, the location data identifying a plurality of locations; comparing the one or more attributes of the location query to one or more attributes of each of the plurality of locations; selecting one or more candidate locations from the locations, each candidate location having at least one attribute matching an attribute of the location query; ranking the selected candidate locations based on data from the user profile associated with the user; and selecting a subset of the selected candidate locations for presentation to the user based on the ranking; and presenting the subset of the selected candidate locations to the user.