In-App Messages help you get content to your user without interrupting their day with a push notification. Customized and tailored in-app messages enhance the user experience and help your audience get the most value out of your app. With a variety of layouts and customization tools to choose from, in-app messages engage your users more than ever before.
To see examples of in-app messages, check out our Client Integration Gallery.
Braze has refreshed in-app messages! Though the creation process is very much the same, our in-app messages have a new, modern look and feel optimized for the best experiences for your customers and give you more options to personalize the experience. For more information on our most recent upgrades to in-app messages, check out our Generation Comparison documentation!
When to Use In-App Messages
In-app messages are good for a lot of things. They can be used in web apps, Android apps, iOS apps, and more!
In-app messages don’t deliver outside of the user’s app and won’t intrude on their home screen, like push notifications do. In-app messages, by their nature, exist within your app and come with context and are almost never unwelcome! They’re always delivered when the user is active within your app.
Great Use Cases
- New App Features
- App Management
- App Upgrades/Updates
- Giveaways & Sweepstakes
- Sales and Promotions
- Product Sales
- Encouraging and rewarding discovery
- Permission Requests/Push Priming
In-App Message Types
Braze offers several default in-app message types, each customizable with messages, images, Font Awesome icons, click actions, analytics, editable styling and color schemes. The currently available types are
HTML Full. It is also possible to define your own custom in-app message view.
All in-app messages implement the
IInAppMessage interface, which defines basic behavior and traits for all in-app messages.
InAppMessageBase is an abstract class that implements
IInAppMessage and provides the foundational in-app message implementation. All in-app message classes are subclasses of
In addition, there is a subinterface of
IInAppMessageImmersive, which adds click action and analytics enabled buttons, as well as header text and a close button.
InAppMessageImmersiveBase is an abstract class that implements
IInAppMessageImmersive and provides the foundational
immersive in-app message implementation.
Full in-app messages are subclasses of
Expected Behaviors by Message Types
These are what each in-app message type will appear like for your users.
Slideup in-app messages are so-named because they “slide up” or “slide down” from the top or bottom of the screen. They cover a small portion of the screen and provide an effective and non-intrusive messaging capability.
Modal in-app messages appear in the center of the screen and are framed by a translucent panel. Useful for more critical messaging, they can be equipped with up to two click action and analytics enabled buttons.
Full in-app messages are useful for maximizing the content and impact of your user communication. The upper half of a
full in-app message contains an image and the lower half displays text as well as up to two click action and analytics enabled buttons.
HTML Full in-app messages are useful for creating fully customized user content. User-defined HTML Full in-app message content is displayed in a and may optionally contain other rich content, such as images and fonts, allowing for full control over message appearance and functionality.
Full in-app message content is displayed in a
WKWebView and may optionally contain other rich content, such as images and fonts, allowing for full control over message appearance and functionality.
Please note that we currently do not support display of custom HTML in-app messages in an iFrame on the iOS and Android platforms.
In-Depth: Defining Custom In-App Message Types
slideup in-app message object extends
modal type messages extend
InAppMessageImmersiveBase. Extending one of these classes gives you the option of adding custom functionality to your locally generated in-app messages.
CustomInAppMessage.java in the DroidBoy sample app for an example implementation.