9 Tips and Tricks for Braze Content Cards
Need to deliver a targeted stream of app and web content that’s personalized to the individual user? Well, innovative brands are increasingly using Content Cards to make that possible, enriching their overall customer experience. Content Cards are a unique form of persistent messaging that can be viewed seamlessly within your app or web experiences—and can be completely customized to match the look and feel of your brand—and since their introduction in 2019, marketers across industries have deployed billions of these messages to support better customer engagement outcomes.
When paired with your other key messaging channels, such as emails and push notifications, Content Cards enable a cohesive, cross-channel marketing approach that drives engagement. Here are some creative ways to start taking advantage of this extremely flexible channel, featuring insider tips from our expert Justin Malandruccolo, software engineer at Braze, who shared these pointers in our Braze Bonfire Content Cards Masterclass.
#1: Know When to Use Content Cards
Content Cards make for an ideal messaging channel when your brand wants to showcase dynamic and persistent content, without interfering with the overall user experience. And because Content Cards can support a cross-channel strategy, they can be used:
To onboard new customers
To showcase new content, features, and tips
To deliver special promotions and offers
As a message center or notification feed
#2: Understand Your Content Card Format Options
Out-of-the-box Content Cards come in three unique visual layouts, as illustrated below: Banner Content Cards, Captioned Content Cards, and Classic Content Cards. These formats are created and styled right in the Braze dashboard.
For more advanced use cases, like a carousel of images or an interactive experience within the message, Content Cards can also be custom created. In essence: This channel should be thought of as a payload of data that can be displayed in any visual representation, offering unlimited potential and possibilities. (See tip #9 for ideas!)
#3: Create Omnipresent Content Cards
Want to create ever-persistent Content Cards that last longer than the standard maximum lifetime of 30 days? Use this hack:
Set your Content Card duration for 30 days
Set the re-eligibility to be enabled to 30 days
Trigger on session start
Voila! These Content Cards will stick around as long as you need them to, making them a powerful tool for staring persistent reminders and other long-running content needs.
#4: Represent Your Content Cards with Your Own Objects
For developers looking to maintain complete control over their codebase—rather than depending on the Braze SDK to customize how Content Cards look and feel—one smart approach is representing the messages with your own objects. To accomplish this on iOS, here's what you need to do:
Initialize an empty Dictionary for each Content Card you wish to represent with your own models.
Populate the Dictionary with the values of one Content Card (i.e. ["title" : "The Title of the Content Card]).
Now your Content Card will be represented as a Dictionary of data that can be used to initialize your custom models just as a JSON Dictionary can and accessing your values will be as simple as: let title = metaData["title"] as? String.
Check out more in-depth code here.
#5: Understand the Difference Between Content Cards Sent and Received
For a messaging channel like email, for instance, the distinction between “message sent” and “message received is pretty clear. But it’s a bit less intuitive when it comes to a newer channel like Content Cards. However, understanding the distinction for this channel can be a useful way of determining users' activity in your application——and understanding when each individual received the Content Card can be used for segmentation for future campaigns. So what is the difference, anway?
Sent: Refers to when the campaign has been launched or triggered.
Received: Refers to when the campaign has been first seen by your users in their feeds.
#6: Get Familiar with Your Syncing Options
Here are two syncing options available within Braze when you’re working with Content Cards:
Full Sync: Each time the changeUser() method is called, Braze will perform a Full Sync by default and this pulls all of the Content Cards a given user is eligible for from our server.
Partial Sync: In comparison, Partial Syncs pull down only the new Content Cards the user is eligible for from our server. If a user isn't eligible for any new Content Cards, the request will return 0 cards. Partial syncs occur when requestContentCardsRefresh() is called.
#7: Use Removal Events to Keep Content Card Feeds Relevant
The Braze dashboard has a Removal Event feature, which allows you to remove Content Cards from any given user's feed once the user has taken a certain action. For example, you may want to remove a promotional Content Card as soon as a user adds the promoted item to their cart.
In the screenshot below, you can see an example of how to configure this in the dashboard, within the Campaign Delivery tab:
#8: Request Content Cards Often
Use requestContentCardsRefresh to receive any new Content Cards since the last refresh. This will also remove any Content Cards users are no longer eligible for (event-removal).
Tip: In general for iOS, we recommend calling this method in viewWillAppear() rather than viewDidLoad().
#9: Get Inspired to Use Content Cards
Take a look at these custom Content Card mockups to see this versatile channel come to life.
Learn More Customer Engagement Best Practices at Braze Bonfire
Thousands of Braze users from all over the globe are active within our virtual Braze Bonfire Slack community. Join the conversation to ask questions, share your ideas, and learn from others, all while growing your network. Sign up today and get updates about future Masterclass sessions led by our experts here at Braze as well as other exciting opportunities to engage and advance your expertise.