Selected work
Product design case study · 2025

AdvisorGPT

An AI tool I designed for insurance advisors — built around the one moment that matters: an advisor live on a call, a client asking something specific, and no room to be vague. Designed from the scenario up, not the chat down.

PolicyAdvisorProduct designUX / UIFront-end buildAI product
Client

PolicyAdvisor

Role

Designer + build (design & front-end)

Approach

Designer-first · scenario-led

Status

Shipped · in production

The callThe answerThe proofThe send The callThe answerThe proofThe send
The scenario everything was designed around
An advisor is on a call. The client asks something specific. There is no room to be vague, and no time to go read a PDF.

A prospect asks: "if I'm diagnosed with early-stage prostate cancer, does my critical illness policy actually pay out?" The advisor can't say "generally, it depends." They need the exact answer, the wording that proves it, and — thirty seconds later — that same answer in the client's inbox.

A generic ChatGPT search can't do this. It produces a fluent paragraph the advisor can't stand behind. So I didn't design a chatbot. I designed the tool around this exact moment — every screen below exists to serve it.

Feature 01 · the answer

The answer, not a paragraph.

The live-call moment a generic ChatGPT search can’t survive.

Call doesn’t waitAnswer first, in one sayable line.
Vague loses the clientSpecific number, condition, limit.
Must be provableExact wording + source, not a paraphrase.
Depth on demandFull clause only when the client digs.
Wireframe — the structure is the thinking
recent ADVISOR QUESTION (the call moment) 1 — THE VERDICT (insight 1+2: answer-first, specific) 2 — EXACT POLICY WORDING (insight 3: provable) 3 — SOURCE (insight 3: trust, one tap to verify) 4 — SHOW FULL DETAIL (insight 4: depth only when asked) Draft email

Verdict → proof → source → depth-on-demand. The order the advisor’s brain needs on a live call.

AdvisorGPT · answer screen · production UI
AdvisorGPTAI Intelligence
Recent
If my client is diagnosed with early-stage prostate cancer, does the critical illness policy actually pay out?
Critical Illness — early-stage prostate cancerSun Life CI · partial benefit provision
Yes — but as a partial benefit, not the full payout. Early-stage prostate cancer (T1a/T1b) pays 25% of the coverage amount, to a $50,000 maximum, once per lifetime. The full benefit applies only to invasive diagnoses.

Exact policy wording

"Partial benefit conditions are payable at 25% of the sum insured to a maximum of $50,000, including early-stage prostate cancer (T1a/T1b), and reduce the remaining critical illness benefit accordingly."
Sun Life CI Policy Document — Section 4.2, Partial Benefits

Source

Sun Life CI Policy.pdf · page 31

Locked decisions: depth control is a button under the answer (not a top-right toggle); "Draft client email" posts the drafted email as a new message in the thread; "Show full detail" grows the answer inline. Nothing pops or slides — one scrollable column, because the advisor is on a call.

A specific verdict, the exact policy wording, the source — designed so the advisor never reads a guess to a client.

Feature 02 · draft client email

“Send me that in writing.

Every good call ends with this. One tap closes the loop.

Predictable askSo it’s the primary action, not a menu item.
Won’t write it mid-callArrives written, ready to send.
Client-safe by designPlain language — no policy wording.
Stays in the threadNo modal — advisor keeps the call’s place.
Wireframe — the structure is the thinking
PRIOR ANSWER (context, dimmed — advisor already used it) ▷ tap: Draft client email EMAIL MESSAGE (new message in thread) CLIENT-SAFE SUBJECT / TO (editable tokens) PLAIN-LANGUAGE BODY (no policy wording — insight 3) Send

Email posts as a new message; Send is the heaviest control; the clause is deliberately absent.

AdvisorGPT · draft client email · production UI
AdvisorGPTAI Intelligence
Recent
Draft client email

The decision made visible: the email says "full wording available on request" instead of pasting the clause. The advisor keeps the exact wording as their proof; the client gets the plain answer. Same fact, two documents, on purpose.

The advisor’s proof and the client’s email are two different documents — on purpose.

Feature 03 · show full detail

Depth, only when asked.

When the client pushes, the answer expands in place.

Depth is the exceptionAlways-on detail slows the 90% case.
Opens where they lookExpands under the answer, no navigation.
Detail = specificsClause, definitions, exclusions — not more prose.
Pre-empt the challengeThe exclusion gets its own treatment.
Wireframe — the structure is the thinking
VERDICT (unchanged — stays the answer) ▾ SHOW FULL DETAIL (tapped — expands below, in place) CLAUSE-BY-CLAUSE DEFINITIONS (what "early-stage" means here) EXCLUSIONS (what the client will challenge)

Verdict stays put; detail unfolds beneath as structured blocks; the exclusion is flagged in amber.

AdvisorGPT · show full detail · production UI
AdvisorGPTAI Intelligence
Recent
Critical Illness — early-stage prostate cancerSun Life CI · partial benefit provision
Yes — partial benefit, 25%, $50,000 max. Once per lifetime; full benefit applies only to invasive diagnoses.
Sun Life CI Policy.pdf · page 31
Full provision — clause by clause
What qualifies

Early-stage prostate cancer classified as T1a or T1b under TNM staging. Confirmed by histological diagnosis.

What it pays
  • 25% of the critical illness sum insured
  • Maximum $50,000 regardless of policy size
  • Payable once per lifetime; reduces the remaining CI benefit by the amount paid
Definitions that matter on the call

"Invasive" (T2 and above) triggers the full benefit, not this partial one — a common point of client confusion worth pre-empting.

Exclusion to flag: tumours classified TNM T1a/T1b only qualify if diagnosed after the policy's 90-day moratorium. Diagnoses inside that window are not payable.

The detail earns its space: it only exists after a tap, it's structured (qualifies / pays / definitions / exclusion), and the exclusion — the thing a client actually challenges — gets the amber treatment so the advisor sees it before the client raises it.

Progressive disclosure isn’t a nicety — it’s fast on every call instead of slow on all of them.

Feature 04 · the feedback loop

A thumbs-down that teaches.

The advisor catching a wrong answer is the best signal there is.

Reason > rating“Wrong number” teaches; “bad” doesn’t.
Can’t cost the callOne tap, no typing, eyes back on client.
Structured = learnableFixed reasons route back into the model.
Free-text failedThe old box was thorough and unused.
Wireframe — the structure is the thinking
ANSWER (unchanged) "Was this right?" — [▲] [▼ tapped] WHAT WAS WRONG? (one tap, no typing) Wrong number → structured correction routes back into the model

Thumbs-down opens fixed reason chips, never a text field. Two seconds, back on the call.

AdvisorGPT · feedback loop · production UI
AdvisorGPTAI Intelligence
Recent
Max issue age — no-medical termCarrier guide · eligibility
Maximum issue age is age 60 for the no-medical tier.
Carrier guide.pdf · page 4
Was this right?
What was wrong? — one tap, you're back to the call
Wrong numberWrong carrierOutdatedMissing contextNot relevant
Structured correction — routes back into the model so the same mistake gets caught next time

The interaction, locked: thumbs-down opens fixed reason chips, never a text field. One tap captures a correction the model can learn from, and the advisor is back on the call before the client notices the pause.

The earlier version asked for an essay mid-call. Nobody wrote it — so the best signal was discarded by its own input.

Feature 05 · the honest answer

When it isn’t sure, it says so.

Not an error screen — how the engine answers when sources conflict.

Confident-wrong is worstThe advisor repeats it; the firm owns it.
Split known from unknownMarks the seam instead of smoothing it.
Point to the sourceRoutes to the docs, doesn’t guess the gap.
AdvisorGPT · honest answer behaviour · production UI
AdvisorGPTAI Intelligence
Recent
Is a 54-year-old with treated sleep apnea eligible for simplified issue on the no-medical plan?
Sleep apnea — simplified issue eligibilityTwo carrier documents · conflicting rules
I'm not certain enough to answer this on a call. The two carrier documents that cover this disagree on whether treated sleep apnea is standard or referred — I won't guess an underwriting threshold you'd repeat to a client.

What I'm confident about

Treated, CPAP-compliant sleep apnea is not an automatic decline on either document. The disagreement is only on rating, not eligibility.

What's unresolved

Carrier guide p.22 says standard if compliant. The simplified-issue addendum p.6 says refer to underwriting. These conflict and I can't reconcile them from the documents alone.
Open both sources, p.22 & p.6

Same components, honest behaviour: no separate error screen — the answer card itself splits into "confident" and "unresolved", swaps the verdict to amber, and routes to the sources instead of inventing a number. The advisor never reads a guess to a client.

Real honesty is the answer behaving differently — not a disclaimer in grey footer text.

The outcome
A tool advisors trust on the call, not after it.

Designing from the advisor's live-call scenario instead of from a chat window changed what every screen had to do. The answer leads with the specific fact, carries the exact wording and the source, drafts the client-safe email in one tap, learns from a two-tap correction, and tells the truth when it isn't sure. The same scenario-led pattern carried into the other PolicyAdvisor AI tools — this is the one that set the language.

Reflection

A chatbot answers questions. This had to survive a live call.

The whole design came from refusing to start at the chat window. Starting at the advisor's worst four seconds — client waiting, question specific, can't be vague — produced a different tool than "an AI assistant for insurance" would have.

The decision I'm proudest of is the smallest: the client email drops the policy wording. It looks like a deletion. It's actually the whole thesis — the advisor's proof and the client's answer are two different documents, and a tool that respects that earns trust a generic one never will.