Out of game campaigns are typically used to encourage a player to return to the game, they will often incentivize the player with a gift or reward and can be delivered by email or push notification.

Campaigns can be run as AB Tests allowing you to measure the effectiveness of different creatives. They can also contain multiple steps, so you can repeat or escalate your message if the player fails to respond. You can also define the conversion criteria that will let you measure the effectiveness of a campaign.

The steps required to setup a campaign are:

  • Setup your campaign actions (content)
  • Give the campaign a name and description that will be meaningful when viewing campaign reports.
  • Select the player segment that will be eligible for this campaign.
  • Specify a timescale for the campaign to run and the delivery time in UTC or player local time.
  • Specify campaign priority and player reset conditions that will influence how players move through campaign sequences.
  • Specify if this is a regular campaign or A/B Test and define the test variants.
  • Specify the actions (content) and conversion criteria for each campaign step
  • Specify any delays between campaign steps
  • Save, confirm & start your campaign.

Setting up Campaign Actions (Content)

There are a number of actions (content) that can be delivered to the player by the out of game campaign system:

  • iOS push notifications
  • Android push notifications
  • SendGrid emails
  • Webhooks
  • UrbanAirship actions

Actions are re-usable and they can be used in multiple campaigns. You should set them up before starting the creation process for your campaign.

You can learn more about this process in the engage actions documentation.

Campaign Name & Description

The first thing to do is to give your campaign a name and description that will be meaningful in your analysis and reporting:

Selecting Eligible Players

The next thing to specify is which players should be considered eligible for your campaign:

The segment is which players will be targeted by the campaign – in this case we have selected all players.

The exclusion segment is which players will be excluded from the campaign – in this case ‘Whales’ who have spent more than $100 in the game.

Also provided is the ability to exclude players who are not eligible for specific out of game actions – in the example above we have excluded players who are not eligible for push notifications.

Player segments are automated, they will update automatically. You can define the criteria for a player segment in the Player Segment Manager.

Campaign Timescale and Delivery Time

Campaigns can be configured to start immediately or some time in the future, set to run until a defined date or forever (until you pause or delete it) and the delivery timezone can be set:

Campaign timescale dates and times run in UTC, but the Date time selectors in this interface will reflect your local time, so remember to offset any time settings if you need to.


Campaign Priority and Player Reset Conditions

The layer Progress Reset option can be used reset a player’s progress in a multi-step campaign, effectively removing them from a campaign and resetting them back to the start.

The rules of engagement priority score lets you prioritize the order campaigns should be considered in, lowest to highest, as a player may qualify for more than one campaign but your global rules of engagement may specify that only one message can be delivered per day.


In the above example we will setup a campaign with 3 steps presenting increasingly attractive offers over the course of a week to encourage a lapsed spender to return. The player progress reset option will be used to hold them on the final campaign step for 7 days before resetting them back to the beginning. So the player will lapse for seven days, see 3 messages the following week then be left dormant for a week before the cycle kicks off again.

A/B Testing

You can specify if your campaign should run as an A/B test or not by toggling the A/B Test button:


If you enable A/B testing a second panel will appear with options that will let you define the number and size of the variant groups in your test.

Note that the variant size of all groups must add up to 100%.

The variant properties option lets you define properties that will be used by the dynamic replacement engine when your content is delivered.For example, you might have two teams: “Cops” and “Robbers” and you could use the variant properties to populate part of the message text based on your A/B test variant properties.

Specifying Campaign Actions

Each campaign can have multiple steps and each step can have multiple actions. Use the “Add Action” and “Add Step” buttons to populate the steps and actions:

Our campaign is an A/B Test with different content creative for each variant. So on Step 1 we have separate iOS and Android content to deliver and we have two versions of each, an A & B. The content delivery setup for step 1 will look like, the following.

We will consider the campaign a success if the player returns and starts playing the game, so the conversion event for Step 1 will simply be for the player to record a gameStarted event after having received this message. This can be set on the Conversion tab for Step 1.

You can also use the “Add Criteria” button to add further refinements to your conversion event. For example, a message to encourage the player to purchase a particular offer item may look for a transaction event as the conversion event and have an additional productID == XYZ criteria attached to ensure the player only converted if they bought the offer item.

There is an additional “Add Action” button within the conversion tab, this will let you trigger actions, to each variant, if the player converts. This can be used for a delivery confirmation, reward or thank you message.

Our campaign is going to have 3 steps with escalating offers to each variant, so we will need to hit the “+” button on Step 2 to create an empty Step 2 then populate it with actions and a conversion details, then the same on Step 3. With each new step you add you can specify the number of days to wait since the previous step. We are going to say 2 Days so we will progress through the steps on alternate days.

Keep going for as many steps as you need. Remember to Save your campaign and check the details on the confirmation page before pressing the START button.



Please note that you can save a campaign and come back to it at a later date to make changes, this can be handy if you need to confirm some of the settings or if more than one person are working on the configuration. However, the campaign will not run or until you press the “Start” button.

Once a campaign is started you can open it again in edit mode and change some settings

Once a campaign is running you can use the report builder at the bottom of the campaign summary page, or any of the analysis tools to build reports based on this campaign. Out of game messaging uses a variety of automated events to track campaign targeting, delivery, open rates etc. Make sure you have the relevant events in your event schema so you can build analysis and reports on your campaigns.

  • an outOfGameSend  event is sent automatically each time the Out Of Game messaging system tries to send an email or push notification message. It will contain details on the player, campaign, cohort, action, step ID, message type and crucially the communicationState and communicationDetails parameters will reveal if the message was SENT or FAILed and reveal the reason if there was failure. If a user is selected by a campaign but does not have a necessary identified for the specific Action type the communicationSender field of the outOfGameSend event will be populated with a value of UNMAPPED. For example, if a player is picked up by a lapsed user campaign and scheduled to receive an iOS push notification but they don’t have a pushNotificationToken.
  • a sendGridEmail event will be sent automatically from the sendGrid email platform to indicate delivery success or failure along with other state changes such as Open, Click etc. This event can be used to measure the click thru rate and conversions on your campaigns.
  • notificationOpened events will be sent be the deltaDNA SDKs when your game is launched from a push notification. This event will also contain a campaignID parameter if the game launch was a result of a push notification originating from deltaDNA. Please note, that this event can also be triggered by push notifications that originate from other push notification suppliers and be aware that some other SDKs, particularly from attribution companies will use push notifications to  track uninstalls, they may also try to hijack the notification callback methods in the game, so be sure to test on DEV for your particular game configuration.