Every channel was reporting a win, but nobody could explain how a customer actually got from first touch to conversion.
I built a framework to fix the underlying data problem and pushed the team to stop fighting over attribution credit and start optimizing for what customers were actually doing.
The Problem
The Challenge
Customers move across paid, owned, and earned channels, plus web, app, and offline moments — store visits, events, word of mouth. Each channel reported success on its own terms, but none of it stitched into a single journey.
Two things were breaking it. First, the data: product owned the tags and events, and when they renamed something, they didn't always tell us — so tracking would silently break with no warning. Second, the model: attribution is built around channels and campaigns, not around how customers actually behave. An email that sets up a later search conversion gets zero credit for the work it did. The reports could tell you where a conversion landed, but never what to actually do next — change the message order, the timing, the frequency, the next-best-action.
What Changed
The Result
I built a system that flagged marketing ops the moment a Braze event or tag name changed, so engineering could update before anything broke downstream. That dropped our campaign setup error rate to about 1%. I also pushed the team to adopt Braze's AI-native decisioning and experimentation tools — shifting the question from "which channel gets the credit" to "what is this specific customer doing, and what's the best next move for them."
Campaigns built on the new model saw 18% higher CTR and 10% higher conversion overall. The team stopped relitigating attribution models every quarter and started optimizing the actual customer journey off real behavior.
~1%
Campaign Setup
Error Rate
18%
Higher
CTR
10%
Higher
Conversion