StoryMD health dashboard

StoryMD health dashboard

Transforming decades of scattered medical records into a single, actionable health interface.

Transforming decades of scattered medical records into a single, actionable health interface.

My role

UX designer

Process

User research, ideation, prototyping, interaction, usability testing

Tools used

Figma, FigJam, Miro

Team member

Emily

Duration

10 weeks, April - June 2025

Overview

I led the UX design for a comprehensive health platform that transforms fragmented medical records into a unified, actionable history. My work spanned the end-to-end experience: from designing the logic to import and map data from multiple sources—including paper scans (OCR) and modern APIs—to architecting a high-density dashboard that synthesizes decades of information into a single "Source of Truth."

My role

UX designer

Process

User research, ideation, prototyping, interaction, usability testing

Tools used

Figma, FigJam, Miro

Team member

Emily

Duration

10 weeks, April - June 2025

Impact and Outcomes

32%

Reduced connection drop-off

66%

Reduced task completion time

Problem

Healthcare data is fragmented, trapped in paper files, scattered across portals, and often lost during life transitions. We spoke with one user who had moved frequently, resulting in their medical history becoming a “black box,” fragmented across seven different hospital systems.

Overview

I led the UX design for a comprehensive health platform that transforms fragmented medical records into a unified, actionable history. My work spanned the end-to-end experience: from building a secure way to pull in records from thousands of different hospitals around the world to creating a clear dashboard that makes years of health history easy to understand at a glance.

My role

UX designer

Process

User research, ideation, prototyping, interaction, usability testing

Tools used

Figma, FigJam, Miro

Team member

Emily

Duration

April - Dec 2022

Impact and Outcomes

70%

Faster task completion time

100%

Task success rate

Problem

Medical records are scattered across paper files and different hospital portals. When patients move between doctors or cities, they often lose track of their history. This makes it impossible to see long-term trends, leaving users with a lot of data but no clear way to see the big picture of their health.

The original dashboard surfaces everything.

Discovery

Operating within a lean startup environment with limited recruitment resources, I used convenience sampling to kickstart our discovery phase with 5 users. While I recognized the limitations of this sample, it allowed us to identify low-hanging fruit usability issues and high-level mental models without stalling project momentum.

Finding 1

Users told me that seeing a single lab result doesn't tell them if they are getting better or worse. They need to see the trend over time to understand the "why."

Finding 2

People hate logging into multiple hospital websites to find one piece of information. Most give up because it’s too much effort.

Finding 3

Users worry that their medical history is "gone" when they move to different cities or change doctors.

Ideation

Ideation

Collaborating with the team, we prioritized four foundational ideas to balance technical constraints with user needs. We focused on two primary challenges: Effortless syncing and Clarifying results.

Challenge 1: Effortless syncing

Challenge 1: Effortless syncing

Users wanted all their medical history in a single, secure place. I focused on building Visual Trust and managing the technical complexity of syncing data from multiple hospital portals.

The single health connector

A secure, one-time "handshake" that links multiple hospital portals. By authenticating once, users bridge the gap between fragmented systems and eliminate the need for repetitive logins.

Privacy by choice

A control center that gives users total control over their records. Instead of a permanent "all-or-nothing" sync, users can toggle specific data types (e.g., "Lab Results only") and revoke access to any provider at any time.

Challenge 2: Clarifying results

Challenge 2: Clarifying results

Users struggled to find meaning in decades of scattered records. I focused on designing a dashboard that turned raw data into Clear, Readable Trends so users could finally see the "Big Picture" of their health.

Pinned favorites

A customizable summary at the top of the dashboard. This allows users to prioritize their most critical metrics—like blood pressure—for an instant status check without searching.

Comprehensive health trend

Color-coded feedback and reference ranges that explain what the numbers actually mean. This allows users to understand their results in context by seeing how they track across their entire health trend.

Initial design

Based on our initial ideation, we mocked up the Adding Connections flow and a Manual Dashboard. Our goal was to streamline the data-linking process while giving users total agency over their most critical health trends.

V1: Streamlining Data Connections

V1: Streamlining Data Connections

This initial flow focused on a high-trust, linear path to bridge 20 years of medical history. We prioritized transparency and granular control to ensure users felt secure before initiating a deep-data sync.

V1: Dashboard favorites

V1: Dashboard favorites

To manage a high-density clinical library without cognitive overload, I designed a system that allows users to pin any metric to a 'Hero' position, enabling them to view critical health trends at a glance.

V1: Quick-View dashboard cards

V1: Quick-View dashboard cards

These small cards provide a quick overviews of the health data. I focused on making the numbers easy to read and the categories easy to find, so users don't have to dig through complicated menus to see their latest results.

Numerical cards

Numerical cards

List cards

List cards

Challenges & Iteration

Design is rarely a straight line. After our initial V1 concepts, we received critical feedback from usability testing and latest technical specs from our engineering team. These three insights forced us to move past "ideal" designs and solve for real-world constraints.

Finding 1: Designing for Asynchronous Syncing

Finding 1: Designing for Asynchronous Syncing

The Problem: We designed the app for a quick 10-second sync, but the hospital servers actually took 5 minutes to send the data. Asking a user to stare at a loading screen for five minutes was unrealistic and would have caused most people to give up.

The Fix: I moved to a "fire and forget" model. Now, users trigger the update and can immediately close the app. I implemented a push notification to alert them the moment their data is ready, turning a technical lag into a respectful, non-intrusive experience.

Message informing users this is gonna take 5 mins

When the sync is completed, they will get a notification.

Finding 2: Enhancing Visual Efficiency

Finding 2: Enhancing Visual Efficiency

The Problem: V1 used large square cards and prominent sparklines to create a "breathable" aesthetic. However, usability testing revealed that users found the layout "too spaced out", leading to interaction fatigue during extended browsing sessions.

The Fix: I transitioned to Condensed Horizontal Tiles to prioritize comparative scannability. By removing the read more links at the dashboard level, I increased information density by 2x. This allows users to view significantly more data above the fold.

The V1 square card layout suffered from poor vertical space efficiency

The new horizontal cards is much more efficient when browsing

Finding 3: Solving data overload for power users

Finding 3: Solving data overload for power users

The Problem: We originally designed for a standard profile of 50 biomarkers, but testing with power users managing multiple chronic conditions revealed libraries of 200+ metrics. Our "show-all" layout quickly collapsed under this volume, turning a streamlined dashboard into a source of major cognitive overload.

The Fix: I defined a new logic to implement progressive disclosure. Instead of a full list, we now show the 20 most recently updated cards. For deeper analysis, I introduced a "View All" entry point paired with search and filters to ensure the dashboard remains clean while providing power users with seamless access to their entire health history.

Have a 'view all' button after the initial 20 cards

Search and filters make it much easier to find a specific card

Finding 4: Better browsing for favorites

Finding 4: Better browsing for favorites

The Problem: Users found the carousel confusing and tiring. Most didn't even realize there were more cards to see. Because they couldn't tell what was coming next, they usually just stopped at the first one.

The Fix: I replaced the carosel with a simple vertical list and added an AI option to fill it in automatically. By letting users just scroll down naturally and moving the extra date settings to a deeper page, I made the experience much more intuitive where the most important health info is never hidden.

Empty state favorites

Vertical orientation of favorites for improved scannability

Final results

After iterating, I ran a final validation round with 4 participants to test the new changes. Here are the findings:

  • Faster Browsing: By replacing inefficient square cards with a condensed horizontal layout, I doubled the information visible "above the fold." Combined with a continuous vertical feed, this eliminated the need to swipe left and right, which significantly speeds up task completion.

  • Solving Data Overload: I moved the exhaustive list of biomarkers to a dedicated "All Results" page with search and filters. This cleaned the primary dashboard of visual noise, allowing users to focus on key health trends without feeling overwhelmed.

  • Decreased Drop Rate: Introducing a "Permission to Leave" screen successfully neutralized the anxiety of the "active wait." By removing the pressure to stay on a loading screen, we saw a dramatic decrease in abandoned sync sessions as users felt more in control.

The Impact

32%

Reduced connection drop-off

66%

Reduced task completion time

32%

32%

Reduced connection drop-off

66%

66%

Reduced task completion time

Final design

Add new connections

Add new connections screen

Connections onboarding

Set sharing permissions

Syncing info screen

Sync complete notification

Dashboard favorites

Empty dashboard favorites

Manually add to favorites

Favorites added, vertically oriented for rapid browsing.

All results

All results section with space-efficient horizontal cards for streamlined result browsing.

Search and filters make it much easier to find a specific card

Individual result detail page

Detailed result analysis featuring a date range picker and summary grid for historical context.

Hover state for a datapoint on the chart

Updates

The feature was shipped in May, 2023!

We have seen a growing trend in the number of users making manual entries. Additionally, I have received positive feedback from users about how simple it is to add entries manually.

Final prototype

Key takeaways

  1. Function over form. The V1 square layout favored a breathable aesthetic over functional utility, but its poor vertical efficiency created a scrolling roadblock. By pivoting to a high-density landscape format, I doubled the visible metrics above the fold while maintaining a disciplined visual hierarchy, allowing users to scan critical health trends faster.

  2. Building trust is the key. I identified that our 5-minute data sync lacked feedback, leaving users trapped and causing high abandonment. I realized the solution wasn't just speed, but transparency. By redesigning the flow to explicitly state they were 'safe to leave' while the sync continued in the background, I reduced anxiety and significantly improved retention.

  3. The cost of speed. While convenience sampling enabled rapid iteration, it initially missed the power user profile managing 200+ biomarkers. This oversight caused our "show-all" dashboard to collapse under extreme volume. Moving forward, I would include at least one power user in the initial research to better understand their unique needs.

Key takeaways

  1. Not afraid to speak up. As a new member of the team, I was initially hesitant when challenged by the tech lead. However, as a UX professional, I wanted to advocate for the user and provide my expertise. I'm glad I spoke up, which eventually resulted in a better UX.


  2. Consider development limitations. I intentionally reused as many existing components as I could, which sped things up and avoided excessive development effort.


  3. Conduct user testing prior to development. The initial mockups were implemented without any usability testing, leading to issues and resulted in wasting valuable development resources. It is far more efficient to have a solid design in place before development.

Let's connect!