Shulman UTM Attribution for Elementor

Description

Tracks attribution data from submitted fields, cookie snapshots, first-click cookies, server-side fallback, and WooCommerce attribution in a defined source-of-truth hierarchy.

Features:
* Elementor lead capture with attribution snapshot
* WooCommerce order attribution support
* First-touch and last-touch source tracking
* Leads dashboard with filters and CSV export
* Phone number storage for leads when a phone field exists
* Backward compatibility for legacy cookies, options, and meta keys

Installation

  1. Upload the plugin ZIP in WordPress admin or copy the plugin folder to /wp-content/plugins/.
  2. Activate the plugin.
  3. Configure settings from the plugin admin screen.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Shulman UTM Attribution for Elementor” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.10.8

  • Improved: Full attribution hierarchy resolver (resolve_attribution_dataset) with strict priority order:
    Explicit UTM Click IDs Referrer User-Agent First Touch Direct Untracked.
  • Improved: fbclid split logic — fbclid alone now resolves to facebook/social (organic intent).
    Upgrades to facebook/paid when fbclid appears together with ANY UTM parameter (utm_source, utm_medium, utm_campaign, utm_content, or utm_term), while preserving existing UTM values and only inferring missing fields.
  • Fixed: utm_medium=social (and any explicit utm_medium) is never overwritten by click ID inference.
  • Improved: direct vs untracked are now clearly separated. “direct” means tracking is functioning
    but no attributable source was found. “untracked” is reserved for complete tracking failure
    (all signals absent: no UTM, no click ID, no referrer, no UA match, no cookie, no first-touch).
  • Added: attribution confidence field (explicit / inferred / fallback / untracked) stored
    in DB and order meta.
  • Fixed: server_side_fallback no longer returns “untracked” for missing/internal referrers;
    the caller now decides direct vs untracked based on full signal inventory.
  • Improved: WooCommerce orders column and meta box now distinguish direct vs untracked visually.
  • Improved: Dashboard UTM source filter now lists direct and untracked as separate options.
  • Updated: DB schema version 1.4.0 — adds confidence column to wp_ute_leads table.
  • Updated: utm-tracker.js — fbclid click ID split logic, confidence field in cookie snapshot,
    internal navigation returns “direct” not “untracked”.

1.10.7

  • Fixed: fbclid normalization no longer overrides an explicitly set utm_medium=social.
    Previously, any visit with fbclid and utm_medium=social (e.g. an organic Facebook post
    tagged manually) would have its medium silently replaced.
    Existing UTM values are now preserved, and fbclid inference only completes missing fields.

1.10.6

  • Fixed remaining Plugin Check SQL issues (prepared statements compliance)
  • Improved security of database queries.
  • Cleaned uninstall logic for safer execution.

1.10.5

  • Removed remaining prebuilt SQL variables and inlined prepare() calls.
  • Reworked admin queries to avoid interpolated SQL variable patterns flagged by review.
  • Kept phone capture, dashboard display, and CSV export support intact.

1.10.4

  • Fixed admin SQL queries to use prepared statements consistently.
  • Escaped interpolated table names in dashboard queries.
  • Added missing translators comments and refreshed readme metadata.

1.10.3

  • Added plugin readme file for compliance.
  • Improved static analysis compatibility for admin SQL and translations.
  • Kept lead phone field support in DB, admin table, and CSV export.

1.10.2

  • Added lead phone field support.
  • Added phone column to leads screen and CSV export.