Facebook UTM Parameters for Meta Ads

Facebook UTM parameters are tags added to the link in a Meta ad so your analytics tool can tell which campaign and ad sent each visitor. Enter them in the URL parameters field under Tracking in Ads Manager, and use Meta's dynamic values, such as {{campaign.name}}, to fill in names automatically.

Meta's dynamic URL parameters (Meta Business Help, October 2026)
Parameter as Meta lists itFilled in with
{{campaign.name}}Campaign name when the ad was first published
{{adset.name}}Ad set name when the ad was first published
{{ad.name}}Ad name when the ad was first published
{{campaign.id}}, {{adset.id}}, {{ad.id}}The numeric IDs
{{placement}}Where the ad showed, such as facebook_feed or instagram_stories
{{site_source_name}}fb, ig, msg, th or an (Audience Network)

Updated

Meta reports clicks inside Ads Manager, but your website analytics only sees a visitor arriving. UTM tags join the two. Set them once per ad, let the dynamic values do the naming, and your Google Analytics reports will show each campaign and ad by name. The builder below writes the string for you.

Meta ads URL parameters builder

Choose a value for each tag. The result goes in the URL parameters field, not in the website URL.

Paste this into URL parameters

utm_source=facebook&utm_medium=paid_social&utm_campaign={{campaign.name}}&utm_content={{ad.name}}&utm_term={{adset.name}}

Built in your browser. Meta fills the curly-brace values when someone clicks the ad.

What {{placement}} returns

Meta lists these values for the placement parameter. Collection format ads on Instagram placements do not support dynamic URL parameters.

Placement values (Meta Business Help, October 2026)
PlacementValue in reports
Facebook Feedfacebook_feed
Facebook in-stream reelsfacebook_instream
Facebook Marketplacefacebook_marketplace
Facebook Right Columnfacebook_right_column
Instagram Feedinstagram_feed
Instagram Storiesinstagram_stories
Messenger Inboxmessenger_inbox
Threadsthreads_stream
Audience Network native, banner and interstitialaudience_network_classic

A full example

The first line is what goes into the URL parameters field. The second is what a visitor's address bar shows after Meta fills the values.

URL parameters and the result

The campaign, ad and ad set names here are made up. Spaces in names arrive as %20.

utm_source=facebook&utm_medium=paid_social&utm_campaign={{campaign.name}}&utm_content={{ad.name}}&utm_term={{adset.name}}

https://example.com/spring-sale?utm_source=facebook&utm_medium=paid_social&utm_campaign=spring_sale&utm_content=video_a&utm_term=lookalike_1pct

Static and dynamic parameters

A static parameter is plain text you type, like utm_source=facebook. A dynamic parameter is a placeholder in double curly braces that Meta swaps for real details when someone clicks. You can mix both in one string.

Meta's example tracks campaign and ad: utm_campaign={{campaign.name}}&utm_content={{ad.name}}. A campaign named Prospecting 2026 arrives as Prospecting%202026, because spaces in web addresses are written as %20.

A naming plan that survives

Because dynamic names freeze at first publish, decide your naming pattern before launch: for example season, offer and audience joined with underscores, like spring_sale_lookalike. Underscores avoid the %20 clutter in reports.

Google's own guidance is to always set utm_source, utm_medium and utm_campaign; missing values show up as (not set) in reports. Add utm_content for the ad and utm_term if you want the ad set.

How it works

  1. Open Ads Manager and create an ad, or open a draft.
  2. Work through the ad steps until you reach Tracking.
  3. Paste the string from the builder into the URL parameters field, or use Build a URL parameter.
  4. Publish, click the live ad once yourself, and check that the address bar on your site shows the tags.
  5. In Google Analytics, look at Traffic acquisition with session source / medium to see the visits arrive.

Tips

Frequently asked questions

Where do I put UTM parameters in Facebook Ads Manager?

In the ad itself, under Tracking, in the field called URL parameters. Meta also offers a Build a URL parameter option there. Parameters set in Ads Manager override ones set elsewhere, such as Instagram's default URL parameters.

Why does my campaign name in GA4 show the old name?

Meta fills {{campaign.name}}, {{adset.name}} and {{ad.name}} with the name used when the ad was first published. Renaming afterwards does not change the value; Meta says you need to publish a new campaign, ad set or ad for a new value.

What should utm_source be for Facebook ads?

Use one consistent lowercase value, such as facebook. If you want Facebook and Instagram split apart, use {{site_source_name}} instead, which Meta fills with fb, ig, msg, th or an.

Why do Facebook ad visits show as Organic Social in GA4?

GA4's Paid Social channel needs the source to match a known social site and the medium to match a paid pattern, such as cpc, ppc, retargeting or anything starting with paid. A medium of social puts the visit under Organic Social.

Do UTM tags follow visitors to other pages?

Meta notes a URL parameter only applies to the first page reached from the ad. Your analytics tool then keeps the session attribution as the visitor browses, but a later organic visit will not carry the tags.

Related: UTM builder, How to set up Google Analytics, Google Ads conversion tracking, Website heatmaps.

Start for free or see all free tools. We.Inc is free to start, with no card needed. AI building is on paid plans from $20 a month.

More in Guides

We.Inc is an AI-powered website builder you can resell under your own brand. Launch a branded client dashboard, bill on Stripe Connect, and deliver AI-generated websites in minutes. White-label plans start at $99 a month for 25 client sites, with a 7-day free trial and no per-site fees.

Product

Who It's For

Features

Resources

Company

View Sitemap