UTM Eligibility Rule
Checkout Promotions allows for utm based triggering promotional offers and supports the most common utm parameters. This feature requires some minor setup in order to work as detailed further down.
Compatible UTM Parameters
- utm_medium (Campaign medium): Used to describe the overarching medium category used to find website (cpc, email, social)
- utm_source (Campaign source): More detailed than utm_medium. Used to distinguish the main source (reddit, instagram, tiktok, newsletter, podcast, etc)
- utm_campaign (Campaign name): Used for the overall campaign name (Black Friday 2021 vs Customer Birthday).
- utm_term (Campaign term): Used primarily to track keywords from Google Ads (summer hats vs winter hats).
- utm_id (Campaign id): If you're using an internal id such as a specific Google Ad ID.
utm_content(Not currently supported): The call to action that brought in the traffic
1. The first step is to enable the theme app block on your published theme - note that this requires having a Storefront 2.0 theme. You can find the setting within Settings > General > Theme App Embed. If you've enabled the App Embed and it still shows as Disabled, try clicking the "Check status" button:
2. Once the App Embed is enabled, you'll want to create a new promotion or edit an existing promotion and select "Order UTM Parameter" from the eligibility rules list:
3. You will start seeing utm parameters appear on your orders. There's currently no method to hide these attributes without disabling the App Embed block
- Your store must be leveraging a Storefront 2.0 theme.
- If you are leveraging Shopify cart links, you must pass the utm parameters as attributes or the promotion will not fire.
- Sometimes a customer may come through a utm campaign but the cookie will expire resulting in the promotion not firing.
Shopify Hydrogen Stores
If you're store is headless running on a framework such as Shopify Hydrogen then you'll want to be sure you are passing the utm parameters into the cart as note attributes via the Storefront API. Consult your developer on the best way to accomplish this.