Track Meta ads with UTMs

Prev Next

What you’ll need

  • Any Kommo plan: Base, Advanced, Pro, Enterprise, or the 14-day trial.

  • WhatsApp Business, Instagram, or Facebook Messenger connected to Kommo, with an ad that opens that connected account.

  • Permission to edit the ad in Meta Ads Manager, plus ad-account access and permission for Kommo to read advertising data. See Set up Meta ad tracking if you have not granted access yet.

Keep in mind

  • The legacy Instagram Login connection does not support UTM or custom parameters. Connect Instagram through Meta or Facebook instead.

  • Granting ad-account access does not create labels. You must add them to the ad.

Add labels to your ads so your team can find and compare the leads they bring to Kommo. For example, spring_sale can identify leads from your spring campaign, while video_ad can identify one ad version.

A UTM parameter tells Kommo which lead field to fill and what value to save. For a first setup, one campaign label is enough:

utm_campaign=spring_sale

Keep utm_campaign unchanged and replace spring_sale with your campaign label. When a client responds to the ad, Kommo saves your label in the lead’s utm_campaign field.

Understand your tracking options

Kommo saves some ad details automatically. For additional details, choose the type of parameter that matches your goal:

You do not have to use every type. If a campaign label is all you need, read Main UTM parameters, then go to Write your parameters.

Automatically saved ad details

Kommo can save Meta Ads ad ID and Meta Ads source without extra labels or ad-account access. It also saves Meta Ads ref if a Ref value is set in the ad.

With ad-account access and a supported connection, it can also save Meta Ads campaign ID, Meta Ads ad set ID, and Meta Ads creative ID.

An ad set is a group of ads with shared audience and schedule settings. A creative is the ad’s content, such as its image, video, or text. IDs are the numbers Meta uses to identify these items; they are not campaign names.

For access requirements, see Set up Meta ad tracking. For the full field reference and where to find each value, see View the saved ad details.

Main UTM parameters

Start with utm_campaign if you want to find leads from one campaign. Add the other fields only if you need those labels too.

Parameter

What you use it for

Example value

utm_source

A source label you choose

facebook

utm_medium

A marketing channel or traffic type

paid_social

utm_campaign

A campaign label

spring_sale

To use all three:

utm_source=facebook&utm_medium=paid_social&utm_campaign=spring_sale

You choose these values. utm_source=facebook always saves facebook; it does not detect where the client saw the ad.

utm_source is separate from Meta Ads source, which identifies the source type, such as an ad or post.

Additional UTM parameters

Use these if you want to compare ad versions or audiences within a campaign.

Parameter

What you use it for

Example value

utm_content

An ad or creative version

video_ad

utm_term

An audience or keyword label

family_cruise

Example:

utm_content=video_ad&utm_term=family_cruise

Kommo saves video_ad in utm_content and family_cruise in utm_term.

Custom parameters

Create your own parameters when the standard UTM fields do not describe the information you need. For example:

utm_offer=free_delivery&region=emea

This saves free_delivery in the utm_offer field and emea in the region field. If the fields do not exist, Kommo creates them. The utm_ prefix is optional for custom parameters.

Use consistent field names and values across your ads. For example, choose facebook rather than alternating between facebook, Facebook, and fb.

Dynamic parameters

Use a dynamic parameter when you want to save a name or ID from the ad instead of entering a fixed label. You put a placeholder in the value, and Kommo replaces it with the actual value when it receives the ad details.

These placeholders work with WhatsApp, Instagram, and Facebook Messenger when your connection supports parameters and the required ad-account access is granted:

Placeholder

What Kommo saves

Example value

{{campaign.name}}

Campaign name

Spring sale

{{campaign.id}}

Campaign ID

120210345678901

{{adset.name}}

Ad set name

Flower lovers

{{adset.id}}

Ad set ID

120210345678902

{{ad.name}}

Ad name

Pink bouquet video

{{ad.id}}

Ad ID

120210345678903

For WhatsApp only, you can also use {{site_source_name}} to identify the platform where the ad appeared.

For example:

utm_campaign={{campaign.name}}

If the campaign is called Spring sale, Kommo saves Spring sale in utm_campaign.

Only the placeholders listed here are supported. Kommo removes unsupported placeholders from the value. If nothing remains, it does not fill the field. Meta’s guide to dynamic URL parameters includes options that Kommo does not support.

How ad details reach Kommo

Kommo receives ad details through the messaging account connected to it. It uses the connection for the app where the client messages you. For example, an ad shown on Facebook that opens WhatsApp uses your WhatsApp connection.

  • WhatsApp and Instagram: The client must click the ad and send a message. A click alone does not create a chat or lead, or save ad details.

  • Facebook Messenger: If the client already has a conversation and a linked lead in Kommo, a click can save details without another message. Otherwise, the client must send a message.

Write your parameters

  1. Write the field name, an equals sign (=), and the value to save. For example, utm_campaign=spring_sale fills utm_campaign with spring_sale.

  2. Replace spring_sale with your campaign label. Keep the field name utm_campaign unchanged.

  3. If you need more than one parameter, join them with &.

For example:

utm_campaign=spring_sale&utm_content=video_ad

Kommo saves spring_sale in utm_campaign and video_ad in utm_content.

Check spelling before publishing. A typo such as utm_campain creates a separate field from utm_campaign.

Add the parameters in Meta Ads Manager

  1. Open the ad in Meta Ads Manager.

  2. At the Ad level, find Tracking → URL parameters.

  3. Paste your parameters—for example, utm_campaign=spring_sale with your chosen label.

  4. Publish your changes.

Enter only the parameters. Do not paste a full URL or add a question mark (?) at the beginning.

For Meta’s instructions, see Add URL parameters to your ads.

Check that your label was saved

Ad changes can take up to 6 hours to apply on all three channels. During that time, Kommo may still receive the old fields and values. If you have just granted ad-account access, also allow 10 minutes for access to take effect.

Run Test that ad details reach Kommo. In the linked lead’s Statistics → Tracking data, click Show and check utm_campaign.

If you used utm_campaign=spring_sale, the field should contain spring_sale. If you chose another label or a dynamic value, check for that value instead. Check any other parameters you added in their matching fields.

To find all leads with this label, follow Find leads from the same campaign.

If the label is missing, see Campaign IDs are saved, but labels are missing.

Changing parameters in Meta does not rewrite values already saved in leads. When a client responds to another ad, some old values may remain. See What changes when a client responds to another ad for the complete replacement and retention rules.