The second user got stuck in the same place the first user did. We were nineteen minutes into the session, and our project lead was already messaging the rest of the team on Slack: turn off the email confirmation step, we'll explain later. The third user, an hour after that, confirmed it. We had been arguing about a fourth A/B test on the headline of the signup page. The real problem was three screens deeper, and we'd never looked.
Three users. Sixty minutes each. The work it triggered shipped that week. Six weeks of data later, the conversion rate from signup-started to account-activated had gone from 31% to 64%.
What we actually did
The client is a small B2B SaaS — invoicing software for service-based businesses, the kind of company where the founders also write the code. Their onboarding had been built incrementally over two years and nobody had ever sat with a real prospect while they used it. We proposed a single moderated session: three users, recruited from their target market (independent contractors, mostly trades), paid $150 each, sixty minutes on Zoom. Total budget for the research, recruiting included, was about $1,400.
We wrote five tasks. We didn't tell the users what to expect. We told them, "you've decided to try this tool to invoice your clients — go." Then we shut up.
What the users actually said
User one made it through signup, hit the email confirmation screen, and switched to her phone to check her inbox. She got distracted. She came back six minutes later and said, "okay I'm in." Then she sat staring at the empty dashboard for forty seconds and said, "what am I supposed to do here?"
User two confirmed his email but the link opened in a new tab. He now had two tabs open, both logged in, both showing slightly different states. He tabbed back and forth twice and finally said something we'll quote for a while:
I don't know which one is the real one. I'll just close them both and start over.
He did. The funnel data, of course, had recorded him as "completed signup, abandoned activation." It hadn't said anything about why.
User three was the most patient. She got through the email confirmation, landed on the dashboard, and went looking for "make an invoice." The primary CTA was a button labeled "Create your first project." She read it twice, said "I don't have a project, I have a client," and clicked the Help menu.
The three changes
We pulled the email confirmation requirement out of the signup flow entirely. Users now get logged in immediately on signup; a confirmation email goes out, but it's nudge-only. Click it or don't. The flow doesn't gate on it. The activation funnel stopped leaking a third of its volume on a step that existed to prevent fraud that wasn't really happening.
We changed the post-signup state. Instead of an empty dashboard with a vague CTA, the user lands on a pre-filled draft invoice with their own business info already populated from signup. The empty state was the problem. Showing them something to react to, even a placeholder, completely changed the engagement pattern.
We renamed "Create your first project" to "Send your first invoice." The button now does the literal thing the user came to do. We argued about this internally — the data model still uses projects under the hood, the team's whole vocabulary is projects — but the user does not care about the data model. They care that they came to send an invoice and the button says send an invoice. We changed the label. The label.
What the numbers looked like
We had six weeks of clean pre-change data and six weeks of clean post-change data. Same season, same marketing spend, traffic mix within 4% on the channel breakdown.
Signup-started to account-activated went from 31% to 64%. Roughly double, give or take noise. The single biggest contributor by our attribution was killing the email confirmation gate, which alone accounted for maybe two-thirds of the lift. The other two changes added the rest. Day-30 retention also bumped, from 41% to 49%, which we hadn't predicted but which makes sense — users who self-completed an actual invoice in their first session had a reason to come back.
Why this kind of research is undervalued
Three users on a Zoom call is not statistically significant. We know. It also doesn't need to be. Usability problems are not normally distributed — they're step functions. If two out of three users fall off the same cliff, you don't need n=400 to know there's a cliff. You need to fix the cliff.
The cheapest thing we sell, on a return basis, is the moderated test. Our retainer clients now get one a quarter as standard. Some of them push back the first time — they want us to optimize their PPC, build a new landing page, write more content. We do all of that too. But the single biggest thing we did for this client in 2026 took an afternoon to plan, a morning to run, and a week to ship.
If you haven't watched three of your actual users try to use your product this year, you don't know what's broken.