Skip to main content
In attribution reporting, (direct) / (none) typically means SourceMedium could not confidently associate an order with a marketing touchpoint (for example, missing UTMs or lost attribution context during the journey).

Common causes

  1. Missing UTMs: Campaigns (especially email/SMS and paid social) aren’t consistently tagged.
  2. UTMs dropped during the journey: Cross-domain transitions, checkout flows, or redirects (including URL shorteners and 302s) lose parameters.
  3. “Dark social” and mobile apps: Links shared via WhatsApp, Slack, SMS, or clicked within mobile apps often don’t pass referrer data.
  4. Offline documents: Links embedded in PDFs, Word/Excel/PowerPoint files, or slide decks have no referrer context.
  5. HTTPS to HTTP transitions: Navigating from a secure site to a non-secure page drops referral data for security.
  6. Tracking blockers: Ad blockers, iOS privacy restrictions, browser privacy modes, and firewall settings reduce client-side capture.
  7. Bookmarks and direct URL entry: Returning customers who bookmarked your site or type the URL directly.
  8. Long time-to-convert: The purchase happens after attribution context expires or can’t be stitched.

How to diagnose (fast)

1

Check if your links are tagged

Pick a few live campaigns and click through. Confirm the landing page URL includes utm_source / utm_medium / utm_campaign.
2

Find where UTMs are being lost

If the landing page has UTMs but orders still show (direct) / (none), the drop often happens during cross-domain navigation or checkout.
3

Look for the pattern by channel

If (direct) / (none) spikes after a specific campaign type (email/SMS, paid social, affiliates), that’s usually the tagging or redirect path for that channel.
4

Validate against survey data

If surveys show meaningful discovery but tracking shows (direct) / (none), that’s a strong signal you have a capture gap.

How to reduce (direct) / (none)

  • Standardize UTM tagging across all channels (start here: UTM Setup)
  • Add server-side/checkout capture for platforms where UTMs are commonly dropped (Shopify Plus teams often capture UTMs into order attributes)
  • Use post-purchase surveys to supplement tracking-based attribution for offline and hard-to-track channels
For a deeper dive into debugging this in GA4, check out Google’s guide on Traffic acquisition reports.