> For the complete documentation index, see [llms.txt](https://docs.devtodev.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.devtodev.com/faq/all-about-data-discrepancies.md).

# All about data discrepancies

devtodev data does not always match the data from app stores or other systems; therefore, the metric values may differ. Here are some possible cases where data may differ.

## App installs

1. There is a significant difference between installing an app and actually opening it, but these two metrics are often confused. \
   An **install** – is the downloading of the app and installing it, while **opening the app** – is the first launch of the app on your device. To analyze the number of installs in devtodev, you can use the [Market Downloads metric](/metrics-and-glossary/market-metrics.md).
2. The devtodev SDK only starts when the app is first opened (essentially, it needs to be activated by the user). Once the SDK is fired for the first time, it sends a signal to our servers, letting us know that a new install has occurred. So we get to know about an app install on a new device only when the SDK reports it.

This can also influence the time of installation because devtodev considers an install to be the first launch, while the platform (Google/Apple, etc.) considers the time of download from the store.

In devtodev, the number of new users does not equal the number of downloads from the stores. Make sure that you compare the number of installs with the number of installs, not the number of openings with the number of installs.

## **Installs based on user and device data**

App stores calculate installs by drawing information from user accounts and devices.&#x20;

In the Play Console, for example, Installs by user is the number of unique users who installed the app for the first time (based on store user accounts).&#x20;

In the App Store, it is the total number of times your app has been installed on devices with iOS 8 or tvOS 9, or later. Redownloads on the same device, downloads to multiple devices, sharing the same Apple ID, and Family Sharing installations are included.&#x20;

devtodev calculates installs based on a [unique device ID](/faq/identification.md). As a result, if some of the users change their unique IDs, the user count in devtodev may be higher than in other systems.

## **User geolocation**

App stores base their data on the geolocation of the store’s account, while devtodev identifies the IP address.&#x20;

Let’s say there is a user with a UK account, but they are currently located in the US. The stores will consider all installs from the account as if they were made in the UK, but devtodev will identify them as American on the user card.&#x20;

Therefore, there are some differences between the two platforms in terms of install time and user geolocation.

## **User time zone**

Platforms may differ in how they handle time zones. It is better to agree on a universal standard to avoid data discrepancies. In devtodev, you can change the time zone using the [Space settings](/space-management.md#general).&#x20;

<figure><img src="https://2105883905-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LnGcP_ZeRJ1ipj9O8dF%2Fuploads%2FT3qO6YOfcZzYG9wSraIp%2Ftimezone.png?alt=media&amp;token=db1f0890-8d8b-4cd4-9b39-aecfa5aa7be7" alt=""><figcaption></figcaption></figure>

## **Installs from third-party sources**

If your app (an APK file with integrated devtodev SDK) is available not only on the stores but also from third-party sources like forums, etc., devtodev will take these installs into account, while the stores will not.

## **Motivated traffic: ad ID reset**

If you run campaigns using motivated traffic, some of your users may engage in fraud to be rewarded. They often reset their ad IDs and reinstall the app. After they receive a new ID, devtodev will consider them as new installs. The stores ignore the duplicate installs.

## **Fraudulent in-app purchases**

In case you compare income data from the stores and devtodev and find out that they do not match, you can try using [devtodev’s anti-cheat method](/integration/expert-tips/payments-and-anti-cheat.md) that validates all transactions and only the validated ones get passed to the analytics system.

A problem may occur if the app gets hacked and users start making in-app purchases for free. Purchase queries of this kind are not sent to Google Play or the Apple Store.

## **App update**

Some users install the app without the devtodev SDK, and that may cause a discrepancy. After they update the app, they will be added to our system as new users.&#x20;

The stores see it as a routine app update because the app was installed before the integration with devtodev. While in the devtodev statistics, you may see a spike immediately after the update, but later it will improve, and the data will become more accurate.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.devtodev.com/faq/all-about-data-discrepancies.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
