Aampe / Reward Functions

Letting marketers define AI success

Aampe's AI agents optimized millions of messages but measured success the same way for every customer, whether they were a shopping app chasing purchases or a music service chasing session depth. I designed the system that lets marketers define what "good" means for their agents, turning a black-box ML signal into a self-serve configuration flow that customers trusted enough to use without calling support.

Role
Sole Product Designer, end-to-end
Timeline
6 weeks · AI Martech (B2B)
Team
Chief Scientist, Product Lead, Design Lead, Engineering

One reward function for every customer. That was the problem.

Aampe is an AI-powered messaging platform. Its autonomous agents decide what to send, when to send it, and to whom, optimizing millions of messages per week. Under the hood, every agent chases a reward signal: a mathematical definition of "good outcome." Until this project, that signal was hard-coded. Every customer got the same one.

A shopping app chasing daily purchases and a music streaming service chasing monthly session depth were being optimized identically. Customer success was burning hours on calls explaining why agents "weren't learning the right thing." Growth teams had no lever to pull.

The brief: give non-technical marketers a way to define what success looks like for their AI agents. Without exposing reinforcement learning. Without requiring a data science degree.

The reframe

The obvious approach was ML configuration: expose the reward function parameters, add sliders, let power users tune weights. I went a different direction. Marketers don't think in reward functions. They think in outcomes. They already know which events mean "this worked": a purchase, a sign-up, a subscription renewal. The system's job is to translate that list into a reward signal the agents can optimize.

So the interaction became: "Tell us what success looks like, and we'll point the agents at it." Event selection, not ML configuration.

I paired every selected event with two signals: a learning quality score (how reliably agents can influence this event) and auto-weighting for related events. Validated the flow with customers across ecommerce, fintech, and media before handoff.

The hard problem

Not every event gives agents enough signal to learn from. A subscription renewal happens once a year per user. Too rare, too delayed for agents to figure out which message caused it. But "clicked the renewal link" happens within hours and statistically predicts whether someone renews.

I designed the flow that detects weak signals and guides marketers toward supporting events that give agents a faster feedback loop. The critical framing decision: position this as a capability of the system, not a limitation. "Agents learn faster with frequent signals. We've identified events that predict your long-term goal." Not: "Your event isn't good enough."

What landed

The complete flow was validated with customers across ecommerce, fintech, and media, then handed off to engineering with production specs. The path customers had been taking — calling support and waiting for an engineer to manually reconfigure the model — was replaced by a self-serve flow that tested at under five minutes to complete.

Three rounds of customer testing reshaped nearly every decision in the event selection screen, from how ML scores were displayed to how the system responded when a marketer picked an event the agents couldn't learn from.

The prototype I built in one day with real customer data shifted the internal conversation from "is this viable?" to "when can we ship?" in a single stakeholder review.

Confidential work

Screens, detailed testing sessions, design iterations, and specific metrics belong to Aampe.

The parts I can't show here include the full before/after design evolution across three testing rounds, the governance model I designed for teams running multiple reward functions simultaneously, and the specific patterns that emerged when marketers encountered ML-generated scores for the first time. I'm happy to walk through all of it live.

Request a walkthrough