> ## Documentation Index
> Fetch the complete documentation index at: https://help.stiddle.com/llms.txt
> Use this file to discover all available pages before exploring further.

# UTM Tracking - Everything You Need To Know In Stiddle

> Standardize your UTM parameters across ad platforms and other channels so Stiddle can attribute every click.

Consistent UTMs let Stiddle tie ad spend, campaigns, and creatives to conversions without relying on platform IDs alone.

## Skip to a specific section or begin scrolling

<Card title="Meta Ads" icon="meta" horizontal href="#meta-facebook-ads">
  Learn More
</Card>

<Card title="Google Ads" icon="google" horizontal href="#google-ads">
  Learn More
</Card>

<Card title="Combining UTMs - Adding Stiddle UTMs to Existing UTMs" icon="link" horizontal href="#combining-utms-adding-stiddle-utms-to-existing-utms">
  Learn More
</Card>

<Card title="ChatGPT" icon="openai" horizontal href="#chatgpt">
  Learn More
</Card>

<Columns cols={3}>
  <Card title="Microsoft Ads (Bing)" icon="microsoft" href="#microsoft-ads-bing" cta="Learn More" />

  <Card title="TikTok Ads" icon="tiktok" href="#tiktok-ads" cta="Learn More" />

  <Card title="LinkedIn Ads" icon="linkedin" href="#pinterest-ads" cta="Learn More" />
</Columns>

<Columns cols={3}>
  <Card title=" Twitter / X Ads" icon="twitter" href="#twitter-/-x-ads" cta="Learn More" />

  <Card title="Pinterest Ads" icon="pinterest" href="#company-profiles" cta="Learn More" />

  <Card title="Snapchat Ads" icon="snapchat" href="#snapchat-ads" cta="Learn More" />
</Columns>

<Columns cols={3}>
  <Card title="YouTube Ads" icon="youtube" href="#youtube-ads" cta="Learn More" />

  <Card title="AdRoll" icon="ad" href="#adroll" cta="Learn More" />

  <Card title="StackAdapt" icon="ad" href="#stackadapt" cta="Learn More" />
</Columns>

<Columns cols={3}>
  <Card title="MNTN" href="#mntn" cta="Learn More" />

  <Card title="Klaviyo" href="#klaviyo" cta="Learn More" />

  <Card title="MailChimp" href="#mailchimp" cta="Learn More" />
</Columns>

<Columns cols={3}>
  <Card title="ActiveCampaign" href="#activecampaign" cta="Learn More" />

  <Card title="Customer.Io" href="#customer-io" cta="Learn More" />

  <Card title="HubSpot" href="#hubspot" cta="Learn More" />
</Columns>

<Columns cols={3}>
  <Card title="SMS (Twilio or Generic)" href="#sms-twilio-or-generic" cta="Learn More" />

  <Card title=" Google Organic" href="#google-organic" cta="Learn More" />

  <Card title="LinkedIn Organic" href="#linkedin-organic" cta="Learn More" />
</Columns>

***

## Recommended UTM schema for Custom Channels

<Note>
  **Important** Use this structure below only for non-Google Ads or Meta (Facebook) Ads. Stiddle tracks Google and Meta Ads using a different structure. Read more below.
</Note>

| Parameter      | Example value                 | Notes                                      |
| -------------- | ----------------------------- | ------------------------------------------ |
| `utm_source`   | `bing`, `pinterest`, `tiktok` | Lowercase, channel-based.                  |
| `utm_medium`   | `paid_social`, `paid_search`  | Match your reporting taxonomy.             |
| `utm_campaign` | `2025-q1-prospecting`         | Human-readable name or campaign ID.        |
| `utm_content`  | `video_a_cp15`                | Creative or placement ID.                  |
| `utm_term`     | `{{keyword}}`                 | Use for search keywords or audience names. |

***

## Testing UTMs

* Use the **Natvie Ad Platform** and add the column **UTM Parameter / Tracking Template** to see if the Stiddle UTMs have been added.
* Check **Attribution Table → Columns → UTM columns / Tracking Template** to ensure values populate within minutes.

***

## Maintenance tips

* Update the templates whenever you rename campaigns; consistent casing prevents duplicate rows.
* Keep a shared spreadsheet of taxonomy rules so agencies and internal teams stay aligned.

***

## Combining UTMs - Adding Stiddle UTMs to Existing UTMs

**Adding the Stiddle UTM parameters to an ad with existing UTM parameters (both Google Ads, Facebook Ads, and others)**

If you are already using UTM parameters in your ad’s Tracking Template, you can simply add the following parameters to the end of your existing UTM parameter URL.

To append new parameters to the end of your existing UTM parameter URL, simply add an “&” then add the new parameter. Here’s an example:

Existing UTMs in place:

```text theme={null}
{lpurl}?utm_source=google&utm_keyword=advertiser
```

Stiddle UTM Tracking:

```text theme={null}
{lpurl}?st_source=google&st_medium=paid&st_campaign={{campaignId}}&st_content={{adGroupId}}&st_term={{keyword}}&gadid={{creative}}
```

Combined:

```text theme={null}
{lpurl}?utm_source=google&utm_keyword=advertiser&st_medium=paid&st_campaign={{campaignId}}&st_content={{adGroupId}}&st_term={{keyword}}&gadid={{creative}}
```

<Note>
  **Important** Please note that you should not use the name parameter twice in the same URL. For example if you are combining the Stiddle UTM parameters to an existing UTM parameter URL and they both have the same parameter such as utm\_campaign=myfavoritecampaign and the Stiddle UTM parameter, utm\_campaign=campaignId Stiddle will not be able to identify which parameter is a priority. In this case, please rename your existing parameter or simply add a “1” to the end of your existing (non-stiddle) parameter name.We recommend using the UTM parameter strings listed above that contain “st\_” to avoid issues like this. We’ve built our own version of “utm\_” to prevent issues with existing UTM parameters you may already be using. Using “st\_” ensures Stiddle is tracking every parameter string correctly, without interference.
</Note>

***

# UTM Tracking Templates by Platform

**(Copy & Paste Guide)**

All templates assume your destination URL is referenced as `{lpurl}` (or equivalent final URL field in each platform).

## Meta (Facebook) Ads

1. Navigate to **Data → UTM Manager**.
2. Copy the UTM listed (same one as below):

   ```
   ?st_source=facebook&st_campaign={{campaign.id}}&st_adset={{adset.id}}&st_adid={{ad.id}}
   ```
3. Apply account-wide and on every ad that you want to track, so every ad inherits the same format and is not missed by Stiddle.
4. **Important** Please note that if your ads do not contain the following tracking parameters, Stiddle may not be able track and attribute your ads accurately. Make sure to double check each UTM after setting up.

**Adding the UTM Parameters manually within Facebook**

When using Facebook Ads Manager, every ad you create or modify includes a Tracking section. Within this section, you’ll find a text field labeled “URL Parameters” where you can insert tracking parameters. For effective Pixel tracking, it’s essential to include our recommended tracking parameters in this field for each ad you wish to track. To streamline the process, you also have the option to edit multiple ads simultaneously on Facebook, eliminating the need to perform this task individually.

Navigate to your Facebook Ads Manager account, either select an existing ad to edit or create an ad.

Scroll down to the “Tracking” section, and paste your copied UTM parameter in the “URL Parameters” field within the Facebook ad.

Simply select “Publish” in the bottom right corner. That’s it, you’re all set!

<Note>
  **Important** Please note that when updating the URL with your UTM parameter, your ad will go into “processing” status. When in this “processing” status, Facebook may stop spend on your ads - this can take up to one hour until your ads become live again. In some rare cases, updating the ad with a UTM parameter may cause Facebook to reset the ad’s social proof and may cause it to go back into the “learning phase”.
</Note>

**Verifying that UTM parameters are setup correctly on my ads**

You can quickly verify that your UTM parameters are set up correctly on your ads using the Ads Manager. Go to your Facebook Ads Manager, then navigate to the Ads tab.

Simply select the “View Setup” toggle switch. You should now see a list of which ads have UTM parameters properly set up under the column “URL Parameters”. If an active ad doesn’t have a UTM parameter setup it will remain blank, if this is the case simply repeat the above process to add your UTM parameter to that ad.

If you do not see the “URL parameter” column in your ads manager after selecting “View Setup”, select the “Columns: Setup” button, scroll down and select the “Customize Columns” button.

From here, you will be able to select the columns you want to see in your Ads Manager. Simply search for “URL Parameter”, select, and click the “Apply” button at the bottom of the window. You should now see all of your UTM parameters listed for each ad.

***

## Google Ads

1. Navigate to **Data → UTM Manager**.
2. Copy the UTM listed (same one as below):

   ```
   {lpurl}?st_source=google&st_medium=paid&st_campaign={{campaignId}}&st_content={{adGroupId}}&st_term={{keyword}}&st_adid={{creative}}
   ```
3. Apply account-wide and on every ad that you want to track, so every ad inherits the same format and is not missed by Stiddle.

With Stiddle, there is also an option to auto-append UTMs with one click from Stiddle (for Google only). However, this may replace any existing UTMs you currently have, we highly recomened doing this process manually.

**Setting up UTM parameters for Google Ads**

<Note>
  **Important**  Please note that to set up UTM Parameters within a Google Ads account, you will need to have user or admin privileges to the ad account. A manager account (MCC) is also acceptable as long as you have access to the ad account.
</Note>

If you are not currently using any existing UTM parameters in your Google ads that you’d like to track using Stiddle, this is the easiest way to set up your UTM parameter tracking.

Login to your Stiddle account, select the workspace you’d like to start tracking, then navigate to your left hand menu and select “UTM Manager”.

Select “Google Ads” from the top menu - you should now see your UTM parameter displayed for Google Ads. Simply copy the UTM parameter by clicking “Copy UTM”.

**Recommended Stiddle UTMs For Google Ads**

You can also copy the UTM parameter string from above. We recommend using the first UTM parameter string with “st\_”. We’ve built our own version of “utm\_” to prevent issues with existing UTM parameters you may already be using. Using “st\_” ensures Stiddle is tracking every parameter string correctly, without interference. 

**Where to manually add the UTM Parameters in Google**

When setting up your UTM parameters within Google Ads, make sure to follow ALL of the following steps. If a parameter is missing or a UTM is in the wrong place, Stiddle may not track and attribute your ads accurately. There are three places to add the Stiddle UTM Parameters within your Google Ads account.

**Step 1: Adding UTM Parameters to Account Settings**

Go to your **Google Ads account**, then navigate to the left hand menu and select “Account Settings”. This is found under the “Settings” menu tab.

Navigate to the “Tracking” section, click to expand.

Paste the Stiddle Google Ads UTM parameter. This is found above (and below) or copied from the Stiddle UTM manager page within your Stiddle workspace. Select save.

You can also copy from here:

```text theme={null}
{lpurl}?st_source=google&st_medium=paid&st_campaign={{campaignId}}&st_content={{adGroupId}}&st_term={{keyword}}&st_adid={{creative}}
```

You’re all setup for your Google Account. Now you’ll need to add the Stiddle UTM parameters to your Campaign Settings. Proceed to the next step, “Campaign Settings”.

**Step 2: Adding UTM Parameters to Campaign Settings**

Navigate to the left hand menu and select “Campaign Settings”. This is found under the “Settings” menu tab.

Next, select (using the checkbox selector) all campaigns (top checkbox) or select the specific campaigns you want Stiddle to track.

Select the “Edit” dropdown, then scroll down and select “Change tracking templates”.

Paste the Stiddle Google Ads UTM parameter. This is found above (and below) or copied from the Stiddle UTM manager page within your Stiddle workspace. Select save.

You can also copy from here:

```text theme={null}
{lpurl}?st_source=google&st_medium=paid&st_campaign={{campaignId}}&st_content={{adGroupId}}&st_term={{keyword}}&st_adid={{creative}}
```

**Step 3: Adding UTM Parameters to AdGroups**

Navigate to the left hand menu and select “AdGroups”.

Next, select (using the checkbox selector) all ad groups (top checkbox) or select the specific ad groups you want Stiddle to track.

Select the “Edit” dropdown, then scroll down and select “Change tracking templates”.

Paste the Stiddle Google Ads UTM parameter. This is found above (and below) or copied from the Stiddle UTM manager page within your Stiddle workspace. Select save.

You can also copy from here:

```text theme={null}
{lpurl}?st_source=google&st_medium=paid&st_campaign={{campaignId}}&st_content={
```

***

## Microsoft Ads (Bing)

✅ Supports dynamic **campaign, ad group, and keyword names**

### Template

```
{lpurl}?utm_source=bing&utm_medium=cpc&utm_campaign={Campaign}&utm_term={AdGroup}&utm_content={Keyword}
```

### Example

```
https://example.com?utm_source=bing&utm_medium=cpc&utm_campaign=brand-search&utm_term=attribution&utm_content=stiddle
```

***

## TikTok Ads

✅ Uses TikTok’s double-underscore macros

### Template

```
{lpurl}?utm_source=tiktok&utm_medium=cpc&utm_campaign=__CAMPAIGN_NAME__&utm_term=__AID_NAME__&utm_content=__CID_NAME__
```

### Example

```
https://example.com?utm_source=tiktok&utm_medium=cpc&utm_campaign=ugc-test&utm_term=interest-founders&utm_content=creator-01
```

***

## LinkedIn Ads

✅ Supports dynamic **names** (ALL CAPS macros)

### Template

```
{lpurl}?utm_source=linkedin&utm_medium=cpc&utm_campaign={{CAMPAIGN_NAME}}&utm_term={{AD_SET_NAME}}&utm_content={{AD_NAME}}
```

### Example

```
https://example.com?utm_source=linkedin&utm_medium=cpc&utm_campaign=enterprise-saas&utm_term=revops-directors&utm_content=carousel-2
```

***

## Twitter / X Ads

⚠️ Does **not** reliably support names — use **IDs**

### Template

```
{lpurl}?utm_source=twitter&utm_medium=cpc&utm_campaign={{campaign_id}}&utm_term={{line_item_id}}&utm_content={{creative_id}}
```

### Example

```
https://example.com?utm_source=twitter&utm_medium=cpc&utm_campaign=19283746&utm_term=56473829&utm_content=99887766
```

***

## Pinterest Ads

✅ Supports dynamic **campaign, ad group, and ad names**

### Template

```
{lpurl}?utm_source=pinterest&utm_medium=cpc&utm_campaign={campaign_name}&utm_term={adgroup_name}&utm_content={ad_name}
```

### Example

```
https://example.com?utm_source=pinterest&utm_medium=cpc&utm_campaign=retargeting&utm_term=site-visitors&utm_content=pin-variation-a
```

***

## Snapchat Ads

⚠️ Mostly **ID-based** (names not guaranteed)

### Template

```
{lpurl}?utm_source=snapchat&utm_medium=cpc&utm_campaign={{campaign_id}}&utm_term={{ad_squad_id}}&utm_content={{ad_id}}
```

### Example

```
https://example.com?utm_source=snapchat&utm_medium=cpc&utm_campaign=445566&utm_term=778899&utm_content=112233
```

***

## YouTube Ads

(Managed via Google Ads → ValueTrack)

### Template

```
{lpurl}?utm_source=youtube&utm_medium=cpc&utm_campaign={campaignid}&utm_term={adgroupid}&utm_content={creative}
```

### Example

```
https://example.com?utm_source=youtube&utm_medium=cpc&utm_campaign=555666777&utm_term=999888777&utm_content=444333
```

***

## AdRoll

✅ Supports campaign, ad group, and creative names

### Template

```
{lpurl}?utm_source=adroll&utm_medium=cpc&utm_campaign={campaign_name}&utm_term={adgroup_name}&utm_content={ad_name}
```

### Example

```
https://example.com?utm_source=adroll&utm_medium=cpc&utm_campaign=site-retargeting&utm_term=30-day&utm_content=static-banner-1
```

***

## StackAdapt

⚠️ IDs recommended for consistency

### Template

```
{lpurl}?utm_source=stackadapt&utm_medium=cpc&utm_campaign={campaign_id}&utm_term={line_item_id}&utm_content={creative_id}
```

### Example

```
https://example.com?utm_source=stackadapt&utm_medium=cpc&utm_campaign=321654&utm_term=987123&utm_content=456789
```

***

## MNTN

⚠️ ID-first platform

### Template

```
{lpurl}?utm_source=mntn&utm_medium=cpc&utm_campaign={campaign_id}&utm_term={audience_id}&utm_content={creative_id}
```

### Example

```
https://example.com?utm_source=mntn&utm_medium=cpc&utm_campaign=908172&utm_term=665544&utm_content=332211
```

***

# Lifecycle & CRM Platforms

***

## Klaviyo

### Template

```
{lpurl}?utm_source=klaviyo&utm_medium=email&utm_campaign={{campaign.name}}&utm_content={{message.name}}
```

### Example

```
https://example.com?utm_source=klaviyo&utm_medium=email&utm_campaign=welcome-series&utm_content=email-1
```

***

## Mailchimp

### Template

```
{lpurl}?utm_source=mailchimp&utm_medium=email&utm_campaign=*|CAMPAIGN_TITLE|*&utm_content=*|LINK|*
```

### Example

```
https://example.com?utm_source=mailchimp&utm_medium=email&utm_campaign=monthly-newsletter&utm_content=cta-button
```

***

## ActiveCampaign

### Template

```
{lpurl}?utm_source=activecampaign&utm_medium=email&utm_campaign=%CAMPAIGNNAME%&utm_content=%LINKNAME%
```

### Example

```
https://example.com?utm_source=activecampaign&utm_medium=email&utm_campaign=product-update&utm_content=learn-more
```

***

## [Customer.io](http://Customer.io)

### Template

```
{lpurl}?utm_source=customer.io&utm_medium=email&utm_campaign={{campaign.name}}&utm_content={{message.name}}
```

### Example

```
https://example.com?utm_source=customer.io&utm_medium=email&utm_campaign=trial-nudge&utm_content=day-3
```

***

## HubSpot

### Template

```
{lpurl}?utm_source=hubspot&utm_medium=email&utm_campaign={{campaign.name}}&utm_content={{cta.name}}
```

### Example

```
https://example.com?utm_source=hubspot&utm_medium=email&utm_campaign=q1-launch&utm_content=request-demo
```

***

## SMS (Twilio or Generic)

### Template

```
{lpurl}?utm_source=twilio&utm_medium=sms&utm_campaign={Campaign}&utm_content={MessageName}
```

### Example

```
https://example.com?utm_source=twilio&utm_medium=sms&utm_campaign=promo-blast&utm_content=shortlink
```

***

# Organic & Referral

***

## Google Organic

```
https://example.com?utm_source=google&utm_medium=organic&utm_campaign=seo
```

***

## LinkedIn Organic

```
https://example.com?utm_source=linkedin&utm_medium=organic&utm_campaign=organic-post
```

***

## ChatGPT

```
https://example.com?utm_source=chatgpt&utm_medium=referral&utm_campaign=ai-discovery
```

***

# Final Notes

* **Do not mix names and IDs within the same platform**
* Paid traffic must always include `utm_medium=cpc` or `utm_medium=cpc`
* Email must always include `utm_medium=email`
* Direct traffic should **not** include UTMs
