Previsit.ai · 2024 · AI health-tech · Solo designer

Redesigning an AI medical assistant to keep patients talking

Problem

Previsit.ai runs the intake chat before a doctor’s appointment. Nearly half of patients quit it partway, so doctors started visits without the basics.

My role

Solo product designer. Conversation analysis, patient interviews, flow redesign, UI and copy. Also designed the dashboard doctors use to review the answers.

Outcome

Completion went from 57% to 77% in the first 47 live conversations after launch. Doctors rated answer quality 4 of 5, up from 3.

The chat only works if people finish it. Nearly half of them didn’t.

57% → 77%Conversation completion rate
3 → 4Answer quality out of 5, rated by 8 doctors

Before: one month of live conversations before the redesign. After: the first 47 conversations, two weeks post-launch. Each doctor rated at least 4 answers.

Before & after

before: chat state · 57% finished

One message. A generic hello, then every question at once. No sense of how long it would take or how far you’d got. Patients saw a wall and left.

after: chat state · 77% finished

An intro that names your doctor. A time estimate. One question at a time. A bar.

The insight

I assumed the chat asked too much. 30 conversations and 6 patient interviews said otherwise.

People stayed when they could see the end coming. Drop-off clustered at question 6 whether the questions were easy or hard. The finish line mattered more than the length.

Constraint

So the brief became: 6 questions from the doctor, plus AI follow-ups whenever an answer is too vague to use. That breaks the obvious progress indicator. You can’t show “3 of 8” when the total keeps changing.

the cliff at question 6 · the 30 conversations I read
Completion per question · research sample
30 conversations, read one by one
0%25%50%75%100%THE CLIFFQ1Q2Q3Q4Q5Q6Q7Q8

30 conversations, chosen to include drop-offs. The 57% baseline comes from product analytics, not this sample.

Three fixes that only work together

01

“About 3 minutes”

Patients wanted to know what they were signing up for. So the intro leads with a time estimate, before the first question.

02

The bar never moves backward

“3 of 8” breaks the moment the AI adds a follow-up. Now it’s 3 of 9 and the finish line just moved, and trust goes with it. The bar only moves forward, however many questions get asked.

03

Follow-ups stay inside the bar

“I smoke” is useless without the frequency. The AI asks until the answer is usable, and the bar keeps moving. The patient never sees the goalposts shift.

How the AI asks

Then there was the AI itself. I worked out how it behaves with our prompt engineer, by going through the conversations that had already happened.

Follow-ups fire on habits. Daily medication, smoking, alcohol: answers where a doctor needs the how much and the how often. There’s no hard cap. If an answer still isn’t usable, the AI asks again.

“I don’t know” is a fine answer. The AI suggests finding out before the visit and moves on, with no pressure.

No medical language. The AI talks the way these doctors’ patients talk. A lot of that call was intuition, built from reading how those patients actually wrote.

Decisions

Four calls, what each replaced, and what it cost.

Keeping the AI follow-ups

instead of: Cutting them to shorten the chat

cost: Some chats got longer

A bar that only moves forward

instead of: A “3 of 8” count

cost: An exact question count

One question per message

instead of: Every question in one message

cost: More taps for the same answers

A time estimate set against the long case

instead of: A shorter, optimistic estimate

cost: Short chats look longer than they are

57% → 77%Conversation completion rate

Measured across 47 patient conversations in the two weeks after launch. The people who used to quit at the wall were reaching the end.

Mostly a story about restraint: taking things off the screen until the patient felt sure about what was left. If you’re building patient-facing AI and fighting drop-off, say hi.

natalia.wlwsk@gmail.com →