top of page

How I redesigned Best Buy's homepage for 8M+ users and why less personalization drove more conversions

Best Buy's mobile app served every user the same generic homepage - despite rich behavioral data sitting idle. I led end-to-end design of an AI/ML-powered personalization system across 6 user segments.

GHP2.png

METRIC

+3.2% 

Order Conversion

IMPACT

+2.1% 

Revenue/Customer

SCALE

8M+

Monthly Users

TIMELINE

7 mo

Discovery to Ship

My Role:
Senior Experience Designer. End-to-end ownership from discovery through launch partnering with 2 PMs, 1 researcher, 4 engineers, and the personalization data-science team.

BUSINESS CONTEXT

​A direct revenue lever hiding in plain sight

88%

of homepage visitors saw content with zero relevance to their history - yet users who engaged with relevant content converted at 3× the rate of those who didn't. Personalization had been on the roadmap for two years. This data finally made it a priority.

The opportunity wasn't just UX improvement. It was a direct, measurable revenue lever with clear data behind it. My first job was framing it that way to get cross-functional buy-in from Product, Data science, Legal, and Content - all of whom had competing priorities and concerns.

UNDERSTANDING THE PROBLEM

One homepage, eight million different people

One homepage, 8 million different people

Every user — first-time visitor, loyal member, lapsed customer — saw identical static content. The app had rich behavioral data but wasn't using any of it on the most visited screen.

Information overload, not information deficit

The problem wasn't that users lacked content. It was that they couldn't find what was relevant. More modules would make this worse, not better.
 

Data sat idle while engagement dropped

Browse history, purchase history, saved items, reward status — all unused on the homepage. Users who'd bought a TV were shown TVs again. Users with a full cart were shown onboarding content.

Zero-party data was stale before it was used

Users rarely updated declared preferences after setup. The data team's model relied on it. Part of my role was reframing the personalization logic around behavioural signals instead.

HOW MIGHT WE

"How might we leverage behavioral data and AI/ML to dynamically adapt the homepage per user - reducing cognitive load rather than adding to it?"

RESEARCH INSIGHTS

Three buckets. Everything else was noise.

3

Users grouped all homepage content into exactly three mental buckets.

"Continue what I was doing," "deals and savings," and "discover something new." Everything outside these three categories created noise. This became the IA foundation — and the reason we reduced module count instead of increasing it.

I scoped the initial launch to Segment 1 users - the highest-engagement, highest-conversion cohort: resourceful, data-literate, and confident in using tools to make decisions. This was a deliberate strategic choice, not a limitation. Designing for the most responsive segment first let us validate the model and prove the business case before expanding.
 

This persona directly informed the decision to weight behavioral signals over declared preferences - Segment 1 users engaged frequently enough to generate reliable behavioral data within days of a new session.

DESIGN OPPORTUNITIES

Four principles that shaped the system

Surface the right moment, not more content

Identify where in the customer journey each user is and serve content relevant to that exact moment, not their overall history.

Build a modular, segment-aware IA

Design a component system where each module has a confidence threshold only shown when the signal is strong enough to be relevant.

Let behaviour speak louder than preferences

Replace stale declared preferences with real-time behavioral signals browsing, saving, purchasing as the primary personalization input.

Give users light control without burdening them

Empower users to shape their experience through passive signals not through settings menus they'll never open.
 

DESIGN PROCESS

Modular by design, scalable by intent

I created modular layouts for each user segment - each built from a shared component library with dynamic content slots. The architecture needed to support 6 segments at launch and scale to more. Every component was designed with a "no data" fallback state for new users with no behavioral history, ensuring the system degraded gracefully rather than showing blank or irrelevant content.

INITIAL ITERATIONS WITH NEW BRANDING

Initial-PHP-design.png

POST LAUNCH VALIDATION - 60 USERS

The content was right. The hierarchy wasn't.

83%

Said the personalized homepage helped them save time and money

57%

Used the homepage to track rewards and savings

60%

Recognized personalized content based on their shopping behavior

46%

Browsed deals through personalized modules

After launch, I ran a post-launch survey with 60 users to validate perception and surface iteration opportunities. The findings confirmed the approach - and revealed the next problem to solve.

The tension: useful but visually underwhelming. A meaningful portion of users said the layout felt disorganized and uninspiring - even while rating personalization positively. This became the brief for the next iteration: the content was right, the hierarchy wasn't.

FINAL DESIGNS

6 screen states across the full segment range

From new user onboarding through to high-engagement returning customers with full behavioral history.

GHP 1 - New User

GHP 4 - Deals Seeker

GHP 2 - Returning User

GHP 5 - Rewards

GHP 3 - Continue Shopping

GHP 6 - Member

KEY DESIGN DECISIONS

Three calls that changed the outcome

​01 - We chose fewer modules over more personalization

The product team's instinct was to add more personalized modules - more content, more relevance signals, more surface area. The card-sorting study showed users mentally grouped content into just three buckets. Everything outside those three created noise. I pushed to reduce module count and raise the confidence threshold for each one - only show a module when the signal is strong enough to be genuinely relevant.

The brief assumed personalization meant showing users more. The research said the opposite.

Coverage vs. relevance - chose relevance

​02 - We scoped to Segment 1 first, against pressure to launch broader

There was stakeholder pressure to launch personalization for all segments simultaneously. I recommended against it. With 8M+ users across multiple segments, designing for everyone at once would have produced a lowest-common-denominator experience that served no one well. Focusing on Segment 1 - the highest-engagement cohort - let us validate the model, prove the business case, and iterate before scaling. I made this case in design thinking workshops over pushback from the product side.

Broader Launch vs. Validated Learning - chose Validation

​03 - We replaced declared preferences with behavioral signals as the primary input

The original brief called for zero-party data (user-declared preferences) as the primary personalization signal. During discovery, I found users rarely updated preferences after setup - the data was stale within weeks. Behavioral signals were more accurate and more current. Recommending this change wasn't just a design decision - it affected how the data team built the ML model and what Legal needed to review. I facilitated alignment across all three teams before finalizing the direction.

User Control vs. Behavioral Accuracy - chose Accuracy

RESULTS - VALIDATED BY A/B TESTING

Showing less, with higher confidence, outperformed showing more.

The 69% engagement lift came not from adding more, but from showing less with higher confidence. Every metric moved in the same direction.

69%

User engagement lift

3.2% 

Order conversion increase

2.1%

Revenue/Customer

15.8%

Sign-up increase

WHAT I LEARNED

Three things I'd do differently - and the same

Research that contradicts the brief is the most valuable

The brief assumed personalization meant more content. The card-sorting study said less. That contradiction changed the entire direction. I'll always run discovery before accepting a brief's assumptions.

Stakeholder alignment is a design deliverable

Getting Legal, Data, and Product aligned on the behavioral data decision took three workshops. Without it, the ML model would have been built on the wrong signals. Alignment isn't admin - it's part of the design.

Post-launch research changed the next version more than pre-launch did

The "disorganized and uninspiring" finding only emerged after launch. I'd build post-launch feedback loops in from day one now - not treat them as optional. The best brief for v2 always comes from v1 users.

bottom of page