Expandi ProductCampaign builder
Found the one word breaking Expandi's campaign builder, and rebuilt its mental model around it.
The builder ran 40% of active campaigns and produced 18% of all support tickets. Strategy called it the future of the product; support was quietly steering trial users back to the legacy one. The roadmap was a list of features. None of them explained why nobody could predict what a campaign would do.
- of all support tickets came from this screen
- 18%
- of active campaigns run on it
- 40%
- phases shipped, March to July 2026
- 5
- I tagged twenty-two support conversations by what the user expected against what happened. Most traced back to one label, "Wait for", which meant a timer on some steps and a watch with a limit on others.
- A trial user could lose their whole seven-day trial to a default they didn't know was running.
- New users building a first sequence inside a seven-day trial, and agencies running dozens of campaigns they need to trust unattended.
- Power users asked for every setting on the canvas. I chose predictability for the many over control for the few, and kept advanced settings one level down.
- Instead of shipping the feature list, I took the evidence to product and support together and argued that the mental model was the bug. The roadmap was re-cut into five phases around it.
- Part of "it's slow" was true and not fixable soon. Rather than hide it, we showed predicted speed on the canvas.
- The word split in two: Wait is a chip on the line between steps; Watch lives inside a condition, with its limit visible.
- A setting nearly everyone would have used to get their account flagged was removed, not explained.
- Saving never blocks, unfinished work is kept, and an incident panel lists what stops a campaign from going live.
- Five phases shipped, March to July 2026. Existing campaigns converted with no change in behaviour.
- Users add or remove a step without rebuilding, and preview every message before it sends.
- Activation hasn't moved yet. The number I'm watching next is tickets about waiting.



(Keep browsing)

