UTM tracking helps you understand where your website visitors come from and how your Brevo emails contribute to your website traffic and conversions. It works by adding UTM parameters to the links in your emails. For example, UTM tracking can turn a link such as https://example.com/product into the following URL with UTM parameters: https://example.com/product?utm_source=brevo&utm_medium=email&utm_campaign=summer_sale. Your analytics tool, such as Google Analytics, then reads these parameters to identify where each visit came from.
Good to know
- You need an analytics tool, such as Google Analytics, with tracking code installed on your website to see the traffic generated by your UTM parameters. To learn how to set up Google Analytics, check Google's documentation.
- To add UTM tracking to your push notifications, check our dedicated article Configure your pressure settings and UTM parameters.
- To set UTM values when you create or update a campaign through the API, check the dedicated section in this article.
Which UTM parameters are available?
Brevo groups UTM parameters into two types: standard parameters and additional parameters.
Standard UTM parameters
Brevo supports five standard UTM parameters: utm_source, utm_medium, utm_campaign, utm_content, and utm_term. Google Analytics recognizes these parameters automatically. The first three parameters are activated automatically when you activate UTM tracking. utm_content and utm_term are optional and must be activated separately.
Expand the following dropdowns to learn more about each UTM parameter:
Identifies the source of your traffic.
-
Default value:
brevo - Activated by default: Yes
- Can be deactivated individually: No
- Can be edited: Yes
You can set a custom value when activating global UTM tracking.
Identifies the marketing channel.
-
Default value:
email - Activated by default: Yes
- Can be deactivated individually: No
- Can be edited: Yes
You can set a custom value when activating global UTM tracking.
Identifies the campaign, workflow, or template associated with the traffic.
- Default value: Campaign, workflow, or template name
- Activated by default: Yes
- Can be deactivated individually: No
- Can be edited: Yes
You can change the default value in the global UTM settings. You can also override the value for an individual campaign, template, or automation message.
Identifies specific content or a message variant.
- Default value: None
- Activated by default: No
- Can be activated or deactivated individually: Yes
- Can be edited: Yes
You need to enter a value before activating this parameter. You can set its default value in the global UTM settings or override it for an individual campaign, automation, or template.
Identifies keywords or other targeting criteria associated with the message.
- Default value: None
- Activated by default: No
- Can be activated or deactivated individually: Yes
- Can be edited: Yes
You need to enter a value before activating this parameter. You can set its default value in the global UTM settings or override it for an individual campaign, template, or automation message.
Additional UTM parameters
Brevo also supports additional UTM parameters, including utm_id and custom parameters.
Expand the following dropdowns to learn more about each UTM parameter:
Identifies your campaign, workflow, or template with a dynamic ID value.
- Default value: Campaign, workflow, or template ID
- Activated by default: No
- Can be activated or deactivated individually: Yes
- Can be edited: Yes
You can change the default value in the global UTM settings or override it for an individual campaign, automation, or template.
Custom UTM parameters let you create your own parameter with a name and value of your choice. You can use them for tracking needs that aren't covered by the standard parameters.
➡️ To learn more, check our dedicated section in this article.
Activate global UTM tracking
Activate UTM tracking globally to automatically add UTM parameters to links in your campaigns, templates, and automation messages
- In Brevo, at the bottom left, click Settings > UTM parameters.
- Click Activate UTM tracking.
- The following standard parameters are activated automatically:
-
utm_source -
utm_medium -
utm_campaign
-
- (Optional) You can change your standard parameters default values with a custom one by clicking the edit
icon. Custom UTM parameters are case sensitive.
- To add optional parameters, activate them and configure their values:
-
utm_content -
utm_term -
utm_id
-
- To add a custom UTM parameter, click + Add UTM parameter and configure its name and values. To learn more, check our dedicated section in this article.
utm_id
and custom parameters
aren't recognized automatically
by your analytics tool.
Configure
them your analytics tool yourself before using them for reporting.
The parameters you activate globally are applied by default to all new campaigns, templates, and automation messages. To apply them to existing message, you need to activate or configure UTM tracking individually at the message level.
Create a custom UTM parameter
Custom UTM parameters let you track additional information that isn't covered by Brevo's standard UTM parameters. For example, you could create a marketing_initiative parameter to add an additional tracking dimension to your email links.
To create a custom UTM parameter:
- In Brevo, at the bottom left, click Settings > UTM parameters.
- Click + Add UTM parameter.
- Enter a Parameter name. This name is added to the end of your links.
- Configure a Campaign value, Workflow value, and Template value as needed. For each one, choose a static value, a dynamic value, or enter your own custom value. Leave a field blank if you don't want to use the parameter for that type of message.
- Click Save.
Activate, override, or deactivate UTM tracking individually
By default, when UTM tracking is activated globally, it is automatically applied to all new campaigns, templates, and automation messages using your global UTM settings. If you don't need to make any changes for a specific message, no additional action is required.
If you need to make changes for a specific campaign, template, or automation message, you can do so individually. At the message level, you can:
- Activate UTM tracking for that message
- Deactivate UTM tracking for that message.
- Deactivate one or more optional UTM parameters for that message.
- Change the value of an editable UTM parameter for that message.
Use the following tabs to view instructions for the type of email you're working with:
- Create or edit an email campaign.
-
From its settings, click Edit settings next to the Additional settings section.
-
Under the Activate UTM tracking option, make the necessary changes. Changes apply only to this specific campaign.
- Click Save.
- Create or edit an email template.
-
From its settings, click Show advanced settings.
-
Under the Activate UTM tracking option, make the necessary changes. Changes apply only to this specific template.
- Create or edit an automation.
- Open a Send an email step.
-
From its settings, click Edit next to the Additional settings section.
- Under the Activate UTM tracking option, make the necessary changes. Changes apply only to this specific message.
-
Click Save options.
Use UTM parameters with the Brevo API
You can set UTM tracking when you create or update an email campaign through the Brevo API. Campaigns created this way can be edited in Brevo like any other email campaign.
When you create or update a campaign through the API, Brevo uses your global UTM settings as the default values. If your request includes its own UTM values, they override the global settings for that campaign.
You can set the following values:
-
utmCampaign: customizes theutm_campaignvalue. If you leave it empty, Brevo uses the campaign name. Only alphanumeric characters and spaces are allowed. -
utmContent: customizes theutm_contentvalue. -
utmTerm: customizes theutm_termvalue. - The UTM source, UTM medium, and UTM ID.
The endpoints that retrieve email campaigns return the UTM values used for each campaign. To learn more about each endpoint, check the Brevo API reference:
View your UTM data in Google Analytics
After your campaigns, templates, or automation messages are delivered, you can use Google Analytics to monitor traffic generated by your Brevo messages.
- Log in to Google Analytics.
- Go to Reports > Acquisition > Traffic Acquisition.
- Click the Session default channel group dropdown and select the dimension you want to use:
- For
utm_source, select Session source and look forbrevoor the custom value you set when activating global UTM tracking. Custom UTM parameters are case sensitive. - For
utm_medium, select Session medium and look foremailor the custom value you set when activating global UTM tracking. Custom UTM parameters are case sensitive. - For
utm_campaign, select Session campaign and search for the name of your campaign, template, or automation message. - For
utm_idor a custom UTM parameter, select the corresponding custom dimension you configured in Google Analytics and search for its value.
- For
- (Optional) To select several dimensions, click + > Traffic source and select the additional dimensions you want to use.
Understand why metrics differ between Brevo and Google Analytics
Brevo and Google Analytics measure activity at different points in the user journey, so their numbers won't always match exactly:
- Brevo records when a user clicks a link in your email.
- Google Analytics records when a page loads and the tracking code executes.
What factors contribute to these differences?
-
Browser tracking prevention
Some browsers, such as Safari and Firefox, or ad blockers can block Google Analytics tracking. Users can still visit your website and be counted by Brevo. -
Cookie consent
Visitors who decline tracking consent in Google Analytics won't appear in Google Analytics, even if they clicked your email. -
Page load failures
If a visitor closes the page before it fully loads, Brevo counts the click, but Google Analytics may not record a session. -
Missing tracking code
If your landing page doesn't have Google Analytics installed, or JavaScript is disabled, the visit won't be tracked. -
Links without UTM parameters
Traffic from links without UTM parameters won't be attributed to your Brevo message in Google Analytics.
How to compare metrics accurately
To get more meaningful comparisons between Brevo and Google Analytics:
-
Compare similar metrics
Compare Brevo's unique clicks with Google Analytics sessions rather than comparing total clicks with page views. -
Exclude certain activity
Consider excluding Apple Mail Privacy Protection (MPP) and bot activity from Brevo statistics. To learn more, check our dedicated article About Apple Mail Privacy Protection (MPP) and bot activity in Brevo. -
Focus on trends, not exact numbers
Look at overall patterns over time rather than expecting the two platforms to report exactly the same numbers.
Troubleshooting issues with UTM parameters
If you're experiencing issues with UTM parameters, review the following troubleshooting tips before contacting our support team.
Select the issue that best matches your situation:
- Links break after activating UTM tracking
- UTM parameters don't work with dynamic URLs
- UTM values differ from what you expect
Links break after activating UTM tracking
When you click a link in a campaign, template, or automation message after activating UTM tracking, you may experience redirection failures or see one of the following errors:
- Page Not Found (404)
- Server Error (500 or other 5XX error)
- Blank page
Common causes and solutions
First, confirm whether the issue comes from the UTM parameters or from the original URL or host.
- Copy the URL from the campaign, template, or automation message.
- Remove everything after the
?from the URL. - Test both versions in a browser.
If both versions fail, the issue is likely related to your original URL or host rather than the UTM parameters. Check that your original URL works correctly.
If only the UTM version fails, your website or server may not properly handle additional information in URLs. Try the following solutions:
Solution: Contact your web developer or hosting provider and ask them to ensure that your URLs can handle query strings and are compatible with UTM parameters.
Solution: If UTM tracking isn't required, deactivate it. This prevents UTM parameters from being added to your URLs.
UTM parameters don't work with dynamic URLs
If your links are dynamically generated (e.g., personalized landing pages, form pre-fill URLs, or CMS-generated links), UTM parameters may not work as expected.
You may experience issues such as:
- UTM parameters don't appear in Google Analytics or other analytics platforms.
- Links lead to broken or unresponsive pages.
- UTM values, such as
utm_source=brevo, incorrectly appear in visible form fields. - URLs contain malformed query strings, with multiple
?symbols or misplaced&characters. - Only the base URL loads without the UTM parameters.
Common causes and solutions
Dynamic URLs often already contain query parameters, such as ?user_id=123. When Brevo adds UTM parameters, conflicts can occur if:
- The URL already contains a query string and the additional parameters aren't appended correctly.
- The system generating the dynamic URL doesn't properly handle additional parameters.
- Form pre-fill scripts interpret UTM parameters as form values.
Solution: Contact your web developer and ask them to ensure that your link generation logic handles UTM parameters correctly:
- If the base URL already contains a query string, append UTM parameters using
&. - If the base URL doesn't contain a query string, append UTM parameters using
?.
UTM values differ from what you expect
You may see a UTM source, medium, or other value in your links or analytics tool that is different from the one you configured. Your traffic may also appear under two different values for the same message.
Common causes and solutions
Expand the following accordions to learn more about each cause:
When an API request includes UTM values, they override your global UTM settings for that campaign.
Solution: Check the UTM settings of the campaign in Brevo:
- Go to Marketing > Campaigns and open the campaign.
- From its settings, click Edit settings next to the Additional settings section.
- Under the Activate UTM tracking option, review the values and make the necessary changes.
- Click Save.
If you manage the campaign through the API, update the UTM values in your request.
Campaigns, templates, and automation messages that already exist may keep the values they had when you created them.
Solution: Go to Settings > UTM parameters to review your global values. Then change the values individually for the messages that need them.
Brevo keeps the capitalization you enter for custom UTM parameter names, such as UTM_Source or utm_Campaign. It no longer converts them to lowercase. Analytics tools may report names or values that differ only by capitalization as separate entries.
Solution: Use the same capitalization in your global settings, individual messages, and API requests.
If you change the UTM source or medium, traffic from earlier messages stays under the previous value in your analytics tool. Traffic from new messages appears under the new value.
Solution: Include both values when you compare periods, or group them in a single report in your analytics tool.
🤔 Have a question?
If you have a question, feel free to contact our support team by creating a ticket from your account. If you don't have an account yet, you can contact us here.
If you’re looking for help with a project using Brevo, we can match you with the right certified Brevo Agency partner.