Why Does Pinterest Ads UTM Tracking Matter?
Pinterest is the only major ad platform where users actively plan purchases — 80% of weekly Pinners have discovered a new brand or product on the platform, according to Pinterest Business. That purchase intent makes attribution data worth its weight in gold.
And here's what most marketers miss: Pinterest offers 18 dynamic tracking parameters. Eighteen. That's more than Meta (8), LinkedIn (4), or TikTok (7). Google Ads still leads with 15+ ValueTrack macros, but Pinterest quietly built one of the most granular tracking systems in paid social.
The problem? Almost nobody uses them. I ran an audit on a client's Pinterest campaigns last year — 23 active ad groups, every single URL hand-typed with static values. When they renamed "Holiday Gift Guide" to "Q4 Gifting 2025" mid-flight, three weeks of campaign data split into two unconnectable segments in GA4. A {campaignid} macro would have prevented that in five seconds.
What Are Pinterest's 18 Dynamic Parameters?
Pinterest dynamic parameters auto-populate your UTM values with live campaign data at click time. They use single curly braces with lowercase — {parameter} — identical syntax to Google Ads, which makes them easy to remember if you already run Search campaigns.
Here's the complete reference:
| # | Parameter | What It Inserts | Recommended UTM Field |
|---|---|---|---|
| 1 | {campaign_name} | Campaign name | utm_campaign |
| 2 | {campaignid} | Campaign ID (numeric) | utm_id |
| 3 | {ad_group_name} | Ad group name | utm_term |
| 4 | {adgroupid} | Ad group ID | utm_campaign |
| 5 | {adid} | Ad ID | utm_content |
| 6 | {creative_id} | Creative/Pin ID | utm_content |
| 7 | {promoted_pin_id} | Promoted Pin ID | utm_content |
| 8 | {keyword} | Matched keyword (search) | utm_term |
| 9 | {keyword_id} | Keyword ID | utm_term |
| 10 | {device} | Device: mobile, tablet, web | custom param |
| 11 | {placement} | Where ad appeared | utm_source |
| 12 | {site_domain} | Domain of placement site | utm_source |
| 13 | {product_id} | Product ID (Shopping) | utm_term |
| 14 | {product_group_id} | Product group ID (Shopping) | utm_term |
| 15 | {product_partition_id} | Product partition ID | custom param |
| 16 | {creative_type} | Creative format type | custom param |
| 17 | {locale} | User's locale (en-US, de-DE) | custom param |
| 18 | {unescaped_url} | Raw destination URL | diagnostic |
Not every parameter belongs in a UTM field. Parameters 10, 15–18 work best as custom query parameters for CRM or BI tools rather than standard UTM values. But having 18 options means you can build extremely detailed attribution without typing a single campaign name by hand.
Pro tip: UTM Generator has all 18 Pinterest macros built into the interface. Select "Pinterest Ads" from the network dropdown and each field shows the recommended dynamic parameters with the correct
{lowercase}syntax — no copy-pasting from documentation.
How Do You Set Up UTM Tracking in Pinterest Ads Manager?
Pinterest Ads Manager accepts UTM parameters in the destination URL field at the Pin level. You append parameters to your landing page URL exactly like Google Ads — full URL with ? included.
Step 1: Build your tracking URL
Start with your landing page, then add your UTM string:
https://example.com/collection?utm_source=pinterest&utm_medium=paid_social&utm_campaign={campaign_name}&utm_content={creative_id}&utm_term={ad_group_name}&utm_id={campaignid}
Step 2: Paste into the Pin's destination URL
In Ads Manager, go to your ad group → select the Pin → paste the full URL into the Destination link field.
Step 3: Use the Preview tool
Click "Preview" in Ads Manager. Open the link. Check that your browser's address bar shows resolved values — actual campaign names and IDs, not the curly brace syntax. If you see {campaign_name} literally in the URL bar, something went wrong.
That's it. Three steps. But most Pinterest advertisers skip dynamic parameters entirely and type static values, which breaks the moment anyone renames a campaign.
What's the Best UTM Template for Pinterest Ads?
The Clean Signal Method template for Pinterest:
?utm_source=pinterest&utm_medium=paid_social&utm_campaign={campaign_name}&utm_content={creative_id}&utm_term={ad_group_name}&utm_id={campaignid}
Why these specific values:
utm_source=pinterest — Static. The traffic source is always Pinterest. Don't use pin, pins, or pinterest_ads — keep it clean and consistent with your source taxonomy across all platforms.
utm_medium=paid_social — Matches GA4's Default Channel Grouping. Writing cpc or social sends your Pinterest traffic to GA4's "Unassigned" bucket, and you lose all channel-level reporting. The Clean Signal Method is strict on this: only GA4-compatible medium values, no exceptions.
utm_campaign={campaign_name} — Dynamic. Whatever the campaign is named in Ads Manager gets inserted at click time. Renames propagate automatically to new clicks.
utm_content={creative_id} — The numeric Pin/creative ID. Tells you exactly which visual drove the click. Match it back to Ads Manager for performance analysis.
utm_term={ad_group_name} — Ad group name captures your targeting or audience segment. Some teams prefer {keyword} here for search campaigns — that works too.
utm_id={campaignid} — Numeric campaign ID. Non-negotiable for GA4 cost data import and rename-proof tracking.
Advanced template with Shopping parameters
Running Pinterest Shopping campaigns? Add product-level tracking:
?utm_source=pinterest&utm_medium=paid_social&utm_campaign={campaign_name}&utm_content={promoted_pin_id}&utm_term={product_id}&utm_id={campaignid}&device={device}
The {product_id} macro pulls the specific SKU from your catalog. Combined with {device}, you get a complete picture: which product, on which device, from which campaign.
How Does Pinterest Compare to Other Platforms for UTM Tracking?
Pinterest's 18 dynamic parameters put it in elite company. Here's how the numbers stack up:
| Platform | Dynamic Params | Syntax | Unique Strength |
|---|---|---|---|
| 18 | {lowercase} | Shopping product-level macros | |
| Google Ads | 15+ | {lowercase} | ValueTrack keyword + match type |
| Meta Ads | 8 | {{dot.notation}} | Placement + site source |
| TikTok | 7 | __UPPERCASE__ | Placement macro |
| Snapchat | 8 | {{dot.notation}} | Creative headline macro |
| 4 | {{ALL_CAPS}} | Campaign group name | |
| X (Twitter) | 0 | — | No dynamic params at all |
Pinterest and Google share the single curly brace syntax, which means teams running both can use nearly identical URL structures. Meta, Snapchat, and LinkedIn use double braces. TikTok is the outlier with double underscores. And X? Still nothing.
What makes Pinterest stand out beyond raw numbers: the Shopping-specific parameters. {product_id}, {product_group_id}, and {product_partition_id} let e-commerce brands track attribution down to individual SKUs — something only Google's {product_id} ValueTrack parameter matches.
Should You Use Static or Dynamic UTM Values on Pinterest?
Dynamic parameters for everything that changes. Static values for everything that doesn't. Simple rule.
Here's what that looks like in practice:
| Parameter | Static or Dynamic | Why |
|---|---|---|
utm_source | Static (pinterest) | Platform never changes |
utm_medium | Static (paid_social) | Channel type never changes |
utm_campaign | Dynamic ({campaign_name}) | Campaign names change, get renamed |
utm_content | Dynamic ({creative_id}) | Different Pins per ad group |
utm_term | Dynamic ({ad_group_name} or {keyword}) | Targeting varies |
utm_id | Dynamic ({campaignid}) | Unique per campaign, rename-proof |
I've seen teams go all-dynamic — including {site_domain} as utm_source. That technically works, but it fragments your GA4 source reports into dozens of domain entries instead of one clean "pinterest" row. Keep source and medium static. Let the rest be dynamic.
And one gotcha that catches people: {campaign_name} reflects the current name at click time, not the name when the campaign launched. If you renamed "Spring Collection" to "Spring 2026 Collection" on March 15, clicks before and after March 15 will show different values in GA4. The {campaignid} macro solves this — numeric IDs don't change.
What Are Common Pinterest UTM Mistakes?
Five mistakes I see repeatedly in Pinterest Ads UTM setups:
1. Writing pin or pins as utm_source. GA4 won't map this to any Default Channel Grouping. Use pinterest. Always the full platform name.
2. Using cpc as utm_medium. Pinterest is paid social, not paid search. GA4 maps cpc to the "Paid Search" channel. Your Pinterest traffic will sit next to Google Ads in reports, which makes no sense. Use paid_social.
3. Forgetting utm_id. Without {campaignid}, you can't import Pinterest cost data into GA4. That means no ROAS calculations inside Google Analytics. For e-commerce brands spending $5,000+/month on Pinterest, that's flying blind.
4. Mixing up {creative_id} and {adid}. Both exist. {creative_id} is the Pin creative ID. {adid} is the ad-level ID. For most setups, {creative_id} gives you better granularity because it ties directly to the visual asset.
5. Static campaign names that rot. Typing utm_campaign=spring_pins_2026 works until someone renames the campaign without updating the URL. Dynamic {campaign_name} fixes this permanently.
Pro tip: The UTM Generator validates your Pinterest UTM setup in real time — it flags common UTM mistakes like non-GA4-compatible medium values and missing utm_id before you paste anything into Ads Manager.
How Do You Track Pinterest Shopping Campaigns with UTM?
Pinterest Shopping campaigns pull products directly from your catalog feed and display them as buyable Pins. Standard UTM tracking still applies, but you get extra parameters that make product-level attribution possible.
The Shopping-optimized template:
?utm_source=pinterest&utm_medium=paid_social&utm_campaign={campaign_name}&utm_content={promoted_pin_id}&utm_term={product_id}&utm_id={campaignid}
{product_id} inserts the SKU or product identifier from your catalog. In GA4, this shows up in the utm_term dimension, which you can cross-reference with your e-commerce data to calculate true ROAS per product — not just per campaign.
For catalog-based campaigns with hundreds of products, this is the difference between "Pinterest drove $47,000 in revenue" and "Product SKU-4829 generated $3,200 from Pinterest Shopping at a 4.2x ROAS while SKU-1103 lost money." One insight is nice. The other changes your catalog strategy.
But there's a caveat. Pinterest's {product_group_id} represents the product group in your shopping catalog, not the ad group. If you're used to Google Shopping's structure, this mapping is slightly different. Test with a few products first and verify the values resolve correctly in GA4 DebugView before scaling.
FAQ
Do Pinterest UTM parameters work with Idea Pins?
Idea Pins (formerly Story Pins) are organic-only content and don't support paid UTM tracking through Ads Manager. For Idea Pins with outbound links, add UTM parameters manually to the destination URL with static values like utm_source=pinterest&utm_medium=organic&utm_content=idea_pin.
Can I use the same UTM template for Pinterest and Google Ads?
Yes — both platforms use the same single curly brace {parameter} syntax, and many parameter names overlap ({campaignid}, {adgroupid}, {keyword}). The key differences are utm_source and utm_medium values: Pinterest needs pinterest/paid_social while Google uses google/paid_search. The structural pattern is identical, so teams running both platforms can standardize their URL-building workflow.
Does Pinterest have auto-tagging like Google's GCLID?
Pinterest does not have an automatic click identifier equivalent to Google's GCLID or Meta's FBCLID. This makes manual UTM parameters your only option for GA4 attribution. Without UTM tags, Pinterest traffic appears as generic "referral" in GA4 with the source pinterest.com — no campaign, ad group, or creative data at all.
How many UTM parameters should I use for Pinterest Ads?
Use at minimum four: utm_source, utm_medium, utm_campaign, and utm_id. Add utm_content for creative-level tracking and utm_term for ad group or keyword data. The full Clean Signal Method template uses all five standard parameters plus utm_id — six total. Additional custom parameters like {device} or {product_id} are optional but valuable for e-commerce.
Will Pinterest dynamic parameters work in GA4 Explore reports?
Yes. Dynamic parameters resolve into plain text values before the click reaches your site, so GA4 sees them as standard UTM data. You can filter, segment, and build custom Explore reports using Session campaign, Session source, and all other UTM-based dimensions exactly as you would with any other traffic source.
What happens if I misspell a Pinterest dynamic parameter?
Pinterest does not validate parameter syntax. If you type {campaing_name} instead of {campaign_name}, the macro won't resolve — the literal string {campaing_name} appears in your GA4 reports. Always copy parameters from the Pinterest documentation or use UTM Generator to avoid typos.
Can I track Pinterest organic posts with UTM parameters?
Absolutely. Add UTM parameters manually to any link you share on Pinterest organically: ?utm_source=pinterest&utm_medium=organic&utm_content=pin_description. This separates paid from organic Pinterest traffic in GA4. Without UTM tags, both paid and organic Pinterest traffic can blend together under the same referral source.
Start Tracking Pinterest Ads Properly
Pinterest gives you 18 dynamic parameters — more granular tracking than Meta, LinkedIn, TikTok, and X combined. The only thing standing between you and clean attribution data is a properly built URL template.
Build your Pinterest Ads UTM template in 30 seconds with UTM Generator — select "Pinterest Ads", pick your dynamic parameters from the dropdown, and copy a ready-to-paste tracking URL. No documentation hunting, no syntax guessing, no typo risk.