On this page
  1. Where to add UTM parameters in TikTok Ads Manager
  2. URL Auto-attach
  3. Build URL parameters by hand
  4. TikTok UTM macros
  5. Upgraded Smart+ campaigns
  6. A UTM pattern for TikTok ads
  7. How TikTok traffic shows up in GA4
  8. ttclid and UTM parameters
  9. Checks before launch
  10. Sources

Add UTM parameters to a TikTok ad's destination URL in TikTok Ads Manager, either automatically with URL Auto-attach or by hand with Build URL parameters, as TikTok's URL parameter guide (opens in a new tab) describes. Use TikTok's macros (opens in a new tab), such as __CAMPAIGN_NAME__, to pass campaign and placement values into the URL dynamically. Keep source and medium identical on every TikTok ad: GA4 parameter values are case sensitive (opens in a new tab), so TikTok and tiktok are two different sources.

Where to add UTM parameters in TikTok Ads Manager

TikTok Ads Manager (opens in a new tab) offers two routes.

URL Auto-attach

URL Auto-attach appends UTM parameters to the ad's URLs while you create the ad. It fills campaign source (TikTok), medium ("Paid"), ID and name for you. To turn it on or off, click Edit under the Preview button and toggle Auto-attach.

Build URL parameters by hand

  1. Enter your destination URL.
  2. Click Edit under the Preview button.
  3. Under URL, click Build URL parameters.
  4. Under UTM parameters, fill in each field.
  5. For a parameter of your own, click Add under Custom parameters.

You can add or edit URL parameters while the ad is in draft mode, or later by editing the ad. Copying an ad copies its URL and parameters too.

Build a campaign link

Create a UTM link with the free builder. No account needed.

TikTok UTM macros

Macros pass campaign or placement values into your URLs dynamically. TikTok's UTM parameter article (opens in a new tab) lists these:

Macro Value
__CAMPAIGN_NAME__ Name of the campaign
__CAMPAIGN_ID__ Campaign ID
__AID_NAME__ Name of the ad group
__AID__ Ad group ID
__ADID_V2_NAME__ Upgraded Smart+ campaigns: name of the ad (the bundle of creative assets)
__ADID_V2__ Upgraded Smart+ campaigns: ad ID
__CID_NAME__ Name of the creative
__CID__ Creative ID
__PLACEMENT__ Placement type (TikTok, TikTok Pangle)

Every TikTok macro starts and ends with two underscores and uses single underscores in the middle, per TikTok's macro note (opens in a new tab). Copy them exactly.

Upgraded Smart+ campaigns

Smart+ campaigns in the upgraded experience have some changes to the macros. TikTok's Smart+ reporting article (opens in a new tab) describes four levels: campaign, ad group, ad and creative. The ad bundles creative assets and uses __ADID_V2__ and __ADID_V2_NAME__; the creative is an individual asset and uses __CID__ and __CID_NAME__. So in upgraded Smart+ campaigns, use __ADID_V2_NAME__ when you want the ad's name in utm_content.

A UTM pattern for TikTok ads

Google recommends always setting utm_source, utm_medium and utm_campaign, with one unique source for each platform and one unique medium for each channel (Google's campaign URL guide (opens in a new tab)). TikTok's best-practice article (opens in a new tab) gives a paid TikTok ad the source TikTok and the medium paid. A pattern that follows both:

utm_source=tiktok&utm_medium=paid&utm_campaign=__CAMPAIGN_NAME__&utm_content=__CID_NAME__&utm_id=__CAMPAIGN_ID__
  • utm_campaign=__CAMPAIGN_NAME__ carries the TikTok campaign name (TikTok's macro list (opens in a new tab)).
  • utm_content=__CID_NAME__ carries the creative name; TikTok describes utm_content as identifying the creative content of a promotion. In upgraded Smart+ campaigns, use __ADID_V2_NAME__ for the ad.
  • utm_id=__CAMPAIGN_ID__ carries the campaign ID; Google defines utm_id as the campaign ID that identifies a specific campaign or promotion.

Pick one way to set source and medium and use it on every ad. Auto-attach (opens in a new tab) fills campaign source and medium for you. If you also tag some ads by hand, use exactly the values Auto-attach produces, and check the final URL before launch: GA4 parameter values are case sensitive. Because macros pass your campaign and ad names into the link, TikTok also suggests a consistent naming convention for campaigns, ad groups and ads; UTMTool's naming worksheet guide is a practical worksheet for your team.

For the static part, the free UTM builder builds a campaign URL with UTM parameters for GA4, with options to lowercase values and replace spaces with hyphens. Type the macros themselves in TikTok Ads Manager, exactly as TikTok lists them. The UTM parameters reference has one section per parameter.

How TikTok traffic shows up in GA4

Read TikTok visits in Acquisition > Traffic acquisition, which offers Session source/medium, Session medium, Session source and Session campaign (Google's campaign URL guide (opens in a new tab)). Parameter values are case sensitive: utm_source=google and utm_source=Google are different values. Missing UTM parameters show up as (not set).

The channel comes from GA4's default channel rules (opens in a new tab). Paid Social needs a source on Google's regex list of social sites and a medium matching ^(.*cp.*|ppc|retargeting|paid.*)$. Paid Video needs a source on Google's list of video sites and a medium matching the same pattern. Channel definitions are not case sensitive. When no rule matches, Analytics uses the value Unassigned. The GA4 channel guide sets out the default channel group rules by medium.

To see which default channel a finished link should land in, paste it into the UTM link checker.

ttclid and UTM parameters

TikTok Click ID (TTCLID) (opens in a new tab) is a tracking parameter appended to the landing page URL when someone clicks a TikTok ad. It helps TikTok's own ad attribution by associating the click with a campaign. Click ID auto-attachment does not affect other custom tracking parameters you have enabled, so keep your UTMs for GA4.

Checks before launch

From TikTok's UTM best practices (opens in a new tab):

  • No # in the URL. TikTok does not accept non-standard characters such as # in URL links, and omits everything after the #. Put every parameter in the query.
  • One utm_source. An analytics tool such as GA may consider only the last value set for utm_source. If Auto-attach (opens in a new tab) is on, it already fills the source, so do not type a second utm_source by hand.
  • Preview and test. Preview the ad as soon as it is set up and make test clicks to confirm the URL works and the landing page has no issues.

Sources

Tools for this

Frequently asked questions

Does TikTok add UTM parameters automatically?

It can. URL Auto-attach fills campaign source (TikTok), medium (Paid), ID and name. Turn it on or off with Edit under the Preview button.

What is the TikTok macro for the campaign name?

__CAMPAIGN_NAME__. The ad group name is __AID_NAME__, the creative name is __CID_NAME__, and in upgraded Smart+ campaigns the ad name is __ADID_V2_NAME__.

Does ttclid replace UTM parameters?

No. TikTok appends the Click ID to help its own ad attribution, and Click ID auto-attachment does not affect other custom tracking parameters you set.

Build a campaign link

Create a UTM link with the free builder. No account needed.