Streaming export gaps in BigQuery
GA4 offers two BigQuery export modes — continuous streaming and a once-daily batch — and they do not always agree. Streaming optimises for freshness and can omit or delay some events that the daily export later includes after fuller processing. Comparing the two for the same day reveals a gap. This page explains why streaming and daily exports differ and which to trust for a given purpose.
Streaming vs daily delivery
The streaming export writes events to BigQuery continuously, prioritising low latency for real-time use. The daily export delivers a batch after the day closes with the benefit of fuller processing. Because streaming favours speed, some events can arrive late, be reprocessed, or land in the finalised daily table but not the streamed intraday view at the moment you queried.
The daily table is the more complete record of a finished day; streaming is the more current view of an in-progress one.
- Streaming favours latency; daily favours completeness
- Late or reprocessed events can differ between modes
- Daily is the fuller record of a closed day
Reconciling the two
Use streaming for dashboards and alerting that need freshness, and the finalised daily tables for reporting that must be complete and stable. When the two disagree for a recent day, give the gap time — late-arriving and reprocessed events close much of it once the daily table finalises.
Document which export each report reads from so a freshness-versus-completeness difference is never mistaken for a data fault.
How it appears in analytics and logs
Streaming export counts that fall short of the daily export for the same day usually reflect freshness-versus-completeness trade-offs, not lost data.
Diagnostic use case
Choose between streaming and daily BigQuery export per use case, and reconcile a gap between them without assuming one is broken.
What WebmasterID can help detect
WebmasterID streams first-party events while keeping a finalised store, so you can act on fresh data and reconcile against a settled record.
Common mistakes
- Treating the streaming export as a complete record of a closed day.
- Comparing streaming and daily exports before the daily finalises.
- Mixing the two exports in one query without noting the mode.
Privacy and accuracy notes
Both export modes carry the same pseudonymous event data; the mode is a delivery choice with no added privacy implication. Educational, not legal advice.
Related pages
- Intraday vs daily export tables
The GA4 BigQuery export writes provisional intraday tables during the day and a finalised daily table afterwards. Intraday data is incomplete and can be reprocessed, and once the daily table lands the intraday one is removed. Querying both, or trusting intraday as final, causes double counts and shifting numbers. This page explains the two table types and how to query them correctly.
- Late-arriving and offline hits
Not every hit arrives when it happens. A device offline queues events and sends them on reconnect; processing pipelines add delay; and tools backfill recent data. The effect is that today's and yesterday's numbers are provisional and keep rising as late hits land. This page explains why fresh reports change under you and how to read them.
- Late data reprocessing
Reports for recent periods are provisional. As offline conversions upload, late hits arrive, modeling recalculates, and identity stitches resolve, the platform reprocesses and the numbers move. GA4 and similar tools have processing windows during which figures are not final. This page explains why recent data is unstable and when it can be trusted as settled.
- Website observability
Fresh streaming events with a finalised reference store.
Sources and verification notes
Last reviewed 2026-06-24. Facts are checked against primary/official sources where available; uncertain specifics are marked “Data not yet verified” rather than guessed.