Your forms collect leads. UTM Tracker for Gravity Forms tells you which marketing earned them.
The plugin reads campaign data from the URL a visitor arrives on, remembers it in first-party cookies, and automatically fills matching hidden fields when any Gravity Form is submitted. Every entry arrives with the exact campaign, ad click, landing page, and traffic channel that generated it — ready for reports, CRM sync, and follow-up.
Stop guessing which marketing works. See which Google Ads campaign fills your pipeline, which social post actually converts, and which leads arrived from AI search — directly in your Gravity Forms entries.
Why UTM Tracker?
- Set up in minutes — a guided wizard connects your forms and creates the hidden fields for you
- Captures everything that matters — UTMs, click IDs from every major ad platform, landing pages, referrer, device data, and your own custom parameters
- Attribution built in — first-touch and last-touch models, plus automatic traffic channel detection including AI Search
- Reports included — a live attribution dashboard with interactive charts, right inside WordPress
- Campaign tools — a visual URL Builder with saved templates and print-ready QR codes
- Developer friendly — REST API, JavaScript API, shortcodes, and hooks
- Private by design — tracking data lives in first-party cookies and your own database; none of it is ever sent to external services
What gets captured
- UTM parameters —
utm_source, utm_medium, utm_campaign, utm_term, utm_content, utm_id
- Advertising click IDs — Google Ads (
gclid, gbraid, wbraid), Meta (fbclid), Microsoft (msclkid), TikTok (ttclid), LinkedIn (li_fat_id), X/Twitter (twclid)
- Custom parameters — add your own URL keys such as
affiliate, coupon, or salesperson; they appear automatically in the URL Builder, Templates, and field setup
- Landing pages & page context — first and current landing page, page URL, title, path, and query string
- Visitor & session data (optional) — browser, OS, device type, referrer, session ID, visit date, time, and timezone
To capture any value, add a
Hidden field in Gravity Forms with a matching parameter name — or let the One-Click Field Setup create the fields for you.
Attribution & traffic channels
Choose how returning visitors are recorded:
Last Touch (the most recent campaign wins) or
First Touch (the original campaign stays locked in). First/last touch UTM summaries are available on every lead.
Every visit is also classified into a marketing channel automatically — Paid Search, Organic Search, Paid Social, Organic Social, Email, Referral, Direct, and
AI Search, which recognizes visits from ChatGPT, Perplexity, Claude, and other AI platforms.
Reports dashboard
A live attribution summary read straight from your Gravity Forms entries: leads over time, traffic channel share, top sources, mediums and campaigns, plus device, form, and landing-page breakdowns. Click any chart to filter the leads table, download charts as PNG, and refresh on demand. No extra database tables, no external requests.
Campaign tools
- URL Builder — compose campaign links visually: pick fields, drag to reorder, live preview, one-click copy
- Templates — save complete campaign links as reusable templates with search, duplicate, and a default
- QR codes — a print-quality PNG or SVG for every campaign URL, generated entirely in your browser
Admin toolbox
Get Started wizard, One-Click Field Setup with duplicate detection, Cookie Manager, Debug Panel (admin page or
?utgf_debug=1 frontend overlay), settings export/import as JSON, and configurable cookie duration (1–3650 days).
For developers
- JavaScript API — the global
UTMTracker object: get(), getAll(), has(), clear(), and attribution helpers
- REST API —
GET /wp-json/utm-tracker/v1/current returns the active tracked values
- Dynamic shortcodes — for example
[utm_source] or [landing_page]
- Action & filter hooks — customize parameters, cookie behavior, field aliases, and more
Full documentation lives in the
Developer tab under UTM Tracker settings.
Privacy & performance
Tracking values are stored in first-party cookies and saved to Gravity Forms entries in your own database — tracking makes no external requests. The only external call the plugin can ever make is the optional email-updates signup in the Get Started wizard, with your explicit consent (see External Services below). The dependency-free frontend tracker loads deferred, and admin assets load only on the plugin's own pages.
For direct support, email admin@auxanoglobalservices.com.
Quick start (recommended)
- Install the plugin from Plugins → Add New, or upload the folder to
/wp-content/plugins/, then activate it.
- Make sure Gravity Forms is installed and activated.
- The Get Started wizard opens automatically — pick a form, choose the values to capture, and click Finish. The hidden fields are created for you and tracking is on.
Manual field setup
- Open UTM Tracker → Settings, turn on the tracking options you need, and set your cookie duration and attribution model.
- In Gravity Forms, add a Hidden field for each value you want to capture.
- On each hidden field, enable Allow field to be populated dynamically and enter the exact Parameter Name (for example
utm_source, gclid, or traffic_channel). The field label can be anything.
- Test with a campaign URL such as
https://example.com/contact/?utm_source=google&utm_medium=cpc&utm_campaign=summer_sale, then check UTM Tracker → Debug.
The complete, detailed changelog ships as
CHANGELOG.md inside the plugin.
2.2.8
- New: optional "Stay Updated" email signup on the final step of the Get Started wizard — opt in to hear about new features and security updates. Fully opt-in: nothing is sent without a valid email, a ticked consent checkbox, and Finish; Skip completes setup without subscribing, and subscriptions are also kept locally as a backup.
- With consent, your email and basic site information are sent so we can notify you about plugin updates — see the External Services section for details.
- New developer filters:
utgf_subscription_endpoint and utgf_subscription_api_key; the existing utgf_process_subscription filter still lets an external provider take over.
- Fixed: on forms containing a File Upload field, the tracker could throw an error while filling fields at submit time, blocking the AJAX submission. The tracker now never writes into file, checkbox, radio, password, or button inputs, and field filling can no longer interrupt a submission.
- Improved: the frontend tracker (renamed
utgf-tracker.js) is versioned by file modification time, so browsers and CDNs always fetch fresh copies after updates.
- No other changes to tracking, attribution, cookies, REST/JS APIs, or shortcodes — fully backward compatible.
2.2.7
- Reports upgrades: full-width Leads Over Time trend chart, Device / Leads by Form / Top Landing Pages breakdowns, channel doughnut with clickable legend, combinable click-to-filter on the leads table, PNG download and copy for every chart, and a Refresh button.
- URL Builder design refresh: three-column responsive layout with a sticky preview, multiselect "Add Field" picker, resizable URL preview, and improved spacing and focus styles.
- Fixed a QR code race condition so it renders instantly on page load.
2.2.6
- New Reports dashboard (UTM Tracker → Reports) — a 7-day lead attribution summary read live from Gravity Forms entries: totals, channel/source/medium/campaign breakdowns with interactive charts, and a searchable recent leads table. No new database tables; cached with automatic refresh.
- Fixed traffic channel misclassification of direct visitors as Referral; the channel detected on arrival now stays stable across internal navigation.
- Improved AI Search detection with domain-style sources (
chatgpt.com, perplexity.ai, claude.ai, and more).
2.2.5
- Added a QR Code generator to the URL Builder with print-quality PNG and scalable SVG downloads, generated entirely in the browser.
- Added an opt-in uninstall cleanup setting (off by default) under Settings → Import / Export.
- Rewrote the plugin documentation and expanded the FAQ.
2.2.4
- Removed development-only tooling from the plugin package. No functional changes.
2.2.3
- Templates list upgraded with DataTables — instant search, column sorting, and pagination, bundled locally.
2.2.2
- Redesigned URL Builder: choose your fields, drag to reorder, add notes, and save complete campaign links as named templates.
- New Templates management screen with search, pagination, duplicate, set default, and per-row actions.
- Added a centralized field registry, a templates database table with a repository layer, and REST endpoints under
utm-tracker/v1.
2.2.1
- Added the Get Started onboarding wizard and One-Click Field Setup with duplicate detection.
- Frontend and admin scripts now load with the defer strategy; assets load only on plugin pages.
- Fixed Query String tracking to work independently of Landing Pages.
2.2.0
- Major attribution update: first/last touch models, landing page tracking, automatic traffic channel detection including AI Search, and custom parameter tracking.
- Added the REST API endpoint,
UTMTracker JavaScript API, dynamic shortcodes, Cookie Manager, Debug Panel, URL Builder, and settings export/import.
- Improved Gravity Forms integration with server-side population, field aliases, and AJAX/multi-page support.
2.1.0
- Admin UI refresh with Lucide icons, redesigned navigation, and bug fixes.
2.0.0
- Rebuilt with a namespaced OOP architecture; expanded tracking, attribution models, debug tools, and removed the jQuery dependency.
1.1.0
- Added a settings page and configurable cookie duration.
1.0