Places
Channels
Learn the ins and outs of every channel that Braze supports—from email, SMS, and WhatsApp to in-app messages, push notifications, paid media, and more.Orchestration
Trying to implement winning strategies? Bring your questions about A/B testing, optimization with BrazeAI™, and creative personalization here.Data
Find answers and ask questions about our 100+ turnkey partner integrations, customizable SDKs, APIs, cloud data ingestion, and more.Recent Content
WordPress API to Catalogs
Hi all, I'm trying to automate the process of getting our blog posts (on wordpress) updated to a catalog. Ideally, this would automatically create a new catalog item when a new blog was created and would update images and information when an existing blog post is updated. Does anyone have experience doing this and how was it accomplished? Is it working for you? Thanks!45Views0likes3CommentsLatency when refreshing Banner
Hi! We're having some issues with a Banner in our app. We have a flow where 1. User clicks on Banner 2. We log a custom event 3. Custom event Triggers an IAM 4. When user clicks on the IAM, it assigns a custom attribute using the brazeBridge method 5. We flush the data 6. The user dismisses the IAM 7. We refresh the banner (after a 20 sec delay) 8. The banner re-runs the liquid to check if there is a value present in the attribute we assigned in step 4. If it is, then show a different UI. However, between step 7-8, there is a very long and inconsistent latency, between 10 seconds up to minutes. So the banner doesn't refresh. And we usually run into rate-limit issues trying to refresh the banner over, and over. Has anyone had any similar use-case, leveraging banners to trigger a modal, and then updating the banner depending on actions taken in the modal? If so, did you also have similar issues as above, and how did you solve them?20Views0likes1CommentDiscrepency between bounce count on segment vs SQL
While looking into some deliverability questions, I created a segment of recipients who have received any message after 2025-12-03, and where hard bounced is true, and found a size of 114,000 To get some better insight into the causes of these bounces, I ran a query against the USERS_MESSAGE_EMAIL_BOUNCE_SHARED table in the Query Builder, which only shows 297 bounces. Am I looking at the wrong table, or is my segment incorrect? This feels like I have a significant misunderstanding at to what these things represent. Thanks!58Views0likes2CommentsStrategy to Identify Duplicate Profiles
We needed to identify and merge duplicate Braze profiles (same email, different user IDs) across our entire user base. We evaluated two solutions. Solution 1: Identify duplicate profiles via /users/export/ids and attach a custom attribute for segmentation Export each profile, identify duplicates externally, then update profiles with a custom attribute is_duplicated=true and capture them via a segment. {% connected_content https://rest.au-01.braze.com/users/export/ids :method post :headers { "Authorization": "Bearer XXXX" } :body {"email_address":"{{${email_address}}}"} :content_type application/json :no_cache :save result %} {% if result.users.size == 1 %} {% abort_message('User is unique.') %} {% endif %} { "attributes" : [ { "braze_id" : "{{${braze_id}}}", "is_duplicated": true, "_update_existing_only" : true } ] } One caveat with this solution is that we need to export the entire user base, and it will take a couple of days to identify the duplicates. Solution 2: Identify the duplicate profiles via a Segment extension Key Assumptions: Every profile in Braze has at least one entry in USERS_BEHAVIORS_SUBSCRIPTION_GLOBALSTATECHANGE_SHARED (i.e., all profiles have a subscription state change event) Every deleted profile appears in USERS_USERDELETEREQUEST_SHARED Here's the query we're using: -- Purpose: Identify duplicate Braze profiles (same email, different user IDs) for merging via /users/merge endpoint -- Excludes deleted/orphaned users and only returns duplicates where 2+ active profiles remain WITH active_users AS ( -- Get unique user/email pairs, excluding deleted/orphaned users SELECT u.USER_ID, u.EMAIL_ADDRESS FROM USERS_BEHAVIORS_SUBSCRIPTION_GLOBALSTATECHANGE_SHARED u LEFT JOIN USERS_USERDELETEREQUEST_SHARED d ON u.USER_ID = d.USER_ID WHERE u.EMAIL_ADDRESS IS NOT NULL AND d.USER_ID IS NULL -- Exclude deleted/orphaned users GROUP BY u.USER_ID, u.EMAIL_ADDRESS -- Dedupe since source table contains multiple events per user ) SELECT DISTINCT a.USER_ID FROM active_users a INNER JOIN ( -- Find emails with more than one active user profile SELECT EMAIL_ADDRESS FROM active_users GROUP BY EMAIL_ADDRESS HAVING COUNT(*) > 1 ) dup ON a.EMAIL_ADDRESS = dup.EMAIL_ADDRESS; Key findings: This query only takes a couple of minutes to identify duplicates USERS_USERDELETEREQUEST_SHARED contains both explicitly deleted users AND users orphaned via /users/merge - this means the query automatically excludes already-merged profiles. Looks like Braze prunes orphaned profiles after /users/merge is performed. Has anyone else taken this approach? Curious if there are edge cases we should watch out for.69Views0likes2CommentsLoyalty programme recommendations
Hey Bonfire Community! We are looking at loyalty programme solutions which nicely integrate with Braze. Any experiences around partners like Open Loyalty, Antavo, Loyalty Co, Talon.One & Birdeye are very welcome :) Pros/cons and anything in between, please feel free to share! Thank you in advance. Cheers, Rosa37Views0likes1CommentRace Condition Issue between API-trigger and mail execution during Registration
Hello people, I have this interesting case which looking for a proper solution that wont affect the UX during onboarding. When user completes the registration process, we send a service mail with a verification link that users can verify their email addresses. Service mail is set as API-triggered campaign and we have this race problem that sometimes the API call is prior to mail execution which gives an error: "User can't found" Our campaign flow for user creation process on Braze contains 2 steps: 1- API call to create a ghost user (using alias and email address attribute only) to create user profile 2- API call to find the user profile and trigger the email send 3- when user clicks and verify mail --> actual user profile is created with all attributes. 4- API call to merge these user profiles. Between step 1 and 2, API call to find user data for executing email fails. Any user case or solution with this issue above? Support suggesting to add more delay between API calls to not face race condition, however registering a service and wait 3-4 minutes of 1st email for verification is not match with our UX flow. Thanks in advance274Views0likes5CommentsFigma to Braze HTML templates
Hello guys, I am trying to find a plugin or any 3rd party tool that can export from figma designs to the braze. There is this plugin called Emailify on figma which I can export the email design as HTML template directly to the email templates on braze via API. Now I am trying to apply this to landing pages and in-app messages. Anyone using custom html templates for these channels? if yes, can you please share your experience and maybe suggest a solution?258Views0likes5CommentsIssue with push notifications
Hello - We have a user stating that he is not receiving our push notifications. - He has the most updated app version. - He has push notifications allowed. - He has 2 Push Tokens (he has 2 devices), Foreground for both, for the correct app version. - He is subscribed to push notifications. - Braze is sending him the push notifications, I see them as "send" on his Messaging History tab. Everything seems correct on our end, but the user does not receive our pushes? I run the SDK debugger, and even though he closed the app and relaunched it, the debugger is still in “Waiting for device to connect”. So something is happening with his device, I assume. Any ideas on what could I test or what could be happening? I appreciate it!40Views0likes0CommentsCollecting Team Affinity Data
Hi everyone! I’m working on a project that relies 100% on explicit user data (no implicit/behavioral signals), and I’m trying to determine the best way to capture Team Affinity using Braze tools/features. My main goal is to figure out the best channel (Email, Push, or In-App Message)—or a mix of all—to collect explicit team preference data, then use that data for downstream targeting and personalization. Goal: Assign each user a preferred team (their “team affinity”) based completely on explicit data they provide — not inferred behavior. What I’m trying to solve: I want to build a system where, once a user selects their preferred team, Braze can: Capture and store that explicit preference reliably Update or overwrite it if the user changes their selection later Allow future campaigns/segments/targeting to easily reference this “team affinity” value Trigger follow-ups or automations based on a user’s declared team What I need help understanding: What is the recommended Braze setup for: Storing team affinity (Custom Attributes? Subscription Groups? Catalogs?) Capturing the explicit selection (e.g., In-App Message button actions, email deep links, or other methods) Updating the stored value cleanly when the user changes teams Making the system scalable when there are many teams Ensuring the affinity value can be used instantly for segmentation and personalization If anyone has examples, best practices, or a tried-and-true workflow for managing explicit-preference data like this, I’d love to learn from you. Thank you!72Views0likes2CommentsSurveying Tools x Braze for User Research
Hi all, TL;DR Looking for Survey Tool recommendations that integrate seamlessly with Braze for Emails and In-App Messages. Currently using Braze for Lifecycle Marketing, but our user Research team are using Iterate to build Email and In-App Message surveys. We've been discussing whether using Braze for some of their needs would make sense (for example, it would make audience management way simpler) and in parallel they're also wondering whether Iterate is the best out there for integration with Braze and cost-benefit to their needs. I know Braze has some of the functionality we need available as well, but I think it would still be quite limited (based on the wishlist below). The must-haves/wishes are: In-app surveying, email surveying Allows for these question types: multiple-choice, likert scales, ranking (wish) sliding scales Allows for these question content types: info screens (have a “question” that isn’t a question but a direction or information), images (wish) multiple choice images, videos Analysis: simple overview of question answers filter responses by date & other attributes Survey functions: randomise question order advanced branching logic (multiple layers) set limits on survey responses/sample size efficient user & event targeting with minimum dev effort (e.g. data stream from CDP) Privacy/GDPR compliant Integrates with Braze Project forders/tagging (to organise by team/research topic) Any experience or tips appreciated!55Views0likes2Comments