← Selected Work

From Chaos to Clarity: Redesigning Device Error Communication

Turning 100+ cryptic device errors into three actionable paths technicians could diagnose and resolve in the field.

Role
Sole UX Designer
Company
Grainger — KeepStock
Capabilities
Enterprise UX, Field Research, Systems Thinking, Information Architecture, Interaction Design, Figma
01 · Context

The Challenge

Grainger’s KeepStock tools spanned mobile, tablet, kiosk, and vending-device touchpoints, but surfaced more than 100 cryptic and inconsistent error messages. When something went wrong, field technicians and customers often couldn’t determine what had happened, whether they could resolve it themselves, or what to do next. The result was unnecessary support calls and avoidable escalation for problems that could often be handled in the field.

As the sole UX designer on the initiative, I owned the experience from discovery through final design—conducting technician ride-alongs, auditing the existing error ecosystem, defining the new taxonomy and interaction model, and partnering with support and engineering stakeholders through implementation and sign-off.

02 · Ownership

What I Owned

  • Audited and categorized 100+ error messages across device types and touchpoints
  • Conducted ride-alongs with field technicians to observe how errors were diagnosed and resolved under real-world conditions
  • Partnered with support leadership to identify recurring troubleshooting patterns and escalation points
  • Developed a behavioral taxonomy that consolidated fragmented error states into three actionable categories
  • Designed end-to-end error flows that gave users a clear next action based on the type of problem encountered
  • Translated the framework into reusable interaction patterns that could scale across the KeepStock ecosystem
03 · Reasoning

How the Direction Changed

System failure → user action

The existing experience described what had failed technically. Field research showed technicians primarily needed to know what they could do next.

100+ messages → behavioral taxonomy

Rather than redesigning individual errors, I grouped conditions by recovery behavior and reduced the system to three actionable categories.

Message → recovery path

Each category defined not only what the system communicated, but the appropriate guidance, user action, and escalation path.

One-off fixes → reusable system

The resulting interaction framework could accommodate new error conditions without creating another collection of disconnected messages.

The resulting model shifted the experience from describing system failures to supporting recovery: audit the error landscape, organize conditions by user action, define consistent recovery paths, and translate the model into reusable interaction patterns with engineering.

Final Experience

Selected Designs

Evidence

Process in Action

04 · Evidence

What I Shipped

40%reduction in support-call volume at launch
Error-State Audit — 100+ messages analyzed across device types
Behavioral Error Taxonomy — three action-oriented categories
Recovery Interaction Model — consistent guidance, action, and escalation patterns
Reusable Error Components — scalable patterns across the KeepStock ecosystem
Field-Validated Flows — informed by technician ride-alongs and troubleshooting behavior
Self-Service Troubleshooting Experience — reduced unnecessary escalation
Transferable Principle

Why this pattern matters

Design recovery around what the user can do, not what the system knows. Complex systems often organize errors around technical architecture because that is how engineering understands the problem. This work demonstrated that a user-facing recovery model can abstract that complexity into a small number of actionable paths without eliminating the technical specificity needed behind the scenes.

Next

Explore another case study

View Selected Work