How does Swrve calculate new user counts?
This article covers frequently asked questions about new user counts.
What does Swrve consider a new user?
Swrve calculates new users by taking all of the event data for a given day and counting those users who were not already active. Swrve also calculates new users on an hourly and monthly basis, available via the Swrve Export API.
The New Users KPI is available as part of Trend Reports.
How does Swrve count new users?
Swrve counts users by the unique ID that is used to initialize the Swrve SDK, or from any source such as a server-side implementation. By default, Swrve counts users per unique ID, on a per device level, unless you are using a custom user ID.
Why isn’t Swrve counting all of my new users?
Some reasons Swrve may not count new users are:
- Swrve does not count a user until the SDK is initialized. It is possible the app waits until the user has logged in before initializing Swrve. In that case, users who never log in are not counted by Swrve.
- Remember that app downloads and new users are not the same thing. If a user downloads the app, but never opens it, Swrve is not informed about them and they are not counted as a new user. The user must open the app for Swrve to receive data.
- Ensure that Swrve is integrated in the app version that you are viewing user counts for.
Why is Swrve reporting too many new users?
Essentially, too many new users in Swrve is caused by too many unique user IDs. New user count is calculated based on how many new user IDs Swrve receives on a given day. This number can be impacted by a few things:
- Changing the user ID – This can highly skew the numbers of users in the app compared to the number of app installs. For example, this can happen if a user can start to use the app before logging in. Sometimes this is indicated in the Swrve user DBs if the format of the user ID changes. If you re-initialize the Swrve SDK with a different ID, Swrve treats this as a new user. This issue can also appear if the user ID changes on every new session.
- Multiple devices – By default, in Swrve each device on which a user downloads the app is considered an individual user. If a user installs the app on multiple devices, there will be multiple Swrve users. If your app has a custom ID to identify the user, we recommend sending this as a custom property instead.
- Reinstalls – It is possible that users have uninstalled and reinstalled the app. This counts as multiple new users if the default Swrve ID is used.
- User attribution – That is, using the incorrect ID and without a user_initiated=false flag. Data that is sent to Swrve from an attribution third party needs to use the Swrve user ID. If for some reason this is not sent correctly, for example, sent with their own ID, Swrve generates a user in the database, and if the event also isn’t sent with a user_initiated=false flag, it counts towards the new user KPI.
- Third party installs – Typically a concern for popular titles, Swrve may show a higher count of installs than the app store, as bootlegged or hacked versions of the app still send us data. If the other details are ruled out, this could be a valid reason.
- Multiple analytics providers – If you are comparing reporting to another analytics tool, there may be versions of the app where Swrve and the other analytics were not integrated at the same time, resulting in conflicting numbers, or scenarios in which the analytics tool cannot track the user. By default, Swrve tracks all users with a randomly generated ID, but this may not be the case with other third parties.
- Server-side implementation – In some instances, your app might need to update the attributes of a user when that user isn’t using the app. An example of this would be where the app server sets a referral code on a set of users as a nightly process. Since the user has not actively initiated these events, the events should not necessarily contribute to certain performance indicators, such as a count of the Daily Active Users (DAU) or the Monthly Active Users (MAU). To handle these cases, you can set an optional parameter user_initiated to the value false. If this parameter is present and has the value false, then this user update event does not count towards these metrics. Ensure that you use the correct user ID to avoid creating a new Swrve user.