Skip to content New SourceLoop MCP: chat with your attribution data in Claude, ChatGPT & Cursor
SourceLoop

How to Track UTM Parameters in Your CRM: A Guide

Learn how to track UTM parameters in your CRM to prove marketing ROI. Our guide covers setup, first vs. last touch attribution, and building insightful reports.

How to Track UTM Parameters in Your CRM: A Guide
UTM parameters being tracked from website to CRM dashboard

Your CRM shows 50 new leads this month, but you have no idea which marketing campaigns generated them. The UTM parameters you carefully added to every ad and email link never made it into your CRM records.

This isn't a setup error on your part.

Most CRMs simply can't capture UTM parameters on their own.

Learning how to track UTM parameters in CRM systems properly requires understanding why this gap exists and implementing the right tracking solution.

What Are UTM Parameters?

UTM (Urchin Tracking Module) parameters are tags added to the end of URLs to track where your website traffic originates. When someone clicks a link with UTM parameters, those tags tell you exactly which campaign, channel, and content brought them to your site.

The five standard UTM parameters are:

Parameter

Purpose

Example

utm_source

Identifies the traffic source

google, facebook, newsletter

utm_medium

Identifies the marketing medium

cpc, email, social

utm_campaign

Identifies the specific campaign

spring_sale, webinar_2026

utm_term

Identifies paid search keywords

marketing+attribution

utm_content

Differentiates similar links

sidebar_cta, header_button

A complete UTM link looks like this:

yoursite.com/pricing?utm_source=google&utm_medium=cpc&utm_campaign=spring_sale&utm_term=crm+software

When you track these parameters in your CRM, you can see which campaigns generate not just clicks, but actual leads, customers, and revenue. This is far more valuable than the session data you see in Google Analytics, which shows website traffic but doesn't connect that traffic to closed deals.

Why CRMs Can't Track UTM Parameters Automatically

Your CRM isn't broken. It's just not designed to capture marketing attribution data from website visitors. Here's why the gap exists and why learning how to track UTM parameters in CRM requires additional tools.

1. UTM Parameters Only Live in the URL

UTM parameters exist exclusively in the page URL. The moment a visitor navigates to a different page, those parameters vanish from the address bar.

Imagine this common scenario:

  1. A visitor clicks your Google Ads campaign link with UTM parameters

  2. They land on your homepage (UTMs are in the URL)

  3. They click to your pricing page (UTMs are gone)

  4. They navigate to your case studies page (still no UTMs)

  5. They fill out your contact form (the form sees a clean URL with no parameters)

Your CRM receives the lead with no source information. The attribution data was lost at step 3.

Diagram showing how UTM parameters are lost during multi-page navigation

According to research from LeadSources, this multi-page navigation problem affects the majority of B2B leads.

Most visitors browse 3-5 pages before converting, which means most UTM parameters disappear before the form submission happens. The utm_source, utm_medium, and utm_campaign data that could tell you whether a lead came from paid ads, organic search, or email marketing is simply gone.

2. CRMs Don't Have Website Tracking Built In

CRMs like HubSpot, Salesforce, Pipedrive, and Microsoft Dynamics 365 are designed to manage contacts and deals, not track website behavior. They receive data when someone submits a form or when you manually import records. They don't monitor what happens before that moment.

Without a tracking script running on your website, your CRM has no way to see:

  • Where visitors came from

  • What pages they viewed

  • How many sessions they had before converting

  • Which campaigns influenced their decision

  • What ads or content they clicked

The CRM only knows what you explicitly send to it through form submissions, API calls, or integrations. This is why Microsoft Dynamics 365, despite being a powerful enterprise CRM, still requires third-party tools or custom development to capture UTM data from website visitors.

3. The Subdomain and Redirect Problem

Many businesses host their main website on one domain and their forms or booking pages on a subdomain (like forms.yoursite.com or book.yoursite.com). UTM parameters don't automatically transfer across domain boundaries.

A visitor lands on yoursite.com with UTM parameters, clicks through to forms.yoursite.com, and submits. Your CRM records them as direct traffic with no source.

Similarly, 301 redirects often strip query parameters during the redirect process. If your campaign URLs redirect through multiple hops, the UTMs may never reach the landing page at all. According to Moz's technical SEO guide, improper redirect configuration is one of the most common causes of lost tracking parameters.

How Sourceloop Solves the UTM Tracking Problem

Sourceloop is built specifically to capture marketing attribution data and connect it to your CRM records. Here's how it works and why it solves the problems that native CRM tracking can't.

How Sourceloop captures and preserves UTM parameters through the conversion journey

First-Party Tracking Captures UTMs at First Touch

When you install Sourceloop's tracking code on your website, it immediately captures UTM parameters (and other attribution data) the moment a visitor lands on any page. This data is stored in a first-party cookie in the visitor's browser.

The cookie persists as the visitor navigates between pages, across sessions, and even if they return days later. The UTM parameters are preserved regardless of how many pages they view before converting. This solves the multi-page navigation problem that breaks most UTM tracking implementations.

Attribution Data Flows Through 100+ Conversion Points

Sourceloop integrates with over 100 form builders, meeting schedulers, live chat tools, and conversion tracking systems, including:

When a visitor converts through any of these channels, Sourceloop automatically attaches the stored attribution data to that conversion. The lead arrives in your CRM with complete source information, not just the UTM parameters but the entire visitor journey.

CRM Sync Writes Attribution Fields Directly into Your CRM

Sourceloop connects directly to HubSpot, Pipedrive, and Salesforce. It creates custom attribution fields in your CRM and populates them automatically for every new lead:

  • First touch source, medium, campaign, term, content

  • Latest touch source, medium, campaign, term, content

  • Landing page URL

  • Full visitor journey (every session, page, and referrer)

  • Lead score

Step-by-Step: How to Track UTM Parameters in Your CRM with Sourceloop

Here's the complete implementation process, from account setup to seeing attribution data in your CRM. This guide works for any CRM system, whether you're using HubSpot, Salesforce, Microsoft Dynamics 365, or any other platform.

Step 1: Create Your Sourceloop Account

ai-image-1785076507707-2kxav5
  1. Go to sourceloop.ai and sign up for a free 7-day trial

  2. Choose the plan that matches your traffic volume (Essential, Professional, or Agency)

  3. Complete the account setup and verify your email

No credit card is required for the trial. You'll have full access to all features during the trial period, including CRM sync and unlimited conversion tracking.

Step 2: Install the Sourceloop Tracking Code on Your Website

Sourceloop provides a small JavaScript snippet that needs to be added to every page of your website. This code captures visitor behavior and attribution data, including all UTM parameters from inbound links.

Sourceloop tracking code

For WordPress sites:

  1. In your Sourceloop dashboard, navigate to Settings → Installation

  2. Copy the tracking code snippet

  3. Install a header/footer plugin like Insert Headers and Footers

  4. Paste the Sourceloop code in the header section

  5. Save and verify the code appears on your site

For custom websites:

  1. Copy the tracking code from your Sourceloop dashboard

  2. Add it to your site's <head> section, just before the closing </head> tag

  3. Deploy the change to your production site

  4. Verify installation by checking the Sourceloop dashboard for incoming traffic

Step 3: Configure Your Conversion Tracking

Sourceloop needs to know which actions on your website count as conversions. This could be form submissions, meeting bookings, phone calls, or chat conversations.

For form submissions:

Sourceloop automatically detects and tracks most popular form builders without additional configuration. Supported platforms include:

If you're using a custom form or an unsupported builder, you can set up conversion tracking manually using Sourceloop's JavaScript SDK:

sourceloop.track('Lead Form Submitted', {
 email: '[email protected]',
 name: 'John Smith'
});

For meeting bookings:

If you use Calendly, Cal.com, or another scheduling tool, Sourceloop can track when meetings are booked:

  1. Navigate to Integrations in your Sourceloop dashboard

  2. Connect your scheduling platform

  3. Configure which event types should be tracked as conversions

For phone calls:

If you use call tracking software like CallRail or CallTrackingMetrics:

  1. Connect your call tracking platform in the Sourceloop integrations section

  2. Map which call outcomes (answered, qualified, etc.) count as conversions

  3. Sourceloop will attribute calls to the visitor's original source, including the utm_source and utm_campaign that brought them to your site

Step 4: Connect Your CRM

This is where the attribution data flows from Sourceloop into your CRM records. The process varies slightly depending on which CRM you use.

CRM integration

For HubSpot:

  1. In Sourceloop, go to Integrations → CRM

  2. Click "Connect HubSpot"

  3. Authorize Sourceloop to access your HubSpot account

  4. Sourceloop automatically creates custom properties for attribution data

  5. Map your conversion events to HubSpot lifecycle stages (optional)

Once connected, every new contact in HubSpot will have fields like:

  • First Touch Source

  • First Touch Medium

  • First Touch Campaign

  • Latest Touch Source

  • Latest Touch Medium

  • Latest Touch Campaign

  • Landing Page

  • Lead Score

For Pipedrive:

  1. Navigate to Integrations → CRM in Sourceloop

  2. Click "Connect Pipedrive"

  3. Enter your Pipedrive API token

  4. Sourceloop creates custom fields in Pipedrive for attribution data

  5. Configure which pipeline stage new leads should enter

For Salesforce:

  1. Go to Integrations → CRM

  2. Click "Connect Salesforce"

  3. Authorize the connection

  4. Sourceloop creates custom fields on Lead and Contact objects

  5. Map your conversion events to Lead Status values

For Microsoft Dynamics 365 and other CRMs (webhook method):

If your CRM isn't directly supported, use Sourceloop's webhook integration. This is the most flexible way to track UTM parameters in CRM systems like Microsoft Dynamics 365, Zoho, or custom-built platforms:

  1. In Sourceloop, go to Integrations → Webhooks

  2. Create a new outgoing webhook

  3. Enter your CRM's webhook URL (or use Zapier or Make as an intermediary)

  4. Configure which conversion events trigger the webhook

  5. Map the attribution data fields to your CRM's field structure

The webhook sends a JSON payload containing all attribution data:

{
 "email": "[email protected]",
 "name": "John Smith",
 "first_touch_source": "google",
 "first_touch_medium": "cpc",
 "first_touch_campaign": "spring_sale",
 "latest_touch_source": "email",
 "latest_touch_medium": "newsletter",
 "landing_page": "https://yoursite.com/pricing",
 "journey": [...]
}

Your CRM or automation platform receives this data and creates or updates the contact record accordingly. This webhook approach works with virtually any CRM that can receive HTTP POST requests, making it the universal solution for how to track UTM parameters in CRM systems.

Step 5: Verify Data is Flowing Correctly

After setup, test the complete flow to ensure UTM parameters are being captured and synced:

  1. Clear your browser cookies

  2. Visit your website using a URL with UTM parameters (create a test link like yoursite.com?utm_source=test&utm_medium=email&utm_campaign=verification)

  3. Browse a few pages on your site

  4. Submit a form or complete another conversion action

  5. Check your CRM to verify the lead appears with correct attribution data

user journey tracking.webp

Example Reports You Can Run with UTM Parameters in Your CRM

Once UTM parameters are flowing into your CRM, you can build reports that connect marketing spend to actual revenue. Here are four reports that change how you allocate budget.

Marketing channel performance comparison showing leads vs customers

Leads by Channel

This report shows how many leads each marketing channel generated in a given period. You can build this in any CRM by grouping contacts by their First Touch Source field.

Channel

Leads

Percentage

Paid Search

87

35%

Paid Social

62

25%

Organic Search

45

18%

Email

31

12%

Direct

25

10%

You can see which channels are driving volume, but volume alone doesn't tell you which channels are worth the investment. According to HubSpot's State of Marketing report, 40% of marketers say proving ROI is their top challenge. This is where tracking UTM parameters in your CRM becomes essential.

Customers by Channel

This report shows how many leads from each channel actually became customers. Build this by filtering your CRM contacts to "Customer" status and grouping by First Touch Source.

Channel

Leads

Customers

Conversion Rate

Paid Search

87

12

13.8%

Paid Social

62

4

6.5%

Organic Search

45

9

20%

Email

31

7

22.6%

Direct

25

5

20%

Now you can see that Paid Social generates leads but converts poorly, while Email and Organic Search have higher conversion rates despite lower lead volume. This insight is only possible when you track UTM parameters in your CRM and connect them to deal outcomes.

Revenue by Campaign

This report shows total revenue generated by each specific campaign. Build this by grouping won deals by their First Touch Campaign field and summing the deal values.

Campaign

Spend

Leads

Customers

Revenue

ROAS

Spring Sale - Google

$3,200

42

8

$48,000

15x

Spring Sale - Facebook

$2,800

38

2

$12,000

4.3x

Webinar Promo

$1,500

24

6

$36,000

24x

Retargeting

$900

15

4

$24,000

26.7x

This is where UTM tracking becomes powerful. You can see that your webinar campaign and retargeting efforts are dramatically outperforming your main paid campaigns, even though they generate fewer leads. This level of insight requires tracking the utm_campaign parameter all the way through to closed revenue.

Cost Per Customer by Source

This report calculates how much you're actually paying to acquire a customer from each source. Build this by dividing total ad spend by the number of customers acquired from each utm_source.

Source

Total Spend

Customers

Cost Per Customer

Google Ads

$8,400

21

$400

Facebook Ads

$6,200

8

$775

LinkedIn Ads

$4,100

6

$683

Email (paid)

$1,200

7

$171

These numbers tell you where to increase spend and where to cut back. Email marketing is acquiring customers at $171 each while Facebook is costing $775 per customer. According to WordStream's advertising benchmarks, the average cost per acquisition varies dramatically by industry, making it essential to track your own data.

Frequently Asked Questions

Can I track UTM parameters without using a third-party tool?

Technically yes, but it requires significant development work. You'd need to build custom JavaScript to capture UTMs, store them in cookies, pass them through forms, and sync them to your CRM via API. For most businesses, using a purpose-built tool like Sourceloop is faster and more reliable than building a custom solution. According to Stack Overflow's developer survey, the average developer hourly rate makes custom development far more expensive than using an existing solution.

Will tracking UTM parameters slow down my website?

No. Sourceloop's tracking script is lightweight (under 15KB) and loads asynchronously, meaning it doesn't block your page from rendering. The impact on page load time is negligible, typically under 50 milliseconds. Google's PageSpeed Insights confirms that properly implemented tracking scripts have minimal impact on Core Web Vitals.

How long does Sourceloop store attribution data?

Attribution data is stored in a first-party cookie for 365 days by default. This means if a visitor first arrives from a Google Ad, browses your site, leaves, and returns three months later to convert, Sourceloop will still attribute that lead to the original Google Ad campaign. This 365-day window aligns with typical B2B sales cycles.

Can I track offline conversions?

Yes. If you track phone calls through CallRail or CallTrackingMetrics, Sourceloop can attribute those calls to the visitor's original source. For truly offline conversions (like in-person events), you can manually import leads into Sourceloop with attribution data if you capture it at the point of conversion.

Does this work with privacy regulations like GDPR?

Yes. Sourceloop uses first-party cookies on your own domain, which is compliant with GDPR when properly disclosed in your privacy policy. Sourceloop also offers a cookieless tracking mode for businesses that need to operate without any cookies at all. According to the GDPR official guidance, first-party cookies used for analytics are generally permitted with proper disclosure.

What happens if someone uses multiple devices?

Sourceloop tracks attribution per device/browser. If a visitor first arrives on mobile, then later converts on desktop, Sourceloop will attribute the conversion to the desktop session's source unless you implement cross-device identity stitching (available in Sourceloop Professional and Agency plans).

Can I see the full visitor journey, not just first and last touch?

Yes. Sourceloop captures every session, page view, referrer, and campaign interaction from first visit to conversion. You can view the complete journey timeline in the Sourceloop dashboard and optionally sync it to your CRM as a JSON field. This gives you visibility into every utm_source, utm_medium, and utm_campaign that influenced the lead.

Is it safe and legal to track where my leads come from?

Yes. Tracking lead sources using UTM parameters and first-party cookies is legal in all major jurisdictions when you:

  1. Disclose your tracking practices in your privacy policy

  2. Obtain consent where required (EU, California, etc.)

  3. Use first-party tracking on your own domain

  4. Don't collect sensitive personal data without explicit consent

Sourceloop uses first-party tracking, which means the data stays on your domain and isn't shared with third parties. This is far more privacy-friendly than third-party tracking pixels. According to privacy regulations like GDPR, first-party analytics for understanding your own website performance is considered a legitimate business interest.

How reliable is the data I'll be getting?

The data is highly reliable when properly implemented. Sourceloop captures attribution data at the first touch and stores it in a persistent cookie, which means it's not affected by:

  • Multi-page navigation

  • Session timeouts

  • Subdomain crossings (when configured)

  • Form location changes

The main factors that can affect data reliability are:

  • Users who block cookies entirely (typically 5-10% of traffic)

  • Users who clear cookies between visits

  • Cross-device conversions (unless you use identity stitching)

Can Google Analytics track all my marketing channels?

Google Analytics tracks website traffic and can show you which channels drive sessions and goals. However, it has limitations:

  1. It doesn't sync data to your CRM - You can see traffic in GA, but your sales team can't see where each lead came from in the CRM

  2. It can't track offline conversions - Phone calls, in-person meetings, and manual deals aren't captured

  3. It doesn't connect to revenue - GA shows goal completions, but doesn't know which leads became customers or how much revenue they generated

Sourceloop complements Google Analytics by connecting the attribution data to your CRM records and closed revenue. Many businesses use both: Google Analytics for website analytics and Sourceloop for lead attribution and revenue tracking.

Start Tracking UTM Parameters in Your CRM Today

Knowing which marketing campaigns generate leads is useful. Knowing which campaigns generate customers and revenue is essential.

When you track UTM parameters in your CRM, you stop guessing about marketing performance and start making decisions based on actual customer acquisition data. You can see which channels deserve more budget, which campaigns are wasting money, and which content is driving the highest-value leads.

Sourceloop makes this connection automatic. Install the tracking code, connect your CRM, and every lead that arrives will carry complete attribution data from first touch to conversion. Whether you're using HubSpot, Salesforce, Microsoft Dynamics 365, or any other CRM, Sourceloop provides the missing link between your marketing campaigns and your revenue data.

Start your free 7-day trial and see exactly which campaigns are driving your revenue.

Share this post

Post on X Share on LinkedIn

Keep reading

All posts

Track every conversion to its true source

Capture and send full attribution data from every signup, lead, booking, and sale to your CRM and ad platforms, so you know exactly what's driving revenue.

Without SourceLoop

Untagged

Kayden Floyd

kayden@abc.com

  • SourceUnknown
  • MediumUnknown
  • CampaignUnknown
  • Landing pageUnknown
Journey
No touchpoints captured

With SourceLoop

Auto-tagged

Kayden Floyd

kayden@abc.com · Acme Co.

  • Channel Paid Social
  • CampaignFree_demo
  • Landing page/pricing
Journey
Synced to HubSpot Google Ads Meta