A non-transitory computer-readable medium having stored thereon instructions that, when executed by a processor, causes the processor to perform a method of providing connection source recommendations using a database of historic data on connectivity comprising:
- receiving, by a processor, location information and connection information from each of a plurality of mobile devices, the plurality of mobile devices including a first mobile device,
- the location information from each of the mobile devices identifying a location of each of the mobile devices, respectively,
- the connection information from each of the mobile devices identifying one of a plurality of connection sources as a preferred connection source used to identify the location of each of the mobile devices, respectively, wherein the one of a plurality of connection sources is Global Position Satellite (GPS), a cell tower, or a WiFi access point;
- and
- storing by the processor, in the database, the location information and the connection information, wherein the database includes a plurality of location information and a history of connection information for each location information.