1. A ride matching system, comprising: a processor; and a non-transitory computer readable storage medium comprising computer instructions that, when executed by the processor, cause the ride matching system to: determining a typical route of a driver, wherein the typical route comprises a home location, a work location, and a typical route time; receiving, from a driver computing device associated with the driver, an indication that the driver has begun the typical route from the home location; based on receiving the indication, make the driver available within the ride matching system; receive a request for a ride from a user computing device, wherein the request includes a request location and a destination location; determine a route for the request based on the request location and the destination location; in response to receiving the request for the ride, determine a compatibility between the typical route of the driver and the route for the request; determine a ranked list of available drivers, wherein a position of the driver on the ranked list is based at least in part on the compatibility; and provide the request for the ride to the driver computing device associated with the driver based at least in part on the ranked list of available drivers.