Metrics
Why Today's Users and Realtime Users Are Different
Updated 2026-09-043 min read
Short answer
Today counts distinct users since midnight in the property's own timezone. Realtime counts users active in a recent window, currently the last 30 minutes. They measure different spans, so they almost never match.
Seeing "3 users right now" and "128 users today" on the same screen looks like a contradiction until you notice they are answering different questions. Neither is a subset of the other in the way you might assume.
The two windows
| Metric | Window | Answers |
|---|---|---|
| Today | Since midnight, still running | How many people have used the app so far today? |
| Realtime | The last 30 minutes | How many are using it around now? |
Because today is still in progress, it grows through the day and resets at midnight. Realtime rises and falls continuously and has no memory of this morning.
Four reasons they disagree
1. Different spans
The obvious one. Someone who used the app at 9am counts towards today at 4pm but is long gone from a 30-minute realtime window. For most apps, today is much larger than realtime for most of the day.
2. Timezone
Midnight is not a global instant. GA4 applies the day boundary in the property's own configured timezone, so an app whose property is set to one region rolls over at a different moment than your local clock does. Two properties configured to different timezones will roll over hours apart from one another.
Note: This surprises people most just after their own midnight, when today looks like it has reset early or has not reset yet. Check the timezone on the property before assuming the number is wrong.
3. Different processing
Realtime and the standard reports are produced by different pipelines. Realtime is optimised for immediacy, the standard reports for completeness. A figure that has not finished processing can move after you first read it, which means today can change slightly in retrospect while realtime never does.
4. Deduplication across apps
If you are looking at a total across several properties, the same person using two of your apps is counted in each. Neither today nor realtime reconciles identity across separate properties, so a combined figure overstates unique humans — and it does so by a different amount in each window.
Careful: Do not compute a ratio between realtime and today and treat it as an engagement measure. The two numbers have different denominators, different processing, and — across properties — different amounts of double counting.
How Appnaly handles this
Appnaly shows both because both are useful, and labels each with its window rather than presenting a single "users" figure. The live figures are marked as covering the last 30 minutes, and the finished windows — yesterday, the last seven days, the last thirty — are labelled as completed periods so it is clear which numbers can still move.
Where several properties are summed, Appnaly states that users are not deduplicated between them. It also keeps the live map count and the live user count separate, because they come from different queries against Google and can differ slightly — reporting them as one number would hide a real discrepancy rather than resolve it.
The practical reading: use realtime to answer "is anything happening right now", and the completed windows to answer "is this app growing". Asking either question of the other metric produces confusion rather than insight.