Case 01 / APPLE

Approval as design.

Apple teams ran hundreds of experiments a week on third-party software they could not trust, customize, or stop retraining staff on. I designed the internal replacement, solo.

01

What shipped

An internal A/B and multivariate testing platform that replaced Optimizely and Adobe Test & Target across Apple's global storefront. Hundreds of weekly experiments, dozens of regional Apple.com properties, one approval chain.

I led it solo from kickoff through engineering handoff. Discovery, requirements, IA, wireframes, prototyping. Handed to engineering at the visual phase. The platform launched internally. The third-party contracts ended.

My scope: requirements, IA, interaction design, and systems architecture. Visual design was handled internally by Apple's marketing team. The interactive diagrams below are code-rendered recreations of the UX work.

METROLINE
Search experiments...
3
Welcome Back, John ↓
EXPERIMENTSFR +
Status
Domain
Team
Date
MARCH · 2025123456789101112131415161718192021222324252627282930Apple Music · pricing testApple.com cart / 2-day shippingApple TV+ search · MVTApple.com hero · A/BApp Store feature bannerACTIVEPAUSEDDRAFT
Active Experiments
NameVisitorsGoalsStart DateEnd DateUser
Lorem ipsum dolor sit amet4,0411Mar 12, 2025Apr 26, 2025John Apple
Mauris volutpat quam sed urna...80,5742Mar 12, 2025Apr 26, 2025John Apple
Nunc sed orci volutpat30,6741Mar 12, 2025Apr 26, 2025Mark Apple
Paused Experiments
NameVisitorsGoalsStart DateEnd DateUser
Lorem ipsum dolor sit amet1,0411Mar 12, 2025Apr 26, 2025John Apple
Nunc sed orci volutpat22,0412Mar 12, 2025Apr 26, 2025Lisa Apple
02

Picking up mid-stream

I came in after the project had already started. That meant the design approach had to adapt. Rather than starting from a blank page, I started at the end — reviewing what had been decided, what had been built, what had been tried and dropped — then worked the system backward until the desired result was reached for both the business and the user.

Discovery was guerrilla. Solo designer, embedded with the marketing team that would actually use the tool. No formal user research budget, but full unrestricted access to the final user. I asked questions, showed work, got answers within the day, iterated. The persona was the team I sat with: marketing managers, age 28 to 50, running tests across regional Apple.com properties, judged on the difference between a thousand and a million in revenue impact per offer.

03

Ownership had no trail

The visible cost was a seven-figure licensing bill. The real one was control. Two third-party platforms running customer-facing experiments on the storefront, neither one giving Apple full audit visibility, neither one routed through Apple's own identity layer. Marketing kept losing track of who owned what test.

The fix had to be foundational, not cosmetic. Everything routes through Apple Directory. One login, one trail, no parallel auth surface. Managers see who approved what. Engineers see what they are cleared to build. Testers see what they are allowed to run. Roles are enforced at the data layer; the UI doesn't render what doesn't apply.

Ownership cannot be added to a platform not built with it. The accountability model had to be the foundation, not a feature layered on top.

Permissions / routed through Apple Directory

APPLE DIRECTORYROLE 01Manager · approveROLE 02Tester · runROLE 03Engineering · build

One identity → one ownership trail · no second auth surface

04

Three questions, one screen

Research with the marketing team surfaced three questions every tester needs answered the moment they open the platform. What is running. How long has it been running. Where. The default answer was a sortable table. It answers one. Status tells you what's running, but duration requires mental math from a start date, and location is a text field, not a spatial read.

I built both views before committing to either. The list answered one question. The calendar answered all three at a glance. Active maps to bar fill. Duration maps to bar length. Location maps to domain on the Y-axis. No filters, no sort, no clicks to read current state.

The responsive framework built behind it had to support every screen size Apple's marketing team actually used: desktop down to 1280, tablet landscape down to 800, tablet portrait, and mobile down to 360. Sixteen-column grid at desktop, collapsing to twelve, then eight, then four. Same dashboard, same reads, no compromise per size.

Built both before committing. The list answered one question. The calendar answered all three without a click.

Dashboard / hover tests to inspect

SEPTEMBER · 2024123456789101112131415161718192021222324252627282930Apple Music · pricing testACTIVEApple.com cart / 2-day shippingACTIVEApple TV+ search · MVTPAUSEDApple.com hero · A/BDRAFTACTIVEPAUSEDDRAFT
05

Approval as design

Setup runs as a five-step flow: Metadata, Audience, Offer, Variants, Review. Two of the steps are gated. You can't configure an offer without an approved launchpad request. You can't advance past Offers without manager sign-off. The gates aren't friction layered on top of a workflow; they are the workflow.

At Apple's scale, an unapproved offer hitting storefront customers mid-campaign costs millions. The stepper makes the chain visible without making it punishing. Gated steps show what is blocking and why. Unlocked steps are fully editable. The flow mirrors the approval chain the team already operates by.

Drafts are part of the same logic. Testers run hundreds of experiments a week. Some are minor, some are global. The drafts surface lets a user pause one in flight, start another, and come back without losing context. Start, stop, edit. No data loss, no separate save.

A gate that blocks unapproved experiments on a global storefront is not friction. It is the platform doing exactly what it was built to do.

Experiment setup / gated five-step flow

⚿ = approval gate · click steps to explore

Select experiment type

GATED

All new experiments route through here. Choose A/B for two-variant testing or MVT for multi-variant. Requires manager approval before proceeding to setup.

TypeA/B Test
TypeMultivariate (MVT)

⚿ Approval required

Manager sign-off via Apple Directory before you can proceed. Blocks unapproved changes to live storefronts at the system level.

06

Variants the system enforces

An experiment contains variants. A variant cannot belong to a different experiment type. You cannot mix A/B and multivariate inside one experiment. The constraint is enforced at the data model, not just the UI, so users never hit a wall the system could have prevented.

The editor handles variant selection, page selection within a variant, in-browser simulation across Safari, Chrome, Firefox, and Edge, inline editing with save and undo, and live preview. Audience targeting goes down to IP-level granularity through a drag-and-drop palette, with HTML and JavaScript overrides for cases the palette can't reach. Traffic allocation is a single slider — complex math, simple control surface.

Offer types map to the way the marketing team actually composes a test. Shipping cost. Free items. Default shipping methods. Shipping groups for paid versus free comparisons. Each offer attaches to its experiment with the same five-step flow, the same approval gates, the same audit trail.

Variant editor / inline editing with browser simulator

SAVEUNDOREDO

Live preview / Variant A · Safari

APPLE.COM / STOREHOLIDAY OFFER · 30% OFFSHOP NOWPRODUCT MEDIA

Promotional headline with percentage discount and CTA button.

OFFERSAUDIENCESETTINGSEXPERIMENT 04219 · DRAFT