GA4 realtime and the standard reports disagree. Both are right.
•5 min read
Realtime covers the last 30 minutes and never settles. Standard reports cover a date range in the property's time zone and keep changing until processing finishes. Neither is the corrected version of the other.
GA4 realtime and the standard reports disagree because they measure different things over different windows, not because one of them is wrong. Realtime answers how many people are active on the site in the last thirty minutes. A standard report answers how many sessions, users or events a date range contained, after that range has been processed. Neither number is the corrected version of the other, and reconciling them to the unit is not a goal worth spending an afternoon on.
30 minutesThe window a GA4 realtime reading covers; every figure on it is about people active inside that window
Four reasons the two numbers differ
The first reason is the window. Realtime is a rolling half hour that moves continuously and never closes; a standard report covers whole days in the property's reporting time zone. "Today" in a report begins at midnight where the property says it lives, which may be several hours away from where the person reading it lives, so a morning comparison is often comparing part of one day with part of another.
The second is what is being counted. A realtime figure is a count of people currently active. A standard report offers sessions, total users and events, which are three different things with three different definitions, and none of them is "people here now". Comparing an active-user count against a session count is comparing a snapshot against an accumulation.
The third is processing. Standard reports are built from data that has been collected, attributed and aggregated, and that work is not instant. A figure for today read at noon and the same figure read the next morning are two different figures, both correct at the time they were read. This is why a report that has just been refreshed is not evidence that a number changed; it is evidence that processing continued.
The fourth is what the property has been configured to do with its data. Filters, definitions and settings applied at the property level shape what appears in reports. A visit that a report excludes may still have been active traffic on the site while it was happening, so a card counting activity and a report counting qualifying sessions can both be describing the same person and disagreeing about whether to count them.
The two GA4 surfaces, and the question each one is built to answer.
A consent banner changes what GA4 can measure, and the reports carry no marker saying so. What the seven consent types cover, what basic and advanced consent mode each do when someone declines, and how to read numbers collected under either.
Market4 turns one release note into a changelog page, a blog post, a mail-out and a week of social posts — and then tells you which of them brought anyone back.
No card to start. Cancel from the settings screen, not from an email.
A third disagreement: a live report against a stored one
There is a third pair of numbers that can disagree, and it catches people who thought they had only two. A reporting tool that queries GA4 live gives you what Google says now; the same tool reading its own stored snapshot series gives you what Google said when the snapshot was taken. Both are useful, and they answer different questions: the stored series survives retention windows and works without a live connection, while the live query reflects any processing that has happened since.
Market4's traffic read defaults to a live GA4 report and can be switched to the stored snapshot series instead, and the result always states which of the two it came from. That last part is the part worth copying. A number without its provenance invites exactly the reconciliation exercise this post is about.
When each one is the right thing to look at
Use realtime to confirm that something is arriving: a tag you just installed, a page you just published, a link you just posted. It answers "is anything happening", quickly.
Use realtime to check a change end to end. If a new event does not appear within a few minutes of you firing it, the problem is upstream of reporting.
Use standard reports for every decision. A rolling half hour cannot show a trend, and no decision worth making rests on thirty minutes of traffic.
Do not read today's report as final. Compare completed days with completed days, and let the most recent one settle before quoting it.
Say which surface a number came from when you share it. Half the disagreements in an analytics conversation are two people quoting different windows.
The underlying point is that analytics tools answer the question they were built for, and the mismatch between two of them is usually a mismatch between two questions. A realtime card exists so a person can watch something work. A report exists so a person can decide what to do next month. Asking either one to validate the other produces an afternoon of arithmetic and no decision at the end of it.
Why does GA4 realtime show visitors when the report shows none?
Because realtime covers the last thirty minutes and a standard report covers processed days in the property's reporting time zone. Traffic arriving now sits inside the realtime window and has not yet been processed into a report, and if the property's day has not started or has just ended in its own time zone, the report may legitimately be describing a different span of time entirely.
How long does GA4 take to show data in standard reports?
Longer than realtime and not instantly, which is why a figure for the current day keeps changing as it is re-read. There is no single number to quote, because processing time varies with the property and the report. The practical rule is to compare completed days against completed days and to treat today's figure as provisional until it stops moving.
Should I trust realtime or the standard report?
Both, for different questions. Realtime tells you whether traffic and events are arriving right now, which is what you need when checking that a tag or a new page works. Standard reports tell you what a period contained after processing, which is what every decision needs. Treating either as the authoritative version of the other is the mistake, not choosing the wrong one.
Can I make GA4 realtime and standard reports match?
Not exactly, and it is not a defect. The two use different windows, count different things and are produced at different stages of processing. You can make them comparable by waiting for a day to complete and by comparing the same metric over the same span, but a rolling thirty-minute active-user count will never reconcile to a processed session total.
A signup that starts on your marketing site and finishes in your app is two users in GA4 unless the domains are configured together. Here is what the setting does and what it cannot fix.
First click, linear, time decay and position-based were withdrawn in November 2023. What remains in the GA4 attribution reports is data-driven, paid and organic last click, and Google paid channels last click — and one of the three is still the one arguments end on.
Ga4AttributionAnalytics
Why GA4 realtime does not match the standard reports