How Traffic Sources Are Detected

When a visitor arrives without UTM parameters in the link, the plugin works out where they came from automatically. This article explains how the source and medium are decided.

UTM parameters always win

If the link contains UTM parameters (for example utm_source and utm_medium), those values are used exactly as provided. Automatic detection only kicks in when UTM parameters are missing.

The mediums the plugin assigns

  • Organic – the visitor came from a search engine such as Google, Bing, Yahoo, DuckDuckGo, Yandex, or Baidu. When available, the search term is captured too.
  • Social – the visitor came from a social network such as Facebook, Instagram, X/Twitter, LinkedIn, Pinterest, TikTok, YouTube, Reddit, or WhatsApp.
  • CPC (paid) – the link carried a paid-click identifier such as gclid (Google Ads), fbclid (Facebook), msclkid (Microsoft/Bing), or wbraid/gbraid.
  • Referral – the visitor came from another website that is not a search engine or social network.
  • (Direct) – there was no referring website, for example the visitor typed your address, used a bookmark, or clicked a link in an app that hides the referrer.

Click identifiers from ad platforms

Ad platforms append their own identifiers to your links. The plugin recognises and stores these so paid traffic is correctly marked as cpc even when you forget to add UTM tags:

  • gclid / gclsrc / wbraid / gbraid – Google Ads
  • fbclid – Facebook / Meta Ads
  • msclkid – Microsoft Advertising (Bing)

Internal links

Moving between pages on your own site does not overwrite the original source. The first real source a visitor arrived with is preserved throughout their session.

Browse our plugins

Lightweight WooCommerce plugins built for speed. No bloat, no frameworks -- just clean code that works.

View all plugins
Stay in the loop

Get notified when we launch new plugins. No spam, just product updates.