Back to Blog

How to Track Realtime Users Across Multiple Websites in GA4

Watching one GA4 realtime report is easy. Watching all your properties at once is surprisingly hard. Here's every option, from roll-up properties to third-party dashboards.

Posted by

Monitoring realtime users in GA4 is genuinely useful. It's how you know if a campaign is working the moment you launch it, whether a server incident is affecting traffic, or whether a viral post is driving a spike worth celebrating. The problem is that GA4's realtime report is scoped to one property at a time. If you manage five websites, you need five browser tabs — and you can't watch them all simultaneously.

This is a more significant limitation than it first appears. Realtime data is, by definition, time-sensitive. By the time you've cycled through five properties manually, the data in the first one has already changed.

Why Cross-Property Realtime Is Hard in Native GA4

GA4's Realtime report reads from the runRealtimeReport API endpoint, which is separate from the standard runReport endpoint used for historical data. It returns data with sub-60-second latency and supports a specific set of realtime dimensions — including unifiedScreenName, firstUserMedium, deviceCategory, and audienceName.

The API does allow querying multiple properties — but you have to make one request per property and aggregate the results yourself. Looker Studio does not expose the Realtime API endpoint through its GA4 connector, which means there's no native way to show realtime data from any property in Looker Studio, let alone multiple properties.

Option 1 — Multi-Tab Monitoring (The Painful Default)

The simplest approach is also the most common: open GA4 in multiple browser tabs, one per property, each showing the Realtime report. Cycle through them manually on a refresh cadence.

This works, technically. GA4's Realtime report auto-refreshes every 60 seconds. For two or three properties it's bearable. For five or more, you're constantly clicking and losing context. And if you need to monitor during a campaign launch, you can't watch all properties simultaneously — you can only watch one at a time.

Option 2 — Build a Custom Realtime Dashboard via the API

If you have technical resources, you can call the GA4 Realtime API directly from a script or web app. Each call looks like:

POST https://analyticsdata.googleapis.com/v1beta/properties/{propertyId}:runRealtimeReport
{
  "dimensions": [{ "name": "unifiedScreenName" }],
  "metrics": [{ "name": "activeUsers" }]
}

Fire this in parallel for each property ID you manage. Sum the activeUsers metric across all responses for your total realtime count. Display the results in a simple web page with auto-refresh every 30–60 seconds.

This is the technically correct solution — it gives you exactly what you want with exactly the properties you choose. The barrier is engineering time. Building a polling dashboard, handling OAuth tokens that refresh every hour, and maintaining it when Google changes the API is non-trivial ongoing work.

Option 3 — Use a Purpose-Built Multi-Property Dashboard

Perch Analytics solves this problem directly — it calls the GA4 Realtime API for every property in your Google account and displays active user counts side by side in one dashboard. No setup, no code, no tab-switching.

Each property card shows the realtime active user count alongside key daily metrics — sessions, pageviews, engagement rate, and average session duration. The dashboard refreshes automatically so you always see current data across all properties at once.

For agencies monitoring multiple client sites during a shared campaign launch, or for founders watching several products simultaneously, this is the most practical solution. The free tier covers up to three properties — enough to validate whether it fits your workflow before committing to anything.

What to Do With Multi-Property Realtime Data

Realtime cross-property visibility is most useful in a handful of specific scenarios:

  • Campaign launches: Watch for traffic spikes the moment a campaign goes live. If one property spikes and another doesn't, investigate immediately — it might be a tracking issue, a broken UTM, or a campaign that didn't fire correctly on one of your sites.
  • Product launches and press coverage: When you get coverage that could drive traffic to multiple properties, realtime is the fastest way to see which sites are benefiting.
  • Incident detection: A sudden drop to near-zero active users on a normally busy site is a red flag — it could mean a server is down, tracking broke, or a major outage is in progress. Cross-property realtime makes these incidents visible immediately rather than after the fact.
  • A/B test monitoring: If you're running parallel experiments across properties, realtime user counts help you confirm test traffic is flowing as expected from the start.

The Bottom Line

Native GA4 gives you excellent realtime data for individual properties and no native way to see multiple properties at once. Your options are multi-tab manual monitoring (painful but free), a custom API build (powerful but requires engineering), or a purpose-built tool that handles the aggregation for you.

If realtime cross-property visibility is something you need regularly — and if you're managing more than two or three sites, it probably is — the purpose-built route is almost always the right trade-off. Try Perch Analytics free for up to three properties and see if it changes how you work.