Bumble Flow

Redesigning dating from passive matching to active coordination — turning matches into real plans through shared intent and availability.

Role

Lead Product Designer · Design Engineer

Platform

iOS, Android, Desktop, Watch

Timeline

4 weeks

Tools

Codex CLI (vibe coding) · Next.js · React · Figma

00 · OVERVIEW

Designing for readiness,
not just proximity.

This project began with a speculative brief inspired by the Bumble Customer Acquisition Team, given as part of a course project. The initial mandate was transactional: leverage precise location data and timely notifications to convert non-paying users into subscribers.

I reframed the opportunity around coordination — moving location out of the UI and into system logic — so premium value is tied to mutual readiness and lower-friction scheduling, not “nearby” alone.

01 · CHALLENGE

The original design brief

The original mandate paired a clear business goal with a proximity-led hypothesis. It assumed nearby would motivate real-world meetups, before anyone checked if that was true.

The original mandate

The goal

  • Increase conversion among non-paying users — 90% of whom are under 35.

The hypothesis

  • Users would convert to paid subscribers if they were notified of matches within 0.5km via “timely notifications”.

The tech

  • Use precise location services to alert users on mobile, desktop, and watch.

02 · Research

Proximity without intent is not a date. It is a notification users learned to ignore.

While the brief focused on proximity, the data told a different story — engagement with proximity alerts fell from 18% to 6% in six months, suggesting “nearby” wasn’t enough to motivate users.

Engagement with proximity alerts

Six months ago

18%

Today

6%

Net change

−12 pts

in six months. Whatever nearby promised, it stopped delivering.

The why behind the drop

To understand the gap, I synthesized themes from public dating subreddits and community forums. Three patterns kept showing up.

Frustration
Misleading proximity

People shown as nearby are often not actually local or available. The map lies a little. Time wasted compounds into churn.

Drop-off
The awkward gap

Users like each other, then stall on the manual work of scheduling. The interesting part of dating is delegated to the user.

Mental model
Distance of readiness

Half a kilometer apart is geography. It says nothing about whether someone has the energy, time, or interest to meet.

Strategic read

I moved location out of the UI and into system logic

Proximity becomes one signal among many, not the headline. The headline becomes coordination, the part of dating people actually struggle with.

Before and after: proximity-led notification versus multi-signal decision flow and output.

HMW question

How might we help users recognize moments of shared readiness — moving beyond proximity to enable real meetups?

03 · Validation

Fully automated scheduling felt invasive and reduced user control

My initial concept fully automated same-day scheduling through calendar syncing. Testing showed that efficiency came at the cost of control — users felt overexposed, and real-time availability made interactions feel monitored rather than natural.

From testing, three key issues emerged:

High-friction premium entry

  • Full calendar sync as the only entry point created early drop-off
  • Value depended on too much upfront user effort

User quote

Wait, if I don’t sync my Google Calendar, this whole feature doesn’t work for me? That feels like a huge ask before I even know if the matches are good.

Calendar logic ≠ human readiness

  • Empty time ≠ emotional availability
  • System optimized for schedule gaps, not real-life energy

User quote

Just because I’m not in a meeting at 5 PM doesn’t mean I’m available. Sometimes I just need time to decompress before talking to anyone.

Real-time status breaks safety

  • “Available now” + “Nearby” removed social cover
  • Created pressure and unwanted confrontation

User quote

If someone thinks I’m free and nearby, it can lead to pushy ‘why can’t you meet?’ messages. I need the ability to say I’m busy without the app calling me a liar.

Synthesis

The feedback converged on a single design principle: coordination should amplify mutual intent before it ever surfaces time — and premium value should not require surrendering privacy up front.

04 · Strategy

Design transformation

I pivoted from a system that found gaps in a calendar to one that aligns shared intent before surfacing availability.

FROM — CALENDAR-FIRST AUTOMATION

TO — INTENT-FIRST COORDINATION

Calendar gaps

Assumes an empty slot equals social readiness.

Intent-based

Users explicitly opt in to specific time windows.

All-or-nothing

Requires full calendar sync to unlock value.

Flexible entry

Manual input or privacy-first sync — your choice.

Exposed

“Available now” markers remove the ability to decline discreetly.

Protected

Matches suggested without broadcasting real-time status.

Feature-locked

Value hidden behind a high-friction data request.

Incentivized

“Suggested Windows” for all; Premium automates them.

05 · SOLUTION

A step by step walkthrough

Full coordination, minimal friction

Both users have synced calendars and set meeting vibes, so the system surfaces real overlap and suggests times directly in chat. Kevin's view is on the left, Lindsey's on the right — scroll to advance the timeline.

Kevin

Step 1

Limited preview — see what Premium unlocks

Kevin starts on Free. He can browse and tap into profiles, but availability and meeting-vibe context are gated — the system signals what unlocks at Premium without forcing the upgrade.

The vibe coding pipeline

I connected my Figma file into Codex, where my design system and high-fidelity wireframes lived. I iterated with handoff-style instructions—structured prompts, screenshots of specific UI states, and MCP links—to guide layout, interaction logic, and edge cases.

The diagram below shows the full pipeline, from requirements to vibe coding.

06 · SYSTEM

Moving from “who is nearby” to “who is ready”

Bumble Flow transforms matching from a passive browsing experience into an active coordination engine. By prioritizing shared intent and real-time availability, the system removes the “scheduling labor” that often causes matches to stall, creating a clear, low-friction path from conversation to a confirmed plan.

Intent-first meeting vibes

Users select a preferred meetup type — like coffee or drinks — so both parties align on expectations before messaging begins.

Smart mutual availability

The system reconciles calendar data to surface overlapping free blocks in chat, so users can suggest or accept times in a single tap.

Tiered coordination intelligence

Premium users get full calendar automation and precision; free users are nudged toward coordination with general time-of-day suggestions.

Defining availability and intent signals

Users input when they’re available and what they’re looking for — combining manual controls, calendar sync, and preference signals to shape matches and time suggestions.

Annotated Discover screens showing intent before availability, flexible availability options, manual gap filling, and preferred times.

Coordinating the right time to meet

Shared availability surfaces across chat, calendar, and list views — helping users compare options quickly, select a time, and move from conversation to a confirmed plan.

Annotated screens showing calendar view of overlapping times, suggested times in chat, and mutual availability list view.

Turning plans into confirmed meetups

Users move from selecting a time to committing to a plan — proposing, confirming, and managing meetups while keeping availability flexible for future coordination.

Annotated screens showing proposing a time in chat, locking in the plan with venue details, and confirmed meetups appearing in Bumble Flow.

07 · Decisions

Design system

The Bumble Flow design system ensures consistency and efficiency through components, guidelines, and patterns — so flows for availability, chat coordination, and subscription surfaces stay coherent as edge cases multiply.

Bumble Flow design system overview: cards, list items, tags, nav bar, microinteractions, icons, keyboards, buttons, and miscellaneous components.

08 · Reflection

Reframing the Problem Through Coordination and Systems Thinking

This project pushed me to balance user empathy with business goals more intentionally. By reframing the problem from proximity to coordination, I addressed real user pain — like the awkward gap in scheduling — while creating a clearer path for premium value.

Reframe the problem, design the system

Shifting from proximity to coordination uncovered scheduling friction and required clear differentiation across Premium, Free, and mismatched availability states.

Privacy is part of the UX

Availability is sensitive. Interactions were designed to feel safe and controlled, without exposing or broadcasting personal data.

AI is a collaborator, not a shortcut

I used an iterative AI workflow with Figma as the source of truth, guiding outputs through clear instructions, screenshots, and checkpoints like collaborating with a teammate.

More case studies