Skip to the case study
BACK TO HOME

[ 2025 ]

VeinHealth

AI photo-monitoring for chronic venous disease — designed around the mental models of undiagnosed patients, not the clinical instrument behind them.

  • healthcare
  • mobile app
VeinHealth app key visual

[ scroll to discover ]

[ research ]

Uncovered core mental-model failures across 6 key flows through 8 moderated usability sessions—and shipped targeted fixes. For instance, 3 of 4 users mistook the vein health score for a completion progress bar; changing the display from “%” to “/100” immediately resolved the confusion.

Sole Product Designer
Role • 8-stakeholder team
3 months
Time
Mobile · iOS / Android
Platform
Shipped
Status • 3,187 MAU baseline

[ context & stakes ]

A stigmatized, under-diagnosed condition that demands trust on first open.

The Condition: Chronic venous disease (CVD) requires ongoing leg-monitoring, but stigma and low awareness leave many patients undiagnosed—often visiting 5–6 GPs before receiving proper care.

The UX Challenge: Photo-based leg tracking demands high trust and immediate safety for users who are often health-illiterate and sensitive about their condition.

The Goal: Build an intuitive, privacy-first experience for 3,187 launch-month active users that turns photo tracking into a safe, reliable monthly habit.

[ constraints ]

Trust and clarity were the UX.

[ what i delivered ]

01

Score UI

Vein-health score model, detail / trends / comparison pages.

02

Selector

3D body-part selector for choosing the region to scan. Made with Rive app.

03

Reminders

Severity-tiered reminders + hydration-tracking integration.

[ reframe from insights ]

Users weren't failing the visual design—they were building the wrong mental model.

For instance, seeing "80%" read as "questionnaire 80% complete" rather than "vein health score: 80." Recognizing this shifted the entire iteration priority from aesthetic polish to raw legibility and comprehension.

[ key decisions ][ input clarity ]

Replace sliders with explicit choices.

01

Chose

Replaced sliders with explicit radio button and list-based inputs.

02

Rationale

In a low-literacy, high-stakes medical interface, recognition beats recall—clearly visible options eliminate the cognitive load and ambiguity of slider interactions.

Before and after of the symptom input: a slider replaced by an explicit list of choices
Before — slider (not read as input) After — explicit choices

[ key decisions ][ scope trade-off ]

A 6-question score, reduced from the clinical VCSS.

01

Chose

Streamlined the instrument into a 6-question subset focusing on core indicators: veins, swelling, skin changes, ulcers, pain, and compression therapy.

02

Rationale

Accepting a minor trade-off in clinical granularity protects completion rates and long-term adherence—a perfectly granular score that users abandon carries zero clinical value.

The six questions the vein-health score is built from, condensed from the clinical VCSS instrument
Six questions — condensed from clinical VCSS Credibility balanced against adherence

[ key decisions ][ ai trust ]

Make the AI legible and trustworthy.

01

Chose

Introduced a clear green-tick confirmation state, removed the vendor attribution label, and replaced technical diagnostic output with plain-language insights.

02

Rationale

For a sensitive condition, the AI has to read as a helpful assistant confirming your scan — not as a data harvester or a judge of your photography.

The AI confirmation state — a green tick and a plain-language reading of the scan
A clear confirmation and plain language — the AI reassures instead of unsettling.

[ key decisions ][ adherence ]

Adaptive reminders: calibrated to risk, not notification fatigue.

01

Chose

Implemented a tiered reminder system calibrated by severity level: every 3 months for mild cases, every 4 weeks for moderate, and every 2 weeks for severe.

02

Rationale

A proportional notification schedule maintains long-term adherence for chronic condition tracking without burning out healthy users with unnecessary alerts.

Reminder cadence tiers — three months, four weeks and two weeks by severity
Reminder cadence scales with severity

[ outcome & impact ]

Testing with undiagnosed users revealed critical health literacy gaps that standard, diagnosed panels missed.

In stigmatized health domains, trust and clarity are the core UX—if users don't understand or trust a score, visual polish is irrelevant.

Findings

6 flows

Every flow with a finding was addressed and shipped.

Shipped

4 fixes

All four research-driven fixes live in production.

Audience

3,187 MAU

Baseline audience with varicose veins at launch.

Post-launch iterations also shipped: a 2D → 3D body model, removal of the drug carousel (due to compliance), and simplified AI copy.

[ selected works ]

  1. Decentralized clinical-trial platform — six personas, one regulated surface under 21 CFR Part 11 & HIPAA.

    [ read more about ElfieResearch
  2. White-label health platform for insurers — one design system, six roles, five states, many tenants.

    [ read more about ElfieProtect
  3. AI photo-monitoring for chronic venous disease — built around real clinical mental models.

    [ you are here ]

  4. A white-glove digital-asset platform for HNWIs & institutions — four interlocking surfaces that route into human service, not around it.

    [ read more about Coinhako Privé
  5. From info screen to trading hub — the most-viewed screen in the app, rebuilt as a single-scroll IA across six surfaces in twelve weeks.

    6 surfaces · 4 reusable patterns · shipped on deadline.

    [ read more about Coin Detail page
  6. Replacing a legacy school CRM without retraining the people who ran it — six modules and a tokenised design system in three months.

    [ read more about Zenith School CRM