Voiro Project Banner

Turning notifications into a decision-critical attention system

AdTechHigh-Stakes Systems
Client
VoiroVoiro
RoleProduct Designer - Systems UX & Interaction Logic
Platforms
DesktopMobile
Tools Used
FigmaFigma
MiroMiro
ExcelExcel

TL;DR

The Problem

Critical revenue approvals were being missed because they were drowning in a noisy, system-driven notification feed.

The Solution

Replaced the "broadcast" model with a logic-based priority engine, giving power users control over what interrupts them.

The Impact

Reduced approval latency by 35% and eliminated missed SLAs for critical events.

About the Project

This work was part of a larger Command Center redesign for a B2B Ad-Tech platform used by enterprise sales, operations, and leadership teams.

Voiro operates as a centralized decision environment where teams manage campaign approvals, make revenue-impacting decisions, handle SLA-bound workflows, and collaborate across sales, ops, and management functions.

In this environment, notifications were not secondary UI elements. They were decision triggers.

Project cover

The Problem

The legacy system treated every event equally. A server maintenance ping looked exactly like a $50k budget rejection.

Nearly every event triggered a notification

No prioritization or relevance filtering

No user-level control

Identical behavior for casual and power users

The Problem - Legacy notification system

Observations

As part of recurring working sessions with business stakeholders, product managers, and operations leads, we reviewed how notifications were being used in day-to-day decision workflows.

Across these conversations and walkthroughs, a consistent pattern emerged:

Notification volume was high, but interaction rates were low

Alerts were frequently marked as read without any follow-up action

Users often bypassed notifications entirely, navigating straight to dashboards to understand what had changed

Business teams flagged delayed approvals and missed responses, despite alerts being technically delivered

In isolation, each signal looked minor. Taken together, they pointed to a deeper issue: the notification system was functioning at a technical level, but failing behaviorally, it was no longer trusted as a reliable trigger for action.

How the Problem Surfaced

I initiated a series of discovery sessions with Business Heads and Ops Leads to investigate why critical SLAs were slipping.

While Engineering confirmed the system was "technically working" (logs showed emails were sent), our collaborative review of user behavior revealed a different reality. The system was behaviorally failing.

The "Read-Ignore" Pattern

Stakeholders flagged that users were marking alerts as "read" without acting. High volume was driving low interaction.

The Dashboard Detour

We observed users bypassing the notification center entirely to hunt for tasks in dashboards manually—a clear signal of broken trust.

Operational Latency

Business teams reported delayed approvals despite alerts being sent. The "Alert" channel had lost its authority to drive action.

How the Problem Surfaced

Reframing the Problem

Initial focus and framing

Initial focus and framing

The initial framing treated notifications as a UI problem. The focus was on visual polish, consistency, and adding more system rules to better surface events.

The reframed approach

The reframed approach

The problem was reframed from improving notifications to defining who controls attention. This shift repositioned notifications from system-generated alerts to a governed, user-controlled decision layer.

Core Design Principle

Every notification should tell a complete story at a glance. We moved away from generic alerts to structured data units. And also notification must answer three questions immediately.

1. Context

What happened?

2. Location

Where did it happen?

3. Source

Who triggered it?

4. Relevance

Does it require action?

5. Action

What should I do next?

User Control as a First-Class Feature

Instead of expanding system-driven rules, we made a deliberate shift: User control became a first-class feature.

Power users were given ownership over:

  • Which notification categories matter
  • Conditional triggers (when X happens and Y is true)
  • Object-specific subscriptions
  • Time-based controls (working hours, DND windows)

This aligned responsibility with control. Users were no longer passive recipients of alerts, they became curators of their attention.

User Control Solution 1
User Control Solution 2

Notification Taxonomy & States

To ensure scalability and predictability, we defined a structured notification taxonomy

Principle based breakdown

Principle based breakdown

Single vs grouped notifications

Single vs grouped notifications

Notifications logic framework

Notifications logic framework

Developer Handoff & System Reliability

Given the fragility of notification systems at scale, design intent needed to survive implementation.

I authored a detailed logic framework covering:

Event → trigger → notification mapping

Event → trigger → notification mapping

Avatar and indicator construction

Avatar and indicator construction

Grouping behavior

Grouping behavior

Trigger Logic Configuration

Trigger Logic Configuration

I owned the notification system architecture from interaction design through logic definition and developer handoff. This reduced ambiguity and ensured consistency across future extensions.

Final Visuals

Final Visual 1
Final Visual 2
Final Visual 3
Final Visual 4
Final Visual 5
Final Visual 6
Final Visual 7
Final Visual 8

Metrics & Operational Signals

Because this was an enterprise system, success was measured through behavioral change and execution reliability, not surface-level delight. Post-rollout, the system showed clear signs of regained trust and operational impact.

35%

Faster Approvals

Reduction in time-to-decision for budget requests.

Zero

Missed SLAs

For high-priority/critical flagged notifications.

High

Adoption Rate

Users began relying on the bell as their primary to-do list.

What We Chose Not to Do (Decision Trade-offs)

We did not expand the existing system-driven model

Adding more hard-coded rules would have reduced short-term complexity but failed at scale. Priority is contextual, and centralized logic would always misrepresent someone's needs.

We did not reduce notifications to minimal alerts

We avoided context-less alerts that required navigation to understand intent. In a high-stake environment, clarity outweighed surface simplicity.

We did not make notification control admin-only

Power users own outcomes. Removing their control would have shifted responsibility back to the system and recreated the original trust issue.

We did not optimize for zero-configuration onboarding

We accepted higher upfront setup effort in exchange for long-term relevance and reduced cognitive load over time.

Reflection

In high-stake systems, notifications are not alerts, they are contracts between the system and the user.