All data in the Localytics dashboard comes from a user’s device. This data goes through our sophisticated data processing pipeline. Understanding how data transmission and processing will work helps you interpret your data.
Localytics is added to your app to collect data when certain events take place. As mentioned above, the Localytics SDK automatically detects Session Start and Session Close. On top of that, your developers can insert Event tags to make Localytics aware of custom behaviors in your app.
Initially, these records are stored locally on the end user’s device. The device then periodically uploads data to Localytics. For each of these, Localytics creates a time-stamped record.
If your app uses the default setup, Localytics includes automatic instructions to upload data at the end of every Session. If your app includes custom setup, your developers are responsible for inserting upload commands to instruct Localytics when to transmit the data to our servers.
Once data is transmitted, it proceeds through our data processing pipeline. You’ll see the data in the Localytics Dashboard within about 10 minutes—though sometimes less!
It’s important to note that data processing is different if the device is functioning offline. This is also going to be the case if the device can’t complete upload dude to idiosyncratic conditions like network speed or the user force-closing the app.
The Localytics SDK tracks offline behavior and stores records locally on the device, then uploads the data at the next available opportunity (generally the next time the user opens the app while connected).
Each tracked behavior is timestamped according to when it originally occurred—not when the data was uploaded. This means that you may observe historical counts increase slightly as offline-generated data is received.