While designing your campaign journey, you can connect with your customers on a specific channel by using the appropriate messaging trigger. The triggers you will see in the '+' or  'New Trigger' menu, will depend upon the channels you've enabled and the cloud apps you have configured for your account. The following screenshot shows an example of what this could look like.

Messaging Triggers.png

Sending a message is the main action of a messaging trigger. A messaging trigger typically requires the following pieces of information:

  1. Content (required): You will need to select the creative/ message template that will be used for messaging the customer.
    • Note: For Live Content triggers, instead of selecting a live content template, you will need to select a Live Content campaign here. You can only select 'launched' Live Content campaigns which are configured to use audience from 'other campaigns'
  2. Send Settings (required): You will need to specify the sender information. You can do so by specifying the app and adapter.
  3. Tracking Parameters (optional): You may also optionally specify UTM or custom URL tracking parameters for the campaign so that you can measure the impact of running the campaign.
  4. Expiration (optional): You may optionally specify when a message will expire.
    • Note: This is applicable for the in-app trigger only.
  5. Action (required): This is a required setting for the Live Content trigger. You must specify the action you want to perform with this trigger i.e. whether to show or hide the live content. 



Select the creative/ message template that will be used for messaging the customer. You can also set up A/B Tests as required.


If your campaign is in paused or launched state, you cannot directly change the selected message template. To use a different messaging template, set up an A/B test for the Entire Creative. Add a new variation, select the required messaging template, and assign 100% users to this variation. Then assign 0% users to the old variation.

Send Settings

The send settings can vary by channel.


If you are using a promotion code in the template, you must specify the promotion code in the Send settings. If you do not set the promotion code, the promotion will not be included in the message and the message will render a blank promotion instead.

Here’s a breakdown of the different send settings by channel.

Setting Description Required? Email Push SMS In-App Cloud App Live Content
Promotions Specify your promo code No x
App Choose the app for messaging e.g. Mailguin, Twilio etc. Yes x x
Adapter Choose the adapter i.e. credentials for messaging Yes x x
From Name Sender name No x x x x x
From Address The email address of the sender No1 x x x x x
Reply to Address The email address to which replies will be sent No1 x x x x x
BCC Send a copy of the message to these email addresses No1 x x x x x

1By default Blueshift will use the value specified in the adapter settings but you can override that here in the trigger configuration. You can specify a liquid variable with appropriate attributes to dynamically populate the fields


Tracking Parameters

Adding tracking parameters to your messages allows you to gauge the effectiveness of your campaign and identify the best ways to drive more visitors to your website or app.

Blueshift supports both UTM and custom tracking parameters.


Contact support@blueshift.com to add a default set of tracking parameters to all campaign triggers in your account.


UTM Parameters

You can specify values for the 5 UTM parameters here:

  • UTM Source: the source of your traffic. For example: Blueshift.
  • UTM Campaign: the campaign name. For example: Abandoned Browse.
  • UTM Medium: the medium the link was used on such as: email, SMS etc.
  • UTM Content: optional parameter for additional details for A/B testing and content-targeted ads.
  • UTM Term: optional parameter suggested for paid search to identify keywords for your ad.

You can specify static values as explained in the examples above or you can specify dynamic values using liquid variables. So you could specify an attribute from any of the below mentioned entities or a combination thereof:

  • A user
  • A recommendation
  • An external fetch
  • An event
  • A transaction

When the message is rendered, these variables are replaced with actual values for a specific customer. You can then slice and dice your campaign performance using these attributes on a third party analytics platform like Google Analytics. For example, if you use content = {{user.gender}}, you can see how your campaign performed for men compared to women using the content param.

Custom Parameters

In addition to standard UTM parameters, you can also include custom URL tracking parameters. And just like UTM parameters, you can include Liquid expressions for setting these attributes.

Note: You can add tracking parameters directly to links in your message template. Tracking parameters defined in the trigger settings do not overwrite those specified in the creative. They only get added to links if the links didn't have these parameters already.

If you specify a direct value for a tracking parameter, it is saved in both sent and non-sent UCT parameters. If you add a Liquid expression as the value for a tracking parameter, the resulting value for the Liquid expression is saved. For example, if the value of the tracking parameter is set as {{my_param}}, and if the value of the Liquid expression is rendered as "abcd", the rendered value "abcd" is saved as the sent UCT, but the expression {{my_param}} is saved as the non-sent UCT. You can obtain the rendered value in non-sent UCTs by getting it from the sent UCT that has the same message_uuid as the non-sent UCT.

Link tracking and iOS 17

Apple's iOS 17 contains a major privacy enhancement called Link Tracking Protection. This feature offers increased user-level tracking safeguards in Messages, Mail, and Safari Private Browsing. It detects user-identifiable tracking parameters in link URLs, and automatically removes them.

Does this enhancement impact emails sent from the Blueshift platform?

No. These changes will not impact your ability to track links or how you measure campaign performance on the Blueshift platform. 

The Blueshift team has thoroughly reviewed and tested the upcoming changes and here are our takeaways:

  • Only known ad link tracking parameters might get impacted depending upon how a customer accesses the link. Examples of such parameters include Google Adwords (gclid), Facebook (fbclid), Twitter Advertising (twclkd), Mailchimp (mc_eid), and Instagram (igshid).
  • There will be no impact to UTM or custom tracking params or redirect params.
  • Your campaigns and reports will continue to work just the way they did in the past.

Message Expiration

This setting is available for in-app messages only.

  • It allows you to set an expiration date for the message.
  • Users logging into your app after the expiration date will not see the message. This ensures that infrequent users of your app don’t see messages that are old or stale.
  • You can specify that an in-app message expires based on one of the following:
    • The amount of time that has passed since it was first sent.
    • A specific date and time (available for one-time sends only).
  • The default setting to expire in-app messages is 30 days. The maximum expiration time can be set as 90 days (2160 hours or 13 weeks).


  • If you set criteria for users to re-qualify for the campaign, make sure that the message expiration period is equal to or shorter than the re-qualification period. This prevents users from getting the same message multiple times due to re-qualification.
  • For recurring campaigns, the message expiration period should fit within the campaign's repeat cycle. This prevents users from getting the same message multiple times if they don't open the app during that time.



  • This setting is available for Live Content triggers only.
  • It allows you to specify whether you want to show the selected Live Content campaign to the customer or whether you want to hide it from the customer.
    • The default action is to show the selected Live Content campaign.

Live Content Trigger - Action.png

Live Content Trigger vs Live Content Campaign

A campaign journey can only perform actions which are of the push type, for example send a message, make an API call etc. Once a journey has completed the action for a given customer, it moves to the next one. A campaign journey cannot be used to fetch content on demand. That is the job of a Live Content campaign.

The main reason why you would want to use a Live Content trigger in the journey builder would be to plan and visualize all your customer touch points across all channels in a single location. The job of the Live Content trigger is to control the audience of a Live Content campaign. If a customer meets all the delay and trigger criteria specified in the Live Content trigger, the trigger will instruct the selected Live Content campaign to show/ hide the content (based on the configured 'action') to/from the customer the next time they visit your website. This is why you still need to create a Live Content campaign and launch it first in order to use a Live Content trigger in a journey.


Since the job of a Live Content trigger is to add/ remove a customer to/ from a Live Content campaign, you will not see any engagement stats (sends, opens, clicks etc) for this trigger. All engagement stats will be tied to the Live Content campaign that is actually responsible for displaying the content to the customer.  Customer flows through Live Content triggers will be tracked with 'action' = 'journey'  and 'action_type' = 'live_content' in  campaign activity reports.

Was this article helpful?
0 out of 0 found this helpful



Please sign in to leave a comment.