Ad Campaigns Not Getting Credit? Mistakes Most Companies Make When Tracking Google Analytics ROAS

If you’re running Google Ads or Facebook Ads and noticing low return on ad spend (ROAS), the problem might not be your campaigns — it could be your tracking. Many businesses, especially in travel and hospitality, rely on third-party booking platforms. If these external domains aren’t configured for cross-domain tracking or your ads lack UTM parameters, your conversions may be misattributed or lost entirely.

In this post, we’ll cover:

  • What goes wrong when you don’t set up cross-domain tracking
  • Why UTM parameters are essential for Facebook Ads
  • How to fix your GA4 setup to properly track and attribute revenue
  • Tips to improve your ROAS accuracy

1. The Hidden Cost of Misattribution

When your website sends users to an external site (like a hotel booking engine) to complete a purchase, and you haven’t configured cross-domain tracking in Google Analytics 4 (GA4), you risk losing the original session context.

What this means:

  • GA4 sees the external domain as a “new” session
  • Your original source/medium (like Facebook CPC or Google Ads) is replaced with referral or direct
  • Revenue shows up in GA4 but with no connection to your campaigns

➡️ Result: Your ad campaigns seem ineffective — even if they’re driving sales.


2. Why Facebook Ads Without UTMs Are Blind Spots

By default, Facebook (Meta) ads don’t include UTM parameters unless you manually add them or use a tool like URL parameters in Meta Ads Manager. Without UTMs:

  • GA4 can’t see if a user came from a Facebook ad
  • All Facebook traffic may show as facebook.com / referral instead of facebook / cpc
  • Campaign-level attribution is completely lost

Fix: Always add UTM tags manually or use dynamic values in Meta’s URL parameters field like:

iniCopyEditutm_source=facebook&utm_medium=cpc&utm_campaign={{campaign.name}}&utm_content={{ad.name}}

3. Setting Up Cross-Domain Tracking in GA4

To maintain the user session from your domain to the booking site:

Steps:

  1. In GA4 Admin → Data Streams → Configure Tag Settings → Configure your domains
  2. Add both your main domain and the third-party domain used for bookings
  3. Ensure your GA4 tag is implemented on both domains

This tells GA4 to stitch sessions across domains and avoid counting a returning user as “new.”


4. Why All This Matters: ROAS & Business Decisions

If you’re optimizing your ad budget based on inaccurate ROAS, you may cut successful campaigns too early or waste spend on underperforming ones. Accurate attribution allows you to:

  • Identify which campaigns actually drive bookings
  • Justify ad spend with real revenue data
  • Improve retargeting and customer journey analysis

5. Final Tips:

✅ Use Google Tag Manager for flexibility
✅ Test attribution using GA4’s DebugView and Real-time reports
✅ Build Looker Studio dashboards for visual ROAS tracking
✅ Consider server-side tagging for even more control


Conclusion

Correctly attributing your ad traffic isn’t just a technical fix — it’s the foundation of smart marketing decisions. Set up UTM parameters on all your ads, enable cross-domain tracking, and ensure both your main site and booking engine are playing nice with GA4. Your ad budget (and your boss) will thank you.

Liked this post? Share with others!

Subscribe to our newsletter

Collect visitor’s submissions and store it directly in your Elementor account, or integrate your favorite marketing & CRM tools.