Life 360 app - cell phone forensics
- rich4285
- Jul 22
- 6 min read

Life 360 is a location tracking application that runs on a cell phone. Family members can share their location with each other. It can also keep track of items such as keys, laptop computers, backpacks, and other items using tracker tiles.
All apps that use location, including Life 360, obtain the location information through the Application Programming Interface (API) of the phone’s operating system. The API is a specification that allows communication between apps that run on the device and the phone’s operating system. The Life 360 app does not calculate the location of the phone. It relies on other software and hardware in the phone to determine the location which it requests and obtains through the API. Its website says it calculates the speed of each segment between two provided location points.
The phone determines its location from several sources: GPS, Wi-Fi access points, cell tower triangulation and internal sensors. If GPS is available it uses its location. If not it resorts to Wi-Fi and tower triangulation enhanced with internal sensors. The Life 360 app does not record which method was used. Also, we do not have any error data on the locations and speeds provided by Life360 app.
However, if you extract the Life 360 data through a phone extraction you can obtain much more information than what their app reports. I will dig into this deeper but first some explanation on the different location methods in the cell phone.
GPS Location
GPS is the most accurate of the three location methods, but it does have limitations. It can be affected by multipath environments, where signals bounce off obstacles such as buildings or terrain, potentially causing errors in location estimation. Additionally, GPS does not perform well indoors or in areas without a clear line of sight to satellites.
GPS operates using a network of satellites that continuously transmit signals to receivers inside cell phones. When a phone is powered on, it retrieves the GPS almanac, which contains positioning data for all satellites. Using this information, the device locks onto multiple satellites and triangulates their signals to estimate the phone’s location.
For a phone to establish its position, it must lock onto at least three satellites. The more satellites it connects to—and the stronger the signals—the more accurate the location estimate will be.
If a phone cannot connect to at least three satellites, it is unable to determine its precise GPS location. When this happens, it relies on alternative methods such as Wi-Fi positioning or cell tower triangulation.
Wi-Fi Location
For Wi-Fi-based location tracking, the phone must have Wi-Fi enabled. Wi-Fi positioning works by continuously scanning nearby Wi-Fi access points and measuring signal strength as the phone moves. The phone then compares this data to Apple’s or Google’s Wi-Fi access point database, which contains MAC addresses (unique identifiers) and geographic locations of the access points collected through various sources.
Once the phone detects and logs the MAC ID and signal strengths of the surrounding access points, Apple/Google cross-references this information against its database to estimate the phone's position. While this method can sometimes provide accurate location data, its reliability varies based on:
The accuracy of the Wi-Fi database
The density of Wi-Fi access points in the area
The algorithms used to calculate position
Since Apple’s and Google’s exact location algorithms are proprietary and not publicly disclosed, independent verification of their accuracy is impossible. As a result, Wi-Fi-based positioning can range from precise to highly inaccurate, depending on environmental conditions and database integrity.
Cell Tower Triangulation
If Wi-Fi is unavailable or disabled and there is no GPS signal, the phone falls back on cell tower triangulation enhanced with internal sensors to estimate its location. This is typically the least accurate of the three methods, and in the worst case, the phone's location may simply be mapped to the nearest tower, potentially miles away.
How Cell Tower Triangulation Works:
Signal Strength Measurement – The phone communicates with at least three towers and assesses the signal strength.
Time Delay Calculation – It measures how long signals take to travel to and from each tower.
Distance Estimation – Lower signal strength and longer travel times indicate the phone is farther from a given tower.
Triangulation – The system estimates location by intersecting distance circles from multiple towers.
Why This Method Is Inaccurate:
Radio Wave Behavior – Unlike lasers, radio waves do not travel in straight lines. They disperse broadly, bounce off obstacles, pass through trees, and are often blocked.
Signal Distortion – Reflections, interference, and environmental barriers introduce errors.
Proprietary Algorithms – The triangulation algorithms are confidential, making independent verification impossible.
Because of these challenges, cell tower triangulation often provides only a generalized location rather than a precise one.
Sensors
The phone uses sensors to assist with location including accelerometers, gyroscope, magnetometers, and barometers. The accelerometer detects acceleration which can assist with direction and speed. The gyroscope measures rotation and orientation. The magnetometer functions as a compass assisting with heading direction. The barometer detects altitude changes for elevation changes.
I was unable to find documentation on exactly how or when these sensors are implemented and it is not clear how they assist in providing locations or when they are implemented in the internal algorithms. These sensors must be highly calibrated and all have errors associated with them. They are not solely used for location. Other applications such as gaming, fall detection and health apps use information from them which do not typically require location data.
Life 360 Location
Since the Life 360 app does not indicate how the location was determined we cannot determine its accuracy from the app, thus we cannot determine the accuracy of the speed determination.
The following is from the Life 360 webpage – Driving Speed & Accuracy
“We strive to provide reasonably accurate speed information in the Life360 app, however, accuracy is determined in large part by the quality of your service and your device. Due to this, it is possible that some points during your trip might be missed or speeds captured may be inaccurate.
For example, the app could show a trip from point A to point B happening in a shorter time, which could lead to a higher speed reading than the actual driving speed.”
The following is from their technical support.
“Life360 calculates driving speed using GPS data from your device. The app analyzes the time and location data to determine speed. Factors like network connection and device settings can affect accuracy.”
Life360 says it does not directly retrieve speed from the phone. Instead, it calculates speed by measuring the time taken to move between two recorded locations.
Phone Extracted Data
I purchased one month of Life 360 Gold Service and loaded it on two of my rooted Android phones. During the drive, I evaluated multiple real-time features. I turned Wi-Fi on and off and viewed the phone’s speed and location with both phones.
Connecting my rooted phone to my PC I was able to extract a file called L360EverntStore_service.db. Using DB Browser I was able to view the event table in this database. Below is the data for one record in this table.
"allowList": [],
"driveStrategy15SecFreq": true,
"driverAnalysisState": "driverAnalysisState",
"id": "470d8941-58ca-4442-abab-9a5f1555d57a",
"isDriveActive": true,
"isDriverAnalysisStateSet": true,
"isLocationClusteringEnabled": true,
"lmode": "srt",
"locationData": {
"altitude": -22.16833933193275,
"bearing": 335.1445,
"course": 335.1445,
"courseAccuracy": 11.82986,
"elapsedRealtimeNanos": 281440169026000,
"horizontalAccuracy": 19.652,
"latitude": 26.2344587,
"locationProvider": "fused",
"longitude": -81.7867309,
"speed": 2.167185,
"speedAccuracy": 0.4883029,
"time": 1747679959317,
"verticalAccuracy": 3.4776878
},
"metaData": {
"battery": 100,
"chargingState": false,
"driveSDKStatus": "DISABLED",
"lmode": "srt",
"wifiData": {
"connectedAccessPoint": null,
"isEnabled": false
}
},
"metric": null,
"rtsWindowIndex": 0,
"shouldWifiInfoBeAdded": true,
"strategyStartTime": 1747679926514,
"structuredLog": null,
"tag": "BLE",
"timestamp": 1747679959494
As you can see, much more detail is provided in this database file than what the Life 360 app displays and records. The speed appears to be reported by the phone, not calculated by the Life 360 app, according to tests on several points. I’m not sure why the Life 360 app calculates its own speed based on the location points when it can use the speed that is provided by the phone.
The "locationProvider": "fused" parameter indicates the source of the location information. Fused means it does not know which location source in the phone is being used (i.e. GPS, Wi-Fi, etc).
The file contains accuracy information that is not available within the application. This makes sense as the app is targeted towards the general location of family members and not for use in network testing for example. But the accuracy data is there so one could infer the location source from the accuracy. For example, we expect a higher level of accuracy from GPS as opposed to tower triangulation.
Conclusion
According to its website the Life 360 app does not calculate the locations; it obtains them from the phone.
It does not record the location technology used to estimate location (GPS, Wi-Fi. Triangulation).
It does record horizontal, vertical and speed accuracy but does not provide this data in the app.
This data can be useful from a forensic point of view for identifying location, however it is still subject to the location algorithms in the phone.
Σχόλια