KnowUTMPro
Detects UTM links, tracks the full visitor flow across your site, and automatically attaches UTM parameters to every link, button and form.
KnowUTM Pro answers the question every marketer asks: which campaign actually brought this person, and what did they do next?
It does three jobs.
1. It detects the campaign. The moment someone lands on a tagged link, KnowUTM Pro captures `utm_source`, `utm_medium`, `utm_campaign`, `utm_term`, `utm_content` and `utm_id`, plus advertising click IDs (`gclid`, `fbclid`, `msclkid`, `ttclid`, `li_fat_id` and more) so paid traffic is recognised even when the UTM tags are missing. It classifies each visit into a channel — Paid Search, Paid Social, Organic Search, Organic Social, Email, Affiliate, Referral or Direct — and stores both the first touch and the last touch.
2. It tracks the flow. Every session becomes a readable timeline: the landing page, each page viewed, the buttons clicked, outbound links, file downloads, form submissions, scroll depth and conversions — in order, with timestamps. Open any visit and read the path the person took from the ad to the thank-you page.
3. It carries the parameters everywhere. The campaign parameters are appended to every internal link, to buttons that navigate via `data-href`, to allowlisted external domains for cross-domain journeys, and as hidden fields on every form — so the attribution arrives in your CRM attached to the lead. New links added by page builders, popups and AJAX are handled automatically.
What you get
- Dashboard — sessions, unique visitors, campaign share, conversions, conversion rate, average session length and tracked revenue, with a daily chart and top sources, mediums, campaigns, channels, referrers and landing pages.
- Visitor Flows — a searchable, filterable list of every session, with a full timeline view for each one and a history of that visitor's other visits.
- Campaigns — every source / medium / campaign combination with sessions, visitors, pageviews, average time, conversions, conversion rate and revenue.
- Link Builder — build correctly tagged campaign links with presets, autocomplete from your existing campaigns, lowercase normalisation and a live preview of how the link will be classified.
- Settings — full control over parameters, decoration, events, conversions, privacy and retention.
- AI Connector — an MCP server you name yourself, so Claude can read your campaign reports, trace a visitor's journey and build tagged links, using an account you control and permissions you choose.
Ask your AI about your campaigns
KnowUTM Pro ships an MCP server, so Claude and other AI clients can read your analytics directly instead of you exporting a spreadsheet. Ask "which channel drove the most revenue last month" or "what did the people who bought yesterday do before converting" and get an answer from your own data.- You name the server. Whatever you call it under AI Connector is what appears in the client, in the approval screen and in the generated bundle.
- Read only by default. Sixteen tools, each classified green, amber or red. Writing anything is off until you switch it on, limited to an allowlist of tracking settings, and it shows you the change before it makes it.
- It can never do more than you. A token carries the WordPress capabilities of the account that created it. Tokens are stored as a hash, shown once, and revocable at any time.
- Sign in with OAuth or a token. Claude registers itself and sends you through an approval screen where you tick the permissions to grant. Or generate a token and paste it.
- Downloadable bundles. A .mcpb bundle and a companion Claude plugin — skill, subagent and connector — generated for your site with one click.
- It asks instead of guessing. When a tool would otherwise have to pick for you — which of five pages is really your thank-you page, whether to save a settings change — it puts the question to you in your AI client and waits. Clients that cannot show a prompt fall back to plain confirmation, so nothing ever gets stuck.
- It writes your links properly. Ask it for a campaign link and it checks the values against the ones your site already uses. Say "fb" on a site that has always said "facebook" and it tells you, with the session count behind each, rather than quietly splitting the campaign in two.
- It tells you what to track. Ask "what should I be tracking?" and it inspects your actual site — your pages, your form plugins, your WooCommerce endpoints, and the buttons your visitors really click — then gives you prioritised suggestions with the numbers behind each one and the exact setting that would fix it.
- It writes the report. One call returns a proper report: summary, channels, campaigns, conversions, what moved since last period, and honest warnings when a number is misleading.
- Built to coexist. Its OAuth endpoints and discovery documents live under their own REST namespace, so another MCP plugin on the same site cannot break it, and it will not break that plugin either.
Integrations
- WooCommerce — attribution saved on every order, shown in a meta box on the order screen, with the order total recorded as a conversion.
- Contact Form 7 — an attribution block appended to notification emails.
- Gravity Forms — attribution stored as entry meta.
- Any form plugin — hidden fields are injected into every form, so the values arrive with the submission.
- Google Tag Manager — every event is pushed to `window.dataLayer`.
- User registration — attribution saved to user meta, so you know which campaign produced each account.
Privacy
KnowUTM Pro is first-party and self-hosted. Nothing leaves your server.- IP addresses are never stored — only a salted SHA-256 hash, anonymised by default.
- Optional Do Not Track support and a consent gate that blocks all storage until consent is given.
- Registered with the WordPress privacy exporter and eraser, so personal data requests are handled properly.
- A configurable retention window deletes old data automatically.
Shortcodes
`[knowutm_value key="utm_campaign" default="our site"]` `[knowutm_if key="utm_source" value="facebook"]Welcome, Facebook friend![/knowutm_if]` `[knowutm_link url="https://partner.example.com" text="Claim the offer"]` `[knowutm_fields]`For developers
PHP:`knowhalim_knowutm_pro_get_attribution()` `knowhalim_knowutm_pro_get_value( 'utm_source', 'direct' )` `knowhalim_knowutm_pro_add_params( $url )` `knowhalim_knowutm_pro_is_campaign_visitor()` `knowhalim_knowutm_pro_track_conversion( 'lead', 250.00 )` `knowhalim_knowutm_pro_track_event( 'video_complete' )`
JavaScript:
`KnowUTM.getAttribution()` `KnowUTM.decorate( url )` `KnowUTM.track( 'video_play' )` `KnowUTM.conversion( 'signup', 99 )` `KnowUTM.refresh()` `KnowUTM.grantConsent()`
Filters: `knowhalim_knowutm_pro_should_track`, `knowhalim_knowutm_pro_tracked_params`, `knowhalim_knowutm_pro_channel`, `knowhalim_knowutm_pro_capability`, `knowhalim_knowutm_pro_cookie_domain`, `knowhalim_knowutm_pro_tracker_config`.
Actions: `knowhalim_knowutm_pro_session_started`, `knowhalim_knowutm_pro_event_recorded`.
Built and maintained by Knowhalim.