1. A method comprising: by one or more computing devices, accessing a contacts list comprising one or more contacts in an address book of a first user; by one or more computing devices, accessing a data store for existing social-graph information between each contact in the contacts list and the first user; by one or more computing devices, accessing communication-history information for each contact in the contacts list, the communication-history information for a contact indicating a frequency of communication between the first user and the contact; by one or more computing devices, determining a social-proximity score for each contact in the contacts list based at least in part on the social-graph information, communication-history information, and one or more user-declared relationship types between the first user and other contacts of the contacts list, each social-proximity score assessing an affinity between the contact and the first user; by one or more computing devices, sending the social-proximity scores for the contacts in the contacts list to a client device associated with the first user, wherein a ranked list of the contacts displayed on the client device is determined based at least in part on the social-proximity scores.