All Collections
Best Practices & Use Cases
Use Cases
How to personalize the content of my push notification?
How to personalize the content of my push notification?
Need help creating a dynamic campaign? Here are all the steps you need to follow.
Antoine avatar
Written by Antoine
Updated over a week ago

Batch provides a system of dynamic content and a templating engine, allowing you to make dynamic messages for your campaigns.


You can personalize your push notifications from the campaign editor.

When editing your message, just click on the {...} button, choose the custom attribute you want to personalize your message with and the formatting.
For instance, you can customize the name, the city, or the amount left in the pot's user.

Once it's done, click again on the {...} button below the preview to see how the notification will look for 10 random installs.

Note: Don't forget to add a default value so that the content of your message adapts if the user doesn't have the attribute fulfilled.

Using dynamic content wisely in your notifications

As you can use the native and custom data you have collected on your users, dynamic messages can be very handful to build user loyalty by creating bonds, update users about special info or event near them or encourage them to use the app.

It will definitely help you make a difference in the eye of your audience and optimize your open rate.

Here are a few examples:

πŸ”΄ Pay attention: For some users, you may not have this data information available. For example, if you target all your user base (logged and non-logged users), those who are non-logged have no first name custom data available, so it will generate blank space.

How to avoid a blank space?

When you add a personalization variable, you should use this condition code:

Hello{% if c.firstname|trim(nullIfEmpty:true) != None %} {{ c.firstname }}{% endif %}!

Note: It works for all your dynamic custom data, you just have to replace 'c.firstname' with the one you want and "Hello" with your proper wording.

Did this answer your question?