How to create a re-optin campaign to improve my opt-in rate?
Do you need to improve your opt-in rate? Here are all the steps you need to take to create a re-opt-in In-App automation for iOS and Android.
Encouraging users who have opted out to enable push notifications is essential for re-engagement, particularly within the first 7 days after app installation. This can easily be achieved in just a few minutes using an in-app message. Check this Documentation to have more details about In-app automations channel.
Understanding iOS & Android push permission
On iOS and Android 13 and higher, users must give their consent to receive push notifications from your app (or "opt-in"). Users who didn't see the push permission prompt or refused to receive push notifications are considered "opt-out".

iOS and Android push permission prompts are similar:
On iOS, the permission prompt can only be displayed once. On Android, users can tap in the grey area to dismiss the permission prompt. It will be displayed again the next time users will open the app.
The wording of the push permission prompts cannot be customized.
Developers can choose when the permission prompt is triggered (e.g., after a pre-permission screen, as part of the onboarding tutorial, presenting why you are asking users to turn on push notifications. Read this Guide on how to improve your opt-in rate).
Users who do not allow push notifications cannot trigger the push permission prompt again later. They need to go to the system settings to grant the push permission for your app.
On Android, the system (via Play Protect) will automatically revoke the push permission for long-time dormant users.
Creating a re-opt-in automation using In-App automations
1. Set-up
Batch In-App Messages are a powerful tool to encourage opt-out users to enable push notifications. These In-App automations allow you to efficiently invite such users back by suggesting they turn on notifications. With Batch's advanced targeting and personalization features, you can display these messages at the right moment and context, following a meaningful action.
With Batch built-in data: New session = an open of the app (except the 1rst opening after the download)
With custom event (if you have some):
Media benchmark: When users reach the end of an article, share or save an article, create or log into their account, get a premium subscription, etc.
Retail benchmark: When users add an item to their wish list, add a favorite brand, or after the checkout, to be sure they get alerts on their delivery.
...And any other event that an engaged user could trigger within your application
To start with, go to Automations tab and create a New Automation "In-app" message.

2. Trigger event
Here is where you choose when the re-opt-in automation will be triggered:
Display event: You can select the native "New session" event, that will trigger the In-app message when a user opens the application (or if you have any other relevant custom event, you can use it). You can add up to 10 different trigger events, and when your users triggers any of these events, it will initiate the In-app's display (only the first event triggered will display the In-app).
Delay (optional): You can add a delay of up to 60 seconds before displaying the in-app message, creating a smoother user experience (not really important for this use case).
Capping: This feature helps you to control marketing pressure. You can determine how many times a user can see this In-app message in total.
Grace period: This allows you to define a time window, in hours or days, during which any new trigger events, on the same campaign, will be ignored after a notification has been sent to the same Profile. This helps prevent messages from being sent too close together.
In the example below, the Trigger event is the New session, and we have set a capping of 2 - this means a user will see the In-App message 2 times maximum, with a delay of 30 days minimum.

3. Targeting
Add the "Push opt-in" condition to your targeting, set it to "contains none of" and select both "IOS" and "Android"to target exclusively users who did not turn on notifications on one of the OS.

"NEW SESSION" event triggers the display of the In-App when the app is opened. Note that the In-app needs to be preloaded, so the the user will see the In-App message at least at the second opening, even after turning opt-in.
4. Timing
The timing allows you to determine a start date and an end date for your In-app message.
Universal time ⇒ this option lets you schedule the start date based on a fixed UTC time, no matter where your users are located.
Profile's local time ⇒ This option ensures your In-app messages to start/end at the same hour in each country (based on the users timezone).

5. Quiet Times (optional)
This feature lets you define specific days or time slots during which messages will not be shown to your profiles. For In-app channel, when Quiet Hours are enabled, messages are automatically skipped during the selected periods.
6. In-app message edition
Check this Documentation to have more details about the In-app composer.
Then, you can build your In-app message:
Create your template and the design you want
By starting from scratch and using Batch's drag & drop In-app composer to create your template from A to Z, with 1 or 2 CTA's (one redirects to push opt-in prompt and the second is to dismiss/close the In-app)
Or by starting from existing templates, where you will need to personalize your own graphic elements, colors, images, etc.
Add wording for the text and the buttons of your message, according to your theme.
Configure the button(s) action: Choose the "Smart push re-optin" Built-in option as the primary action on your CTA. If you have a second button, you can choose the "Dismiss" action, to close the in-app, or a specific deeplink.

Clicking a button linked to the "Smart push re-optin" action will have different outcomes based on your users:
If users never triggered the push permission prompt, → Batch will trigger the push permission prompt, allowing users to turn on push notifications.
If users have already triggered the push permission prompt and didn't turn on notifications → Batch will direct users to the system settings, in the section dedicated to your app, where users will be able to turn on push notifications.

7. Test your automation
While the In-App composer preview is useful, the final rendering may vary across devices and OS. Always use the “Send test” option to validate your message on real devices, with your Installation ID or Custom ID (See the guides to find the Installation ID for iOS and Android). You will need to be opt-in to mobile push notifications in order to test it.
But, if you want to test a re-opt-in automation in a real situation/conditions, your device has to be opt-out. In this state, you can’t receive the test push via the Send a test feature. That’s why you need to create an Audience with your Installation ID or Custom ID, activate you automation and trigger the event naturally.
And you are all set with the reopt-in scenario! You can save the draft, or run it ✅
Last updated

