Google Ads

How to fix googleads.g.doubleclick.net sources and tpc.googlesyndication.com in Google Analytics

Published Updated 6 min read

Mystery referrals from googleads.g.doubleclick.net + tpc.googlesyndication.com in Google Analytics are a decade-old problem that survived the Universal Analytics → GA4 migration — and the fix is now completely different. In 2026, with UA permanently sunset, GA4 properties need a different approach because classic View Filters no longer exist. Here's how to handle it.

Why these referrals appear

Both googleads.g.doubleclick.net and tpc.googlesyndication.com are Google ad-serving infrastructure domains. They show up as referral sources when:

  • Auto-tagging is broken or GCLID stripping is happening (CDN, server-side redirect, aggressive parameter cleanup)
  • Iframe-based ad redirects strip the gclid URL parameter
  • Mobile in-app browsers (Facebook, Instagram, TikTok) reload landing pages and lose the GCLID
  • Cross-domain navigation drops the parameter
  • 3rd-party tag managers mishandle UTM forwarding

Result: traffic that's clearly from a Google Ads campaign gets misclassified as a referral.

The Universal Analytics era fix (no longer works in 2026)

If you remember this guide from 2020, the original fix used UA View Filters with Advanced + Search-and-Replace rules to rewrite Campaign Source + Campaign Medium at hit-ingestion time. This entire feature was removed from GA4:

  • No View Filters in GA4
  • No Campaign Source rewriting at ingestion time
  • No "Custom Filter → Advanced → Field A/B" capability
  • ❌ Existing UA properties stopped collecting data on 1 July 2024

The GA4 era fix (2026 approach)

GA4 doesn't let you rewrite source/medium at ingestion. Instead, the modern playbook is upstream: stop the problem before the hit reaches GA4.

Step 1 — Audit your GCLID flow

Use Google Ads → Tools → Conversions to verify:

  • Auto-tagging is ON (Settings → Account settings → Auto-tagging)
  • No CDN, firewall or Cloudflare rule is stripping gclid from URLs
  • Server-side redirects preserve the query string (301 + full URL, not 301 to a clean URL)

Common culprits that strip gclid:

  • Cloudflare's "Cache Everything" rule with query string stripped
  • WordPress redirect plugins
  • Custom PHP header('Location: /clean-url') redirects
  • AMP cache → canonical hop

Step 2 — Verify in real-time

Open Google Ads → DebugView in GA4 and click your own ad. The landing page URL should contain ?gclid= and GA4 should immediately attribute the session to google / cpc.

If the GCLID is present in URL but GA4 still misclassifies:

  • Check Configure your domains (cross-domain tracking list)
  • Verify Conversion Linker tag (GTM) is firing before GA4 page_view
  • Check first-party cookie persistence (_gcl_aw cookie must be set)

Step 3 — Use Unwanted Referrals as a backstop

For traffic that's already been miscategorized, add the Google ad-serving domains to List unwanted referrals:

  1. Admin → Data Streams → select your web stream
  2. Configure tag settings → Show all → List unwanted referrals
  3. Add conditionReferral domain matches regex
  4. Enter: ^(.*\.)?(doubleclick\.net|googlesyndication\.com|googleadservices\.com)$
  5. Save

This doesn't reclassify the traffic as google / cpc (UA could, GA4 can't) — but it strips the misleading referrer so the session falls back to (direct) or the genuine prior referrer, which is at least less misleading.

Step 4 — Enhanced Conversions + GA4 Measurement Protocol

For true attribution recovery in the cookieless + iOS 14.5 ATT era, use:

  • Google Ads Enhanced Conversions for Web — hashed first-party data sent server-side
  • GA4 Measurement Protocol — fire purchase events from your backend with the original session source preserved
  • Server-side GTM — most flexible, lets you enrich + re-tag hits before they reach GA4

This combination gives you deterministic attribution that doesn't depend on GCLID survival through ad redirects.

Step 5 — BigQuery export for surgical fixes

GA4 → BigQuery export is free and gives you raw event data. You can:

  • Run a daily SQL query that reclassifies events whose traffic_source.source is doubleclick.net to google / cpc
  • Build Looker Studio dashboards that present corrected attribution
  • Maintain a separate "cleaned" event table for marketing reporting

This is the closest 2026 equivalent of the old UA filter approach.

Common mistakes

  1. Looking for "Filters" in GA4 — it's not there; the feature is gone permanently
  2. Forgetting to add googleadservices.com — the third domain in the family
  3. Treating the symptom not the cause — exclusion lists don't fix broken auto-tagging
  4. Not auditing CDN + redirect chain — most cases trace back to a gclid-stripping redirect
  5. Ignoring mobile in-app browsers — Meta + TikTok webviews are notorious for parameter loss

FAQ

Why is tpc.googlesyndication.com showing up specifically?

tpc.googlesyndication.com (Third-Party Cookie) is used by Google Ad Manager + AdSense publisher placements. If you advertise via Google Ads Display Network on a publisher site, the ad redirect can route through this domain before landing on your site. With auto-tagging working correctly, you should never see this in your reports.

Can I rewrite source/medium in GA4 like I could in UA?

Not at ingestion time. GA4's only built-in source manipulation is the Unwanted Referrals list, which strips the referrer. For true rewriting, use Server-Side GTM to modify hits before sending to GA4, or BigQuery + SQL to clean data post-ingest.

Does Server-Side GTM solve this?

Partially. Server-Side GTM lets you modify the traffic_source fields before they reach GA4. You can build a server-side variable that detects googleads.g.doubleclick.net in the referrer and rewrites it to google / cpc. This is the closest modern equivalent of the old UA filter approach — but it requires GTM Server container hosting (~$50–200/month on Google Cloud).

Will Privacy Sandbox + cookieless tracking fix this?

Long-term yes — but slowly. Privacy Sandbox's Attribution Reporting API is designed to attribute conversions server-side without relying on GCLID survival through redirects. By 2027+, this should reduce mystery referral noise. For now, treat it as supplementary, not primary.

Does this affect Google Ads' own bidding optimization?

No. Google Ads uses first-party conversion tracking (the AW-XXX/conversion-label pixel) — independent of GA4 source attribution. Even if your GA4 reports show doubleclick.net / referral, Google Ads itself knows the click came from your campaign and bids accordingly. The referral mystery is a GA4 reporting problem only, not a bidding problem.

What if my organization is locked into UA-style reporting?

If executive dashboards expect the old UA source/medium model, the cleanest path is BigQuery + Looker Studio with a daily transform job that mimics the old filter behavior. This keeps GA4 clean while feeding leadership the familiar shape of data.

Continue learning

Continue reading

Cookie Preferences

We use cookies to enhance your experience, analyze site traffic, and for marketing purposes. Space Ads does not collect PII or sensitive data. Choose your preferences below. Learn more