A system comprising: a map database that stores map data defining a map; a map server in communication with the map database that receives a request for presentation of an interactive map from a user device (106, 204) that visually depicts a particular geographic location, and selects a map space for presentation in a user interface (110, 206, 222) on the user device, the map space including the particular geographic location; and one or more servers that identify multiple points of interest having geographic locations that are located within a geographic region that is visually depicted by the selected map space and generate an overlay that dynamically presents, at the client device, one or more visual components at geographic locations of at least some of the identified points of interest within the map space based on display characteristics of the client device, including: ranking the identified multiple points of interest based on a likelihood of interaction with each of the visual components representing the points of interest; generating an overlay that prevents a number of visual components presented for the identified points of interest from exceeding a point of interest density threshold that is mapped to display characteristics of the client device in a data structure, wherein different point of interest density thresholds are mapped to different combinations of display characteristics in the data structure, wherein the point of interest density threshold is used to limit the number of points of interest that is pre-cached at the client device; and generating an overlay that dynamically changes, based on the ranking, which points of interest are identified by presented visual components in response to user interaction with the interactive map at the client device. a map database that stores map data defining a map; a map server in communication with the map database that receives a request for presentation of an interactive map from a user device (106, 204) that visually depicts a particular geographic location, and selects a map space for presentation in a user interface (110, 206, 222) on the user device, the map space including the particular geographic location; and one or more servers that identify multiple points of interest having geographic locations that are located within a geographic region that is visually depicted by the selected map space and generate an overlay that dynamically presents, at the client device, one or more visual components at geographic locations of at least some of the identified points of interest within the map space based on display characteristics of the client device, including: ranking the identified multiple points of interest based on a likelihood of interaction with each of the visual components representing the points of interest; generating an overlay that prevents a number of visual components presented for the identified points of interest from exceeding a point of interest density threshold that is mapped to display characteristics of the client device in a data structure, wherein different point of interest density thresholds are mapped to different combinations of display characteristics in the data structure, wherein the point of interest density threshold is used to limit the number of points of interest that is pre-cached at the client device; and generating an overlay that dynamically changes, based on the ranking, which points of interest are identified by presented visual components in response to user interaction with the interactive map at the client device. ranking the identified multiple points of interest based on a likelihood of interaction with each of the visual components representing the points of interest; generating an overlay that prevents a number of visual components presented for the identified points of interest from exceeding a point of interest density threshold that is mapped to display characteristics of the client device in a data structure, wherein different point of interest density thresholds are mapped to different combinations of display characteristics in the data structure, wherein the point of interest density threshold is used to limit the number of points of interest that is pre-cached at the client device; and generating an overlay that dynamically changes, based on the ranking, which points of interest are identified by presented visual components in response to user interaction with the interactive map at the client device.