Smartphones use a combination of sensors to estimate current position, depending on its availability. Specifically:
- Cellular networks
MOCA SDK does not use GPS directly, as this is a high battery consuming resource and it does not work indoors. MOCA relies on other systems that modern phones provide for location.
This is is the main source of data that mobile devices use to calculate their position. Error margin is about 20 - 50 meters (65 -165 feet) radius, and is both very fast and battery friendly.
This technique does not require the device to be connected to a Wi-Fi network: by having the Wi-Fi chip enabled, modern mobile phones are able to fetch nearby Wi-Fi networks and estimate their position by checking the database of locations of each network and calculating the signal strength drop (RSSI).
In locations where there are no Wi-Fi networks (e.g. rural areas), mobile devices rely on information relative to the nearby cell towers to determine its position. This is a battery friendly method, but it is of low precision. For example in Android:
- When Wi-Fi location is not available (for example, when you are driving in rural areas) the location accuracy degrades. The accuracy range can be as large as several hundred meters to several kilometers. In cases like this, you should create geofences using a larger radius to compensate for device location inaccuracy.
So the MOCA recommendation to maximize detections in your Geofences in order to increase the audience of your campaign is to take into consideration if it has high WiFi network density (city center), low WiFi network density (suburban or factory areas) or zero WiFi network density (rural/outback areas). With this understanding, set the Geofence Radius to take into account the accuracy average of your users as our system will not trigger a campaign if a user could be outside of the Geofence Radius.