1. A method of delivering directions to a mobile device, the method comprising: communicating with the mobile device over a communications network; in response to a request from the mobile device for directions, determining a list of turn-by-turn directions to a location based on content relating to the location to be transmitted to the mobile device; determining an optimization constraint associated with at least one of the mobile device and the request; determining optional selectable content to include with the directions to be transmitted to the mobile device based on at least the optimization constraint; and transmitting the list of turn-by-turn directions to the mobile device.