All cases
Anonymous case Paid Events

13.88 ROAS and 4,000 New Customers Through Data-Driven Google Ads

Managing Google Ads campaigns for an event-ticketing e-commerce and reconciling four conflicting data sources (WooCommerce, Google Ads, Meta, GA4) to optimize ad spend.

Project
Google Ads Management + Web Analytics
Duration
9 months
Year
2026
Stack & tools
  • Google Ads
  • Google Analytics 4
  • Meta Ads
  • WooCommerce
  • Google Sheets
  • Looker Studio
  • 13.88 Google Ads ROAS Calculated on sales actually collected in WooCommerce, not on the figures reported by the platforms.
  • ~4,000 New customers Counted on real, deduplicated customers across more than 22,000 distinct buyers.
  • 15+ Editions A full season mapped campaign by campaign and reconciled against real data.

The client is an operator in the paid-events space, running a packed calendar of dates, an online ticketing shop built on WooCommerce (integrated with an external ticketing gateway), and ad spend split across Google Ads and Meta Ads.

The project had a twofold goal: optimize the Google Ads campaigns for the events sector and, above all, build a measurement system capable of telling us, with real numbers in hand, how much revenue each euro invested actually brought in.

The results

Focusing on the channel we handled directly, and on sales actually collected in WooCommerce:

  • 13.88 Google Ads ROAS: every euro invested in the channel generated nearly 14 in revenue that was genuinely collected.
  • ~4,000 new unique customers acquired through Google Ads, deduplicated against the real database (customers who had never purchased before).
  • No SEO cannibalization: revenue from organic search traffic stayed stable. The campaigns acted as an incremental channel, not as a siphon for clicks that would have arrived anyway.

The method: WooCommerce as the single source of truth

When you run multi-channel campaigns, a recurring problem is data discrepancy. Google Ads reports one revenue figure, Meta Ads another, GA4 yet another, and the numbers never add up.

These aren't errors, but systems that measure differently, for different purposes. The causes fall into a few families:

  • Different attribution models: today both Google Ads and GA4 default to data-driven attribution, but with different logic and input data, and they remain configurable on simpler models (e.g. last-click). The result is that the same conversion path gets "weighted" differently by the two platforms.
  • Different time windows: Google attributes the conversion to the click date, GA4 to the transaction date, shifting revenue between different periods.
  • Signal loss: rejected cookies, ad-blockers, and tracking restrictions push the platforms to statistically "model" the missing data.
  • Limits of browser-side tracking: in ticketing contexts with external payment gateways, it can lose or duplicate events.

The upshot is that adding up the revenue each platform reports often exceeds the revenue actually collected.

With three different return figures on the same day, allocating budget across events becomes a gamble. That's why, from the outset, we chose not to trust the platforms' native reports and instead build a data-reconciliation model anchored to the one indisputable source: the WooCommerce ticketing database, i.e. the money actually collected.

The work unfolded in three phases:

  • Export normalization: we extracted and normalized spend and conversion data from Google Ads, Meta Ads, and GA4.
  • Granular mapping: a campaign-by-edition mapping, manually verified across every edition on the calendar.
  • New-customer deduplication: analyzing more than 22,000 distinct buyers against the real database to isolate genuinely new customers from returning ones and to correct the overcounts in the native reports.

This approach let us work on real numbers, rather than on figures inflated by each platform's attribution model.

Performance Max and SEO: incremental growth, not a siphon

One of the main fears when scaling budgets on Performance Max (PMax to its friends) campaigns is organic-traffic cannibalization: the risk that the algorithm intercepts brand queries that would have converted for free anyway, inflating the paid-channel ROAS at the expense of SEO.

This project's data shows the opposite. Organic revenue stayed stable while the Google campaigns brought in ~4,000 new unique customers: the paid channel acted incrementally, broadening the customer base rather than intercepting brand searches that would have landed regardless.

Measuring efficiency by channel

When attribution is aligned to WooCommerce's real revenue, the true picture of ad efficiency emerges.

On the channel we handled directly, Google Ads recorded a 13.88 ROAS on sales actually collected. Analyzing the conversion paths in GA4 (attribution reports, conversion paths) also let us verify the channel's real contribution across the entire customer journey, not just on the last click, giving us a solid basis to optimize budget allocation toward the highest-return channels.

The tracking infrastructure

Measurement rests on a server-side tracking architecture, which delivers more stable and reliable data than browser-side tracking alone, the latter being more exposed to cookie restrictions, ad-blockers, and client-side failures.

Alongside the site rework already planned for some sections, the infrastructure will evolve further with a Measurement Protocol implementation: conversions will be sent directly from the WooCommerce backend when the order status updates, making the data less dependent on the user's browser behavior. To preserve attribution, the server-to-server events are tied back to the user's session through the correct identifiers, further locking down tracking reliability.

Next steps

The channel comparison currently rests on a last-click attribution model. It's a solid starting point, but it doesn't isolate the pure causal effect of each channel. The measurement roadmap therefore plans to progressively refine the analysis with:

  • Incrementality testing (Geo-Lift / Conversion Lift): tests based on geographic areas or control groups, to quantify how much of the advertising-generated revenue is genuinely incremental.
  • Measurement Protocol tracking: to reduce browser dependency and prevent the data loss tied to external payment-gateway redirects.
  • Cross-event affinity matrix: to structure predictive remarketing campaigns based on users' purchase history across the different editions.

Need a similar path?

Let's start with a 30-minute call to see if we can help.

Need a similar path?

Message us on WhatsApp

Tell us about your project

We reply within 24 business hours with a call or an honest email.

Free download

One last step before the download

Just your name and email. No SPAM. Only the freebie and, if you opt in, a few updates when there's something worth saying.