Case Study · 2026

Channel setup that guides itself.

Channels lived only in a side menu, and connecting WhatsApp meant a wall of requirements with no clear steps. I rebuilt it into a single channels overview and a guided three-step setup that shows progress, lets you test before going live, and recovers cleanly when a connection fails.

Role
Solo Product Designer
Scope
Audit · Flows · UI
Type
Shipped product
Platform
B2B SaaS · web app
Channels overview page showing WebChat, Facebook, WhatsApp, Instagram, Call and AI Voice Agent, each with a status and one clear action
Overview

Connecting a channel shouldn't feel like guesswork.

The platform lets businesses run customer conversations across many channels, and the operators who set those channels up are often non-technical. But the channels themselves were buried in a side menu, and the highest-value one, WhatsApp, was the hardest to connect: a single screen of requirements, a long checkbox, and no sense of how many steps were left. People started the setup and got stuck. And because WhatsApp is the channel businesses lean on most, each stalled setup is one that never starts messaging customers, so the product goal was simple: get more businesses connected on their own, without support stepping in. As the solo product designer, working with a PM and engineers, I owned the audit, the flows, and the final UI for both the channels overview and the WhatsApp setup.

The Audit

I scored the old setup against usability heuristics.

I evaluated the original Connect to WhatsApp screen against Nielsen's usability heuristics, focused on the moment a user first tries to connect. Here is the original screen with the problems marked.

The original Connect to WhatsApp screen, with four numbered markers showing the usability problems found in the audit1234

The original Connect to WhatsApp screen. One screen carried every requirement, a long confirmation checkbox, and no sense of steps. The four markers map to the findings below.

The issues grouped into four clear findings, each tied to a heuristic and rated by severity:

FindingHeuristic brokenSeverity
No clear progress through the setup (no stepper)Visibility of system statusHigh
First screen is a wall of requirements textAesthetic and minimalist designMedium
Confirmation checkbox is long and hard to parseMatch between system and the real worldMedium
Help sits away from where users get stuckHelp and documentationLow
The Insight

The blocker wasn't WhatsApp. It was a setup with no shape.

Every finding pointed the same way. People could not see where they were, what was left, or what to do when something failed, and there was no overview of channels to anchor them. The fix was not more explanation. It was structure: a clear path, visible progress, and an honest way to handle failure.

Setup didn't need more words. It needed a shape.

Design Decisions

Four decisions that gave setup a shape.

Scroll to explore the full flow

WhatsApp connect channel flow A four-phase flow: Connect via Meta OAuth, Test a message, Go live, and an optional Setup. Each decision routes failures to a clear reason and a retry. Connect WhatsApp flow CONNECT TEST LIVE OPTIONAL SETUP Fail retry Fail retry Optional Entry point Channels → WhatsApp Show headline connect in minutes Step 1 Connect WhatsApp Open Meta / Facebook OAuth OAuth result Connected Meta account Show clear error Single retry Step 2 Send test message Display UI template + send User clicks Send test Test message? Delivery confirmed time + status Show clear reason template / perms Fix in Settings (non-blocking) Step 3 Activation done WhatsApp connected and ready Primary CTAs Inbox · Campaign Go to Inbox End: in Inbox Send a campaign End: in Campaign Secondary CTA Complete setup Deferred setup Open from Settings Setup items templates, limits Each item status · why · fix End: setup done

The full connect flow, in four phases: Connect, Test, Live, and an optional Setup. Both decisions route a failure to a clear reason and a retry, the test-fix loop is non-blocking, and going live opens the primary CTAs.

1

A single channels overview

Channels used to live only in the side menu, with no place to see what was connected. Now one page shows every channel, its live status, and one clear action each, so people can tell at a glance what is connected and what still needs setup, instead of hunting through the menu.

2

A guided three-step flow

A persistent stepper, Connect, Test, Live, replaces the wall of text. People always see where they are and what is left. I considered keeping it a single screen with inline validation, but only a stepper made progress and recovery legible across the whole setup.

3

Honest failure and recovery

The connect step can fail in several ways, a missing Meta Business Portfolio being one. Instead of a dead end, every failure gets the same treatment: a clear reason, a recovery action, and contextual support.

4

Test before going live

A dedicated test step sends a real message from an approved template, so the first customer message is confirmed working before the channel goes live.

The Solution

What it looks like

Connect step showing a waiting state while Meta authorizes, with the Connect, Test, Live stepper visible

Step 1, Connect. A clear waiting state while Meta authorizes, with the stepper always visible. The page updates on its own.

Connect step error: No Business Portfolio found, with an explanation of why it matters and Switch Meta Account and Contact support actions

When it fails, it recovers. This is one of several failure states, here a missing Meta Business Portfolio. Each gives a clear reason, a recovery action (Switch Meta Account), and support, instead of a dead end.

Test step: select an approved template and send a test message to a phone number before going live

Step 2, Test. Send a real test message from an approved template before going live, so the first message is never a surprise.

Live step: WhatsApp connected successfully, with four clear next actions

Step 3, Live. A clear finish, then four real next actions instead of a blank screen.

Before & After

The shift, side by side.

Before

Channels lived in the menu

No channels page. You opened each channel from the side menu, with no single place to see what was connected or whether it was healthy.
After
The new channels overview page
One overview: every channel and its status, at a glance.
Before
The old Connect to WhatsApp screen
A wall of requirements and a long checkbox, with no sense of steps.
After
The new Connect step
A clear stepper and a simple authorize-via-Meta action.
Measuring Success

How I would measure success

These are the success targets I defined to judge the design. They are goals to measure in production.
MetricTargetWhy it matters
Setup completion (started to live)≥ 70%Adoption
Time to connectunder 5 minEfficiency
Recovery after an error≥ 60%Resilience
Drop-off at the connect step≤ 15%Friction
Setup satisfaction≥ 4 / 5Experience
Impact & Reflection

What changed

Setup stopped being a wall to climb and became a path to follow.

If I did it again: I would sit with real users who hit Meta failures to pressure-test the recovery copy, and instrument the funnel to confirm the completion and recovery targets hold. I would also test whether returning users want to skip the test step.

Key tradeoff

Guided steps vs. speed. The test step adds one step before going live, which I accepted because it removes the fear of a wrong first message. For returning users I would offer a skip.

Thanks for reading

Want to see more, or talk?