Track Brevo email campaigns with Google Analytics

Track the performance of your Brevo email campaigns and templates in Google Analytics by automatically adding UTM parameters to the links in your emails. This allows you to see which emails drive traffic to your website and measure their impact in Google Analytics alongside your other marketing channels.

Before you start

You need a Google Analytics account with tracking code installed on your website. To learn how to set it up, check Google's documentation.

About Google Analytics tracking in Brevo

This feature automatically adds UTM tracking parameters to all links in your email campaigns and templates, allowing Google Analytics to attribute website traffic and conversions to your Brevo emails.

When activated, Brevo adds the following UTM parameters to every link in your campaigns and templates:

  • utm_source: brevo (identifies traffic as coming from Brevo)
  • utm_medium: email (identifies the channel as email)
  • utm_campaign: [your campaign name] (identifies the specific campaign)
  • utm_id: [campaign ID] (Brevo's internal campaign identifier)

These parameters are appended to your URLs when a recipient clicks. For example:

  • Original link: https://example.com/product
  • Link after click: https://example.com/product?utm_source=brevo&utm_medium=email&utm_campaign=summer_sale&utm_id=123

Set up Google Analytics tracking in Brevo

When setting up Google Analytics tracking in Brevo, you have two options:

  1. Automatically activate it for all email campaigns and templates, or
  2. Apply it to individual email campaigns and templates

Option 1: Activate for all campaigns and templates

To automatically add Google Analytics tracking to all your email campaigns and templates:

  1. In Brevo, click the account dropdown and select Settings > Campaigns.
  2. Under Google Analytics, click Configure.
  3. Activate the Activate Google Analytics tracking option. This sends the utm_source, utm_medium, and utm_campaign parameters to Google Analytics.
  4. (Optional) Activate the UTM_ID: ID_OF_YOUR_CAMPAIGN option. This sends the utm_id parameter to Google Analytics.
  5. Click Save.
    ga_setup_all-campaigns_en-us.png

The links in all your email campaigns and templates will now automatically include UTM parameters and will be tracked in Google Analytics.

Option 2: Activate for individual campaigns or templates

To add tracking to a specific campaign or template only:

  1. Create or edit an email campaign or template.
  2. From its settings, access the Additional settings section at the bottom of the page.
  3. Activate the Activate Google Analytics tracking option. This sends the utm_source, utm_medium, and utm_campaign parameters to Google Analytics.
  4. (Optional) By default, the value of the utm_campaign parameter is the name of your campaign. To override it, enter a personalized value in the Customize UTM Campaign Value field.
    💡 Good to know
    The Customize UTM Campaign Value field is only available for email campaigns, not for templates.
  5. (Optional) Activate the UTM_ID: ID_OF_YOUR_CAMPAIGN option. This sends the utm_id parameter to Google Analytics.
    ga_setup_individual-campaigns_en-us.png
  6. Click Save.

The links in this email campaign or template will now automatically include UTM parameters and will be tracked in Google Analytics.

❗️ Important
We highly recommend testing your email campaigns and templates to ensure all links are working correctly with UTM parameters. To learn more, check our dedicated article Preview and test your email.

View campaign and template data in Google Analytics

After your email campaigns or templates are delivered, you can start monitoring your Google Analytics results to view how many people clicked through from your email campaign to your website:

  1. Log in to Google Analytics.
  2. Go to Reports > Acquisition > Traffic Acquisition.
  3. Click the Session default channel group dropdown and select the desired dimension to sort your results:
    • For UTM_Source, select Session source and look for "brevo".
    • For UTM_Medium, select Session medium and look for "email".
    • For UTM_Campaign, select Session campaign and search for the name of your campaign.
    • For UTM_ID, select Session campaign id and search for the ID of your campaign.
      💡 Good to know
      To select several dimensions, click + > Traffic source and select additional dimensions.
      google_analytics_dimensions.gif

Understanding why metrics differ between Brevo and Google Analytics

Brevo and Google Analytics measure at different points in the user journey, so the numbers won't 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 (Safari, Firefox) or ad blockers can block Google Analytics tracking. Users can still visit your site and be counted by Brevo.
  • Cookie consent
    Visitors who decline tracking consent in Google Analytics won’t appear there, even if they clicked your email.
  • Page load failures
    If a visitor closes a page before it fully loads, Brevo counts the click, but Google Analytics does not count a session.
  • Missing tracking code
    If your landing page doesn’t have Google Analytics installed or JavaScript is disabled, visits won’t be tracked.
  • Links without UTM parameters
    Traffic from links without UTM tags won’t be attributed to your Brevo campaign in Google Analytics.

How to compare metrics accurately?

To get meaningful comparisons between Brevo and Google Analytics:

  • Match unique clicks to sessions
    Compare Brevo’s unique clicks with Google Analytics sessions, not total clicks to page views.
  • Exclude certain activity
    Remove Apple Mail Privacy Protection (MPP) and bot traffic 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 instead of expecting exact matches between the two platforms.

Troubleshooting issues with Google Analytics tracking

If you are experiencing issues with Google Analytics tracking, we recommend you review the following troubleshooting tips before contacting our support team.

Select the issue that best matches your situation:

Links break after activating Google Analytics tracking

When clicking a link in an email campaign or template after activating Google Analytics tracking, you are getting redirection failures or the following errors:

  • Page Not Found (404)
  • Server Error (500 or other 5XX error)
  • Blank page

Common causes and solutions

We recommend that you first confirm whether the issue stems from UTM parameters or from your original URL or host:

  1. Copy the URL from the campaign or template.
  2. Remove everything after the ? to test the link.
  3. Test both versions in a browser.

If both versions fail, it likely indicates a problem with your original URL or host, not related to UTMs. We recommend reviewing your URLs to ensure they work correctly.

If only the UTM version fails, it typically means your website or server is not properly handling extra information in URLs. In that case, check the following solutions:

Make your URLs compatible with UTM parameters

Solution: Contact your web developer or hosting provider (where your URLs are hosted) to ensure that your URLs can handle query strings and are compatible with UTM parameters.

Deactivate Google Analytics tracking in Brevo

Solution: If tracking isn’t required, you can deactivate Google Analytics tracking. This will prevent these parameters from being added to URLs.

UTM parameters do not 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 function as expected. This can cause tracking issues or broken links, such as:

  • UTM parameters don't appear in Google Analytics or other analytics platforms
  • Links lead to broken or unresponsive pages
  • UTM values (like utm_source=brevo) incorrectly appear in visible form fields
  • URLs contain malformed query strings (multiple ? symbols or misplaced & characters)
  • Only the base URL loads with no UTM parameters

Common causes and solutions

Your dynamic URLs already contain query parameters

Dynamic URLs often already contain query parameters (e.g., ?user_id=123). When Brevo appends UTM parameters, conflicts can occur if:

  • The URL already ends with ? (Brevo adds another ? instead of &)
  • The dynamic system 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 implement the following link generation logic:

  • If the base URL already contains ?, UTMs should be appended using &
  • If the base URL has no query string, UTMs should be appended using ?

🤔 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.

💬 Was this article helpful?

139 out of 187 found this helpful