Skip to main content
Card class: HeroCategory: Analytics
Composite, ingestion freshness × key-event-config × GTM container status. One number, three things merchants miss.

At a glance

A composite health score for the GA4 property: data-stream freshness, Key-Event configuration, and GTM tag-fire rate (vs commerce-sibling order count). Three silent failure modes that most analytics teams don’t notice for days. The card is green only when all three are healthy.
What it measuresA 0, 100% composite of three sub-scores: (1) Data-stream freshness (when did GA4 last receive an event from your tag?), (2) Key-Event config (is purchase marked as a Key Event in GA4 Admin? Are non-spam events excluded?), (3) GTM tag-fire rate (purchase events fired into GA4 ÷ orders in commerce sibling, expected ratio 0.75, 0.90 healthy).
Sample basisReal-time. The freshness sub-score reads the last-event timestamp from the GA4 Admin API. The Key-Event sub-score reads the property’s event configuration. The tag-fire sub-score compares the last-1h GA4 purchase count against Shopify/BC/Adobe order count for the same window.
Sampling thresholdNot applicable. This is a configuration check, not a metric query. No sampling possible.
Bot traffic filterNot applicable. The signal is the configuration state, not traffic counts.
Time zoneThe GA4 property’s configured timezone, NOT UTC. Freshness checks use the property zone.
Currency (revenue events)Not applicable, this is a meta-metric about the property’s measurement health, not a revenue figure.
Tracking-gap framingThe tag-fire sub-score measures the tracking gap directly. A healthy property sits at 0.75, 0.90 (i.e. GA4 captures 75, 90% of commerce-platform orders); a property below 0.50 has a serious tag-fire problem. This is the canary that warns you BEFORE revenue cards diverge.
Time windowRT (real-time, refreshed every 15 minutes)
Alert trigger<90% (any of: data-stream stale, key-events misconfigured, tag-fire failing). Property Health going amber/red is a configuration alert, not a performance alert; it means GA4 is misreporting, not that traffic dropped.
Rolesowner, marketing, engineering

Calculation

Calculated automatically from your Google Analytics 4 data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

Worked example

A US specialty-foods brand on BigCommerce with GA4 connected. Property Health snapshot taken on 28 Apr 26 at 14:05 (property timezone US/Eastern).
Sub-scoreStatusReading
Data-stream freshnessHealthy (100%)Last event received 38 seconds ago. Threshold: amber if >15min, red if >1h.
Key-Event configHealthy (100%)purchase is marked as Key Event. view_item, add_to_cart, begin_checkout all firing as standard events (not duplicated as Key Events).
GTM tag-fire rateAmber (62%)GA4 fired 23 purchase events in the last 1h; BigCommerce recorded 37 orders in the same window. Ratio: 0.62. Expected band: 0.75, 0.90.
Composite Property HealthAmber (74%)Weighted: 0.4 × freshness + 0.3 × key-events + 0.3 × tag-fire.
Three numbered observations:
  1. The tag-fire sub-score is the canary. Freshness and Key-Event config are binary (either configured right or not); they go red and stay red. The tag-fire sub-score is graduated, it tells you, in real time, what fraction of orders GA4 is missing. This brand is missing 38% of orders this hour, well outside the normal 10, 25% structural gap. Something has changed.
  2. Tag-fire dropping mid-day is the classic regression signal. The most common causes, in order of frequency: (a) a theme update broke the GA4 e-commerce snippet, (b) a new consent banner started defaulting to Reject (especially in EU/UK), (c) the GTM container was published with the wrong workspace, (d) a Cloudflare or CDN caching change began serving a stale version of the GTM snippet. All four are diagnosable within 30 minutes of being flagged.
  3. The fix changes the metric in real time. Once the engineering team republishes the corrected GTM container, the next 15-minute window’s tag-fire ratio jumps back to 0.82 and Property Health returns to green. Unlike commerce-platform metrics, this card responds to fixes within minutes, that’s why we render it real-time, not period-averaged.
  4. What WOULD trip “stale data-stream”? If the freshness sub-score went red at the same time as tag-fire, the property is actively offline (GA4 measurement ID changed, GTM container deleted, or DNS routing change). That’s a “site is down or analytics is fully detached” signal.
  5. What WOULD trip “Key-Event misconfigured”? The most common case: someone in GA4 Admin → Events un-toggled purchase from Key Event status. This silently zeroes out conversion-rate cards while traffic stays healthy. Property Health catches this within one polling cycle.
Rule of thumb. If Property Health is green, you can trust GA4’s other cards (within the structural tracking gap). If it’s amber or red, the first action is to read this card’s breakdown, not to investigate a “revenue drop” that may not be real.

Sibling cards merchants should reference together

CardWhy pair it with GA4 Property Health
GA4 GTM Tag FireThe detailed view of the tag-fire sub-score: per-hour purchase-event count vs commerce-sibling order count.
GA4 Tracking Gap vs CommerceThe trended view: a stable gap = healthy; a widening gap = property issue. Property Health detects the inflection in real-time; this card shows the trajectory.
GA4 Bot Traffic ShareThe other measurement-health canary. Bot waves can briefly tank Property Health by inflating sessions without conversions.
GA4 Sampling ThresholdCompanion data-quality card. Sampling triggers on cardinality/range; Property Health triggers on configuration.
GA4 Revenue TrendThe downstream metric most affected by Property Health. A revenue drop while Property Health is amber = measurement issue, not real.
GA4 Conversion RateSame shape: GA4 CR drops when Property Health drops. CR drops are interpretable only when Property Health is green.
Shopify / BC / Adobe Total RevenueThe truth side that the tag-fire sub-score is calibrated against.

Reconciling against the vendor’s own dashboard

Where to look in GA4: GA4 doesn’t expose a single “Property Health” dashboard, the score is a Vortex IQ composite. The three sub-signals come from different parts of GA4 Admin:
Admin → Property Settings → Property Details for property timezone, reporting currency, and creation date. Admin → Data Streams → (your web stream) → Configure tag settings for the GTM container link and last-event timestamp. Admin → Events for the Key Event configuration of purchase, add_to_cart, etc. Realtime → Conversions for live confirmation that purchase events are arriving (the freshness signal).
Other GA4 views that look like Property Health but aren’t:
  • Realtime overview: shows live activeUsers but doesn’t surface tag-fire ratio against your commerce platform, GA4 has no concept of your Shopify/BC/Adobe sibling, so it can’t measure the gap.
  • Reports → Tech → Tech overview: shows browser/device/OS distribution; useful for ad-blocker incidence inference but not a health signal.
  • DebugView: requires GA4 debug mode on your test browser; useful for verifying a specific tag fires, but isn’t a fleet-wide health view.
Why our number may legitimately differ from GA4’s own self-report (rare):
ReasonDirection of divergence
Polling lag. We refresh every 15 minutes; the underlying API latencies can add 1, 5 minutes. A regression that happens at 14:00 may not surface in the card until 14:20.Brief lag
Commerce-sibling sync lag. The tag-fire sub-score compares GA4 against Shopify/BC/Adobe order counts. If the commerce platform’s order webhook is itself delayed, the ratio briefly looks worse than it is. Resolves within minutes.Brief amber state
Fresh GA4 properties. Properties under 24h old may not have a baseline established for the tag-fire sub-score; the score is calculated but flagged as low-confidence.First 24h after install
Cross-connector reconciliation, the IMPORTANT one:
CardExpected relationshipWhat causes the divergence
shopify.total_revenueThe tag-fire sub-score IS the GA4 ÷ Shopify order ratio for the last 1h. Healthy band 0.75, 0.90.A drop below 0.50 = active tag regression. A spike above 1.0 = duplicate-firing tag (each order counted twice in GA4) or bot wave.
bigcommerce.total_revenueSame: GA4 purchase events ÷ BC orders, healthy 0.75, 0.90.Same shape. BC’s Incomplete orders aren’t in either side.
adobe_commerce.total_revenueSame: GA4 purchase events ÷ Adobe orders in processing/complete, healthy 0.75, 0.90.Same shape.
Property Health is a Vortex IQ-only metric. GA4 doesn’t compute or display it; the value is a synthesis of three GA4 signals + one cross-connector signal that no single GA4 view exposes. This is one of the highest-leverage cards on the Nerve Centre: it catches measurement regressions hours-to-days before they would otherwise be noticed via revenue/CR cards.

Known limitations / merchant FAQs

Why is my GA4 Property Health amber? I haven’t changed anything. That’s exactly when this card earns its place. The most common silent regressions: (1) a Shopify theme auto-update that swapped your custom GA4 snippet for a vanilla one, (2) a consent-banner version bump (CookieYes, OneTrust, Cookiebot) that started defaulting to Reject, (3) a third-party app you installed for an unrelated reason injected its own GTM container that conflicts with yours, (4) Google rotated a measurement-protection signature that older client-side tags don’t yet recognise. You haven’t changed anything; something else changed that broke your tag, and this is the only Vortex IQ card that detects it before revenue cards diverge. What’s the difference between this card and “GA4 GTM Tag Fire”? This card is the composite score (freshness + key-event-config + tag-fire). GA4 GTM Tag Fire is the detail view of just the tag-fire sub-score: hourly purchase events vs commerce-sibling orders. Use Property Health to detect; use GTM Tag Fire to triage. Property Health is showing red but my Shopify/BC dashboard is normal. What’s happening? That’s the expected pattern. Property Health is a measurement health score, not a site health score. Red means “GA4 is misreporting reality”; the commerce platform is unaffected. Your revenue is fine; what’s broken is your ability to see which channels drove that revenue. Triage in this order: (1) is the GTM container published in Google Tag Manager? (2) is the purchase event firing on the order-confirmation page? (3) is purchase still marked as a Key Event in GA4 Admin → Events? (4) has your consent banner default flipped? My GA4 has just been freshly installed. Why is Property Health amber? Properties under 24h old don’t have a stable baseline for the tag-fire ratio yet. Vortex IQ flags freshly-installed properties as low-confidence amber for the first day; the score stabilises once 24h of paired GA4-events-vs-commerce-orders data is collected. After 24h, if it’s still amber, something genuinely is misconfigured. Does Property Health get worse over time? Not naturally; properties trend stable when nothing changes. Property Health degrades when something else changes: theme auto-updates, banner version bumps, browser ITP updates, GTM workspace publishes by another team. The card is a regression-detector, not a slow-bleed-detector. A slow-bleeding tracking gap (ad-blocker version creep, gradual consent-rejection rise) is captured by GA4 Tracking Gap vs Commerce, not here. Property Health says my Key Events are misconfigured but I never changed anything in GA4 Admin. Two known causes: (1) GA4 silently dropped Key-Event status when migrating your property from Universal-Analytics-imported configurations to native GA4 in late 2024 (the rename event); some merchants who never re-confirmed lost the toggle. (2) Adding a new event-stream and not propagating Key-Event status to it. Go to Admin → Events, find purchase, and confirm the “Mark as key event” toggle is on for ALL active data streams. Does the tag-fire sub-score include B2B / wholesale / draft orders? No. The numerator is GA4 purchase events (which only fire on the storefront). The denominator is commerce-platform orders that originated from the storefront (Shopify Online Store channel, BC web channel, Adobe Commerce frontend). B2B portal orders, draft orders, and POS sales are excluded from both sides so the ratio remains apples-to-apples. Why does Property Health score drop briefly during high-traffic moments (sales, drops, viral spikes)? GA4’s per-property rate limits are 50 req/60s and 1250 req/3600s. During a viral traffic spike where 1,000 orders happen in 5 minutes, GA4 may briefly throttle the data-stream ingest or batch events, which makes the freshness sub-score wobble. This is a known pattern; the score self-heals once traffic normalises (typically within 15 min). If it persists past an hour, escalate. Is Property Health a Google-supported metric? No. It’s a Vortex IQ composite that synthesises three GA4 signals + one cross-connector ratio that GA4 itself doesn’t expose. Google won’t have anything like it in their UI; the closest GA4-native equivalent is browsing Admin → Data Streams → Tag Settings and Admin → Events manually, on every visit. This card replaces that manual ritual with a single number.

Tracked live in Vortex IQ Nerve Centre

GA4 Property Health is one of hundreds of KPI pulses Vortex IQ tracks across Google Analytics 4 and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.