Torrent Diagnostic — Patient App
Turning health reports into a daily health companion for patients. India's first accessibility-first diagnostic app — now live, helping patients book tests, upload prescriptions, and watch their health trends without ever needing a clinic.
TL;DR
- Designed and shipped India's first accessibility-first diagnostic app for Torrent — book tests, upload prescriptions, track health trends in one place.
- Reframed the product from "download a PDF report" to "a daily health companion" — Records section turns one-off lab values into HbA1c / Cholesterol / LDL trends over time.
- Reports delivered in under 6 hours. Senior-citizen flat 10% off built into the home screen. Chat & Book Test as primary CTA.
The audience
Most diagnostic apps in India are designed for the wrong person — a younger, urban, digitally fluent customer booking themselves a one-off test. Torrent's actual patient base is different. Two real users, both spend hours with the product, both shaped every decision in this case study:
The trap was designing for either Asha or Ravi — the senior, or the caregiver. The product had to serve both, in different contexts, often on different devices, sometimes for the same lab value. That dual audience shaped every interaction model below.
The reframe
The category framing — "diagnostic booking app" — guarantees a transactional product. Book → wait → PDF → forget. Most apps in this space optimise the transaction loop: faster booking, cheaper packages, push notifications when reports are ready.
The reframe was simple: this product isn't for booking tests. It's for living with a chronic condition. Booking is a means; the product is a daily companion. Once you frame it that way, every decision flips:
- The home screen surfaces your last reading, not "Book a test" — booking is a CTA on a card, not the headline.
- Records are organised by value over time (Trends), not by test occasion (Reports).
- The interpretation is plain-language and quiet, not colourful gamification with badges.
- The audience badge ("senior-citizen flat 10%") sits on the home screen unhidden — because the audience is the audience.
Accessibility deep-dive
"India's first accessibility-first diagnostic app" is a claim worth standing behind only if accessibility is in the bones, not the QA pass. Concrete decisions that shipped:
- Tap targets at 48pt minimum across every interactive element. Apple's HIG suggests 44pt; we went larger because Asha's phone is rarely steady.
- Body text at 16pt minimum with 1.5 line-height. "Caption" sizes are reserved for timestamps and meta — never for content a patient needs to read.
- WCAG AA contrast on every element, AAA on body text. Tested in 5 lighting conditions including direct outdoor sun (brightness drops contrast hard on cheap LCD panels).
- Voice-first paths for booking. Chat & Book Test isn't a feature for power users — it's the primary CTA. Type, speak, or upload prescription — three equal entry points.
- Regional-language support. Hindi at launch, four more languages planned. The Trend interpretation phrasings are reviewed by a clinical advisory per language, not just translated.
- No motion-as-information. Trend direction is shown in shape + colour + text, not in animation. Some seniors have vestibular sensitivities; many run reduced-motion settings.
- Voice-readable labels on every chart. "Sparkline rising over the last 3 reads" is the alt text. Screen readers get the trend, not just "image."
The hardest accessibility problem isn't checking boxes — it's not making the app look like a "senior app." Younger users avoid those. The visual language is calm and warm rather than soft and patronising. Big tap targets that don't look big.
Trend-first design
Every other diagnostic app shows you a number. We show you a trend. Same lab values, completely different mental model.
The Trend Card — the most-used component in the app — has six elements arranged in a strict reading order:
- Plain-language interpretation at the top — "Your recent HbA1c is rising and nearing the high end of the ideal range." If the patient reads only one line, this is it.
- The current value with units — 5.2.
- The ideal range for context — 4 — 5.6. Always shown alongside the value.
- The sparkline over the last 3-6 reads. Range overlay shows where the safe band sits.
- Last-updated timestamp. Builds trust — the data is fresh.
- "Compare with previous" action — for Ravi, who's checking against six months ago.
Why interpretation first, value second? In testing with seniors, when the value led, patients struggled to know whether 5.2 was good or bad. With interpretation first, the value becomes evidence — not a quiz.
The AI boundary
AI's role in this product is the most interesting design constraint of the whole project. It's powerful enough to shape the experience — and dangerous enough that getting the boundary wrong would destroy trust irrecoverably. The line we drew, in a single sentence:
AI describes. AI does not prescribe.
- Will: generate plain-language interpretations of the patient's own historical values; OCR a paper prescription into a list of suggested tests (patient confirms); route a free-text booking intent to the right test package.
- Won't: provide medical advice; suggest treatment; recommend products; comment on whether a result is "concerning"; tell the patient what to do about a value.
That boundary sits between "your value is in/out of range" and "you should do X about it." The first is statistical; the second is medical. The first is the app's job; the second is the doctor's. Every microcopy review went through this filter — and the clinical advisory had veto power over any phrasing that drifted into the second category.
The plumbing: trend interpretation is generated per-patient using their own historical values. Phrasing templates (5 per category, in 5 languages) are reviewed and approved by clinicians before any patient sees them. Conversation Flow Generator (the Figma plugin I built) was used to draft hundreds of representative booking prompts to train the intent layer.
Trade-offs
Choosing a senior-first audience meant the visual language is calmer, simpler, and slightly less "modern" than a younger-skewing app would be. Younger users adapt to calmer interfaces — senior users genuinely struggle with the visual density of most consumer apps.
The trends-first focus deferred revenue-adjacent features: doctor referral, e-pharmacy integration, family-member account separation. All are on the roadmap. Adoption first, monetisation second.
Outcome
The product is in the hands of patients now. The deeper measure of success is whether patients keep coming back to look at their trends — which is a 6-month signal we'll be watching carefully.
What I'd change
I'd have invested earlier in family member workflows. A surprising amount of trend-checking is done by adult children on behalf of parents. We deferred it to v2; if I'd front-loaded it, the early-adoption curve would likely have been steeper.
And: I'd have shipped doctor-shareable summary cards from day one. Patients want to bring their phone to a doctor visit and show "here's what's been changing." We have it on the roadmap; should have launched with it.