Skip to content

GA4 Data API runReport — single date 2026-06-01 dimensional data broken across multiple properties (UNKNOWN error / ~98% row collapse) while daily totals are normal #17380

@pbh0504

Description

@pbh0504

Determine this is the right repository

  • I determined this is the correct repository in which to report this bug.

Summary of the issue

Summary
For event date 2026-06-01 only, session/traffic-source dimensional reporting is broken across multiple unrelated GA4 properties, while the daily totals
for the same date are completely normal. Adjacent dates (2026-05-31, 06-02, 06-03) are fine. This points to a server-side processing/reprocessing problem
specific to 2026-06-01, not a client or configuration issue.

Affected properties

  • Property A: 344602134
  • Property B: 384079250
    (Both queried via the same service account; the issue is per-date, not per-account.)

Environment

  • API: Google Analytics Data API v1beta, properties.runReport
  • Client: google-analytics-data (Python) 0.18.19
  • Property timezone: Asia/Seoul (KST)
  • Observed 2026-06-04 ~ 2026-06-05 KST (not recovered at time of writing)
    Request shape (session report)
  • dimensions: sessionSource, sessionMedium, sessionCampaignName, sessionManualAdContent, sessionManualTerm, sessionGoogleAdsAdGroupName, deviceCategory,
    platform, date
  • metrics: sessions, totalUsers, engagedSessions, screenPageViews, ...
  • dateRange: start=2026-06-01, end=2026-06-01 (one day per call); limit=250000, offset=0
    Symptom 1 — row collapse (property 344602134)
    Date-only aggregate (dimensions=[date], metric=sessions):
  • 2026-05-31 = 852,745 / 2026-06-01 = 843,422 / 2026-06-02 = 798,981
    Full 9-dimension session report, sum of "sessions" across returned rows:
  • 2026-05-31 = 841,005 (98.6% of daily total, ~30k rows)
  • 2026-06-01 = 16,207 (1.9% of daily total, ~1.6k rows) <-- broken
  • 2026-06-02 = 802,654 (100.5% of daily total, ~31k rows)
    Events clearly exist (daily total normal) but cannot be broken down by session-scoped dimensions for 2026-06-01.
    Symptom 2 — server error (property 384079250)
    Same 9-dimension session report:
  • 2026-06-01: daily total sessions = 688,186, but the dimensional runReport call fails with google.api_core.exceptions.Unknown: None Unknown Error.
    (gRPC StatusCode.UNKNOWN, ~20s, reproducible)
  • 2026-06-02 / 06-03: succeed normally (≈100% of daily totals)

Expected vs actual

  • Expected: dimensional breakdown for 2026-06-01 returns rows consistent with the daily totals, as for neighboring dates.
  • Actual: 2026-06-01 returns ~2% of the data or a hard UNKNOWN error depending on the property; daily totals remain correct.
    Questions
  1. Is there a known processing/reprocessing issue affecting event date 2026-06-01 for session-scoped traffic-source dimensions?
  2. Is the data expected to self-heal after reprocessing, and if so by when?
  3. Why does runReport return UNKNOWN for one date while neighboring dates succeed with identical parameters?

API client name and version

google-analytics-data v0.18.19

Reproduction steps: code

file: main.py

from google.analytics.data_v1beta import BetaAnalyticsDataClient
from google.analytics.data_v1beta.types import (
    RunReportRequest, Dimension, Metric, DateRange,
)

# auth: service account via GOOGLE_APPLICATION_CREDENTIALS
client = BetaAnalyticsDataClient()

DIMS = ["sessionSource", "sessionMedium", "sessionCampaignName",
        "sessionManualAdContent", "sessionManualTerm",
        "sessionGoogleAdsAdGroupName", "deviceCategory", "platform", "date"]

def run(date):
    req = RunReportRequest(
        property="properties/384079250",
        dimensions=[Dimension(name=n) for n in DIMS],
        metrics=[Metric(name="sessions")],
        date_ranges=[DateRange(start_date=date, end_date=date)],
        limit=250000,
    )
    resp = client.run_report(req, timeout=1800)
    print(date, "row_count=", resp.row_count)

run("2026-06-02")   # OK
run("2026-06-01")   # -> google.api_core.exceptions.Unknown: None Unknown Error.

Reproduction steps: supporting files
N/A (no input files needed; only a GA4 property and service-account credentials)

Reproduction steps: actual results
file: output.txt

2026-06-02 row_count= 18425
2026-06-01 -> google.api_core.exceptions.Unknown: None Unknown Error.
             (gRPC StatusCode.UNKNOWN, fails in ~20s, reproducible on retry)

Reproduction steps: supporting files

N/A (no input files needed; only a GA4 property and service-account credentials)

Reproduction steps: actual results

file: output.txt

2026-06-02 row_count= 18425
2026-06-01 -> google.api_core.exceptions.Unknown: None Unknown Error.
             (gRPC StatusCode.UNKNOWN, fails in ~20s, reproducible on retry)

Reproduction steps: expected results

file: output.txt

2026-06-02 row_count= 18425
2026-06-01 row_count= ~18000   (rows consistent with the day's traffic, like neighboring dates)

OS & version + platform

Original failure: AWS ECS Fargate (Amazon Linux), Python 3.9 Also reproduced locally: Ubuntu 22.04 (WSL2)

Python environment

Python 3.12.3 (local repro) / Python 3.9 (production)

Python dependencies

google-analytics-data 0.18.19
google-api-core 2.24.1
google-auth 2.38.0
googleapis-common-protos 1.66.0
grpcio 1.63.0
grpcio-status 1.63.0
proto-plus 1.26.1

Additional context

Root cause appears to be server-side, specific to event date 2026-06-01:
the daily totals for that date are normal, but any session-scoped dimensional
breakdown either collapses to ~2% of the data (property 344602134) or fails with
an opaque UNKNOWN (property 384079250). Neighboring dates (05-31, 06-02, 06-03)
are fine, and the same code works for them.

Two requests:

  1. Please route this to the Google Analytics Data API backend team if it is not a
    client-library issue.
  2. The client surfaces only "None Unknown Error" with no detail (no error code,
    message, or request id) — could the library surface more diagnostic info so
    callers can distinguish transient vs. server-side data faults?

Metadata

Metadata

Assignees

No one assigned

    Labels

    triage meI really want to be triaged.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions