Design Engineer

Optimizely Onramp

A marketer's best first personalization campaign, before they knew they needed one.

role
Lead design engineer
team
4 capstone designers, 2 Optimizely PMs
timeline
8 months, 2026
outcome
Committed to build
build
React, built with Claude Code.
A Welcome back offer for returning visitors, running in the prototype, with its verdict above the journey that produced it.

Whoever buys personalization is rarely the one who runs it.

A marketing leader signs for personalization, usually bundled with Optimizely's A/B testing. Running it falls to a marketer, who finds out afterwards: “oh, and by the way, we bought this personalization product.” They never chose it, and they still report to the leader who did.

Who signs it

A marketing leader

Signed for both products

Who runs it

A marketer who never signed anything

Handed both products

One contract · two products included

  • Web Experimentation
  • Web Personalization

Signed

492 accounts paid for personalization in June, and only 58 did anything with it.

Optimizely asked my team to explore what marketers could do with AI agents. I looked for what was broken first. Paying accounts grew every month from September to June, while the number using it stayed between 49 and 61.

Of the accounts that launch one campaign, 82% go on to launch three or more.

Fewer than 1 in 8 paying accounts used it

Used it

Didn't use it

Optimizely's own analytics.

Marketers on completely different tools were stuck for the same three reasons.

I expected the problem to live inside Optimizely's product, so we started with the experts who build and sell it. Then marketers on other tools described the same stalls, so the problem was bigger than Optimizely's interface.

Ten in-depth interviews

Six subject-matter experts

They see across many accounts.

Four marketers

They personalize somewhere else entirely.

Ten in-depth interviews, with six experts and four marketers, gave three reasons.

  • They don't know when to start.

  • They don't think they have the data.

  • They can't tell if it worked.

The first campaign waits next to the A/B tests a marketer already runs.

Marketers didn't know when to start, so I put the start where they already work: a quiet band on the Overview tab. Most weren't even going into Personalization to set it up.

I like what y'all are doing… people are not going to be living inside Opal. They're going to be inside here.
an Optimizely strategist, back to walk the prototype

Optimizations

OverviewExperimentsPersonalization CampaignsExclusion Groups

Suggested for you

Treat returning visitors differently.

  • ~58% of this week’s sessions, up from ~40%
  • 0 of 6 experiments treat them differently

Takes under 10 minutes

NameTypeStatusModified
Autumn-quarter homepage hero CTAA/B TestRunningJul 18, 2026
Course-catalog search redesignA/B TestRunningJul 15, 2026
Financial-aid form lengthA/B TestRunningJul 12, 2026
Apply-now button copyA/B TestPausedJul 10, 2026
Giving-page donation askA/B TestRunningJul 7, 2026
Tuition-page layoutA/B TestNot StartedJul 3, 2026
The nudge sits on Overview, above the six experiments it names.

Each account sees which campaigns it can run today, and what the rest need.

Experts told us marketers assume they need a customer data platform first. That's true for some campaigns and not others, so each campaign is sorted by the data the account already has. When one needs the tracking snippet, the page names who installs it and drafts the note to send.

Ready to launch

Campaigns you can launch now

Welcome back offer

  • Returning visitors
  • Homepage hero
  • Under 10 min

Uses data you already have

A few steps away

Campaigns that need one setup step

Program-page revisit

  • Viewed a program page
  • Program-page banner
  • About 5 min

Needs program-page view tracking

Grows with your data

Campaigns that unlock when you turn on a signal

Engaged-visitor nudge

  • Viewed several program pages
  • Program-page banner
  • About a minute

Turn on program-page view tracking, no developer

The right-hand card carries one line the left-hand one does not: the thing that is missing, and who has to do it.

Install the snippet

The snippet lets your campaigns show on your site.

  1. Opal

    Opal drafts the snippet for your site.

  2. about 10 minutes

    You: paste it into your site’s header.

    Not your job? Send it to whoever manages the site.

    Hide the noteShow a note you can send
    Hi! We’re setting up Optimizely personalization on our site. Could you paste their one-time snippet into the site’s header? It’s about a 10-minute job – nothing shows to visitors until we launch a campaign.

    Copy it into an email or chat.

  3. Opal

    Opal checks that it’s firing and lets you know.

Two of the three steps are the product's. For the one that is not, the page writes the words and stops there: the marketer copies them into their own email, and nothing is sent on their behalf.

3:02

I wrote the film as a mockumentary so anyone could understand the concept and feel part of it.

I asked for an honest read, and the rule built from it banned any verdict.

I chose to promise marketers an honest read instead of proof of a winner. The agents turned that into a rule: the page could never give a verdict. I thought the page answered the marketer's question, since it came from my promise.

The spec's first test was “No verdict, ever,” and the page passed. The spec even quoted a former customer asking “How do I know if my personalization campaign made me money or not?” as its reason never to answer.

The agents’ rule said, by accident

“No verdict, ever.”

The first design of the results page

Aid-seeker welcome

Results so far

Financial-aid form starts are higher with this offer than without.

Saw the offer
3.8%
Didn’t see it
3.1%

Did it work?

The page never says.

A marketer has to tell their manager if it worked or not, so now the page does.

Two Optimizely experts walked the prototype and neither could say what the results page meant. That's when I found the rule I'd missed.

The rule was right that a page can't always prove a winner, but a winner was never the only answer. So I redesigned the page myself around a verdict a marketer can repeat, sized to the evidence: from enough data to act to a direction, not proof. The redesign is merged.

I changed the rule

“Tell the manager if it worked or not.”

The last design of the results page

Enough data to act

About 300 additional form starts per quarter

People who saw the banner started the form 22% more often.

With banner
3.8%
Without it
3.1%

Did it work?

Yes, it did work.

Journey after seeing the banner

Saw the banner5,300

12% clicked through

Reached the form640

31% started

Started the formYour success metric200

65% finished

Finished it130

Four people and a set of agents, and the hard part was agreeing.

I built the knowledge base the four of us and the agents worked from.

  • Alignment is a document someone owns, not a meeting everyone attends.

    Four people can agree out loud and still be holding four different plans.

    I wrote the plan down only after we'd disagreed. The next time, nobody argued with me. They went and read it.

  • Agents produce work faster than anyone can form an opinion about it.

    A decision that turned out fine is not the same as a decision anyone reasoned through, and at this speed nobody notices the difference.

    I stopped reviewing only what the agents produced, and started reading the specs they worked from, where the decisions get made.

  • Stakeholders commit to a problem they can retell, not to a solution they were shown.

    An advisor said it back to us unprompted: you're brand new to the business, the old person who ran it left, you're picking it up. “That's so real for us.”

Optimizely committed to building it. Next is the campaign nobody nudges.

I scoped the work to the first campaign, because that's where the problem was. The second starts differently: nobody hands it to you, and every prototype campaign begins with a nudge. Next, I'd design one built from scratch.

The rest of the story is a conversation, 20 minutes.