GA4 Revenue Tracking Broken? Here's the Real Fix
If you have spent hours trying to get revenue tracking working in Google Analytics 4, you are not alone. GA4's ecommerce event system is one of the most complained-about features in the analytics world. And for SaaS founders, it is even worse — GA4 was designed for ecommerce stores, not subscription businesses.
Why GA4 revenue tracking fails for SaaS
GA4 tracks revenue through "ecommerce events" — a system designed for online stores where a customer adds items to a cart, proceeds to checkout, and completes a purchase. The required events are:
add_to_cartbegin_checkoutpurchase
For a SaaS product with Stripe billing, this model does not fit. Your customers do not add a plan to a cart. They click "Start trial," enter payment details in a Stripe Checkout session, and Stripe sends a webhook. None of these steps naturally map to GA4's ecommerce funnel.
The developer tax
To make it work, you need to:
- Fire custom
purchaseevents from your webhook handler or thank-you page - Pass the correct
transaction_id,value,currency, anditemsarray - Set up ecommerce reporting in GA4's interface
- Configure data streams correctly
- Wait 24-48 hours for data to appear (GA4 does not process ecommerce events in real time)
- Debug why half your transactions are missing (ad blockers, browser restrictions, incorrect event format)
Most SaaS founders give up after step 3. The ones who push through discover that the data is often incomplete — ad blockers prevent GA4 from firing on 30-40% of browsers, and the 24-hour processing delay means you cannot verify your setup quickly.
Common GA4 revenue tracking problems
"Purchase events are not showing up"
The most common issue. GA4 requires a specific event format with exact parameter names. A missing currency field or an items array in the wrong format silently drops the event. There is no error message — the data simply disappears.
"Revenue numbers do not match Stripe"
GA4's revenue tracking is client-side. If a customer completes a Stripe Checkout session but their browser blocks GA4 (or they close the tab before the thank-you page loads), the revenue is never recorded. Expect 20-40% data loss compared to your actual Stripe numbers.
"I cannot see revenue by traffic source"
Even when GA4 ecommerce events work, connecting revenue back to the original traffic source requires proper attribution setup. GA4's default attribution model changed multiple times in 2023-2024, and the "data-driven attribution" model is a black box that does not always produce intuitive results.
"Real-time revenue data is missing"
GA4 processes ecommerce events in batch, not real time. You will not see today's revenue until tomorrow. For founders who want to see which marketing activity drove a sale today, this is a dealbreaker.
Revenue tracking without the pain
Skip the 40-hour GA4 setup. Connect Stripe and see revenue by channel in minutes. Free 14-day trial.
Try DataSaaS freeThe simpler alternative
Revenue tracking should not require 40 hours of developer time. The core question is simple: "Which traffic source brought the customer who just paid me?" Answering it requires two things:
- Traffic data — know which visitors came from which channels
- Payment data — know which visitors became paying customers
Instead of forcing payment data into an analytics tool (the GA4 approach), the better approach is to connect your payment provider directly to your analytics. When Stripe or LemonSqueezy reports a payment, automatically match it to the visitor session that preceded it.
This is what revenue-first analytics tools do. You connect your Stripe API key (2 minutes, no code), and the tool automatically matches payments to visitor sessions. Revenue by traffic source, Revenue Per Visitor, revenue by landing page — all available immediately, in real time, with zero developer setup.
When to keep GA4
GA4 is still useful for:
- Google Ads integration — if you spend heavily on Google Ads, GA4's native integration with Google Ads is valuable for bid optimization
- Large enterprise teams — if you have a dedicated analytics team that knows BigQuery, GA4's raw data export is powerful
- Free tier — if your budget is literally zero and you do not need revenue tracking
For everyone else — especially SaaS founders, indie hackers, and small teams who need revenue attribution without a data engineering project — there are better options.
Moving forward
The fix for broken GA4 revenue tracking is not spending more time configuring GA4. It is choosing a tool that was designed for revenue tracking from day one. Connect your payment provider, add a lightweight script, and see which channels drive real revenue — not pageviews.
Related reading:
- DataSaaS vs Google Analytics — full feature comparison
- Revenue Per Visitor: The Metric Your Analytics Is Missing — the metric GA4 cannot show you
- Stripe Revenue Attribution — connect Stripe in 2 minutes
- Cookieless Analytics — no consent banners needed