Designing a Scalable Notification System

USER INTERFACE

SYSTEMS

Contribution

I Worked on concept exploration, interface design, visual design, user flow mapping and UAT along with my Lead Product designer and PM. The project time was 3-4 weeks, resulting in platform-wide system adoption.

TLDR

As Paperpal scaled globally, its lack of a unified messaging system led to severe internal inconsistencies. Teams were pushing messages via 3+ different visual formats, causing user confusion and delaying critical feature adoption.


I led the redesign of a modular notification system and persistent tray UI. This initiative was focused on defining a clear Information Architecture to structure all message types into a single, scalable component library.

BEFORE

AFTER

How I Got Here

This started as a “small task” fix a messy pop-up. But when I dug deeper, I realized we didn’t have a notification system at all. We had multiple messages from product and marketing, being pushed inconsistently, without logic or structure and users across multiple countries were getting overwhelmed. I wasn’t just designing a banner I was designing an information architecture

The Problem

Existing state

🚩Notifications appeared inconsistently at login

🚩Different teams pushed different messages

🚩No visual consistency, hierarchy, or history

🚩No Classification for the messages

What was caused

😔Users missed critical product updates and offers



💣Users bombarded my messages at random time

🕐There was no way to revisit messages

Discovery (What I Uncovered)

I started by building a full notification map, auditing to map the existing chaos across the platform.

Key Findings

Inconsistent formats across 3+ styles (fonts, layout, CTAs)

Multiple message types being sent without structure:

Feature updates

Enhancements

Nudges

Extension prompts

Referrals

Offers

Personalized alerts

Analysis

To introduce clarity and control, I created a clear Information Architecture by grouping all existing and future messages into three core, non-overlapping categories.

This structure made it easier to define design patterns, shelf life rules, and delivery priorities, without overwhelming the user.

Product

Offers & Discount

Marketing

Critical system updates, new features, and technical alerts. (High Priority)

Time-sensitive promotions and personalized pricing. (Medium Priority)

General engagement, extension prompts, or referrals. (Low Priority)

This structure made it easier to define design patterns, shelf life rules, and delivery priorities, without overwhelming the user.

DESIGN GOALs

Consistency

Every notification should follow a unified structure

Scalability

New message types must slot in logically

Discoverability

Users must be able to revisit updates easily

Clarity

Support country-specific promos and variable expiry

Non-disruptive

Inform, don’t overwhelm

Another rating message

Promotion message

Feedback message

Feature promotion

Solution no.1

Real-Time Notifications (Modular Cards)

Designing across multiple scenarios with different content and interaction types was initially challenging, especially working through Figma variants and logic. But after refining the structure (and a few late nights), I created a scalable, modular card system that’s now easier to implement, reuse, and document.


System Highlights:

Triggered at login or user actions

Modular structure to support flexible content formats:

Text only

Text + CTA

Text + Image + CTA

Primary & secondary CTAs

Standardized layout with tags, timestamps, and read states for consistency and clarity

Solution no.2

Persistent Notification Tray

To address the issue of lost history, I designed a single, discoverable Tray UI accessed via a persistent icon in the header.


🧩 Features includes:

Shelf life defaults to 30 days, but adjustable depends on type of notification and context

Unread states (blue dot) with hover state to mark as read

Messages shows in chronological date order

Hover state

Feature feedback

Rating message

Product message

New feature launch

Reflections and Impact

Reflections

I learned that notification UX isn’t just about timing it’s about trust. Users don’t just need alerts. They need context, prioritization, and choice.

💡 Personal Takeaways:

Every system you design has consequences for other teams

Discoverability should never be optional

UI clarity often comes from structural decisions, not just visual ones

Impact

The new system achieved its core goal of de-risking system messaging and improving team efficiency:


Design Scalability: The defined IA and modular components are now the single source of truth, reducing future design effort for new message types.


Operational Clarity: Product and Marketing teams can now launch concurrent campaigns without conflicting with other messages, solving a major internal workflow friction point.


Accessibility & Consistency: Eliminated inconsistent legacy formats, ensuring all new platform communications adhere to a single, WCAG-compliant visual standard.

Don't be a stranger

Let's connect:)

Don't be a stranger

Let's connect:)

Designing a Scalable Notification System

USER INTERFACE

SYSTEMS

Contribution

I Worked on concept exploration, interface design, visual design, user flow mapping and UAT along with my Lead Product designer and PM. The project time was 3-4 weeks, resulting in platform-wide system adoption.

TLDR

As Paperpal scaled globally, its lack of a unified messaging system led to severe internal inconsistencies. Teams were pushing messages via 3+ different visual formats, causing user confusion and delaying critical feature adoption.


I led the redesign of a modular notification system and persistent tray UI. This initiative was focused on defining a clear Information Architecture to structure all message types into a single, scalable component library.

BEFORE

AFTER

How I Got Here

This started as a “small task” fix a messy pop-up. But when I dug deeper, I realized we didn’t have a notification system at all. We had multiple messages from product and marketing, being pushed inconsistently, without logic or structure and users across multiple countries were getting overwhelmed. I wasn’t just designing a banner I was designing an information architecture

The Problem

Existing state

🚩Notifications appeared inconsistently at login

🚩Different teams pushed different messages

🚩No visual consistency, hierarchy, or history

🚩No Classification for the messages

What was caused

😔Users missed critical product updates and offers



💣Users bombarded my messages at random time

🕐There was no way to revisit messages

Discovery (What I Uncovered)

I started by building a full notification map, auditing to map the existing chaos across the platform.

Key Findings

Inconsistent formats across 3+ styles (fonts, layout, CTAs)

Multiple message types being sent without structure:

Feature updates

Enhancements

Nudges

Extension prompts

Referrals

Offers

Personalized alerts

Analysis

To introduce clarity and control, I created a clear Information Architecture by grouping all existing and future messages into three core, non-overlapping categories.

This structure made it easier to define design patterns, shelf life rules, and delivery priorities, without overwhelming the user.

Product

Offers & Discount

Marketing

Critical system updates, new features, and technical alerts. (High Priority)

Time-sensitive promotions and personalized pricing. (Medium Priority)

General engagement, extension prompts, or referrals. (Low Priority)

This structure made it easier to define design patterns, shelf life rules, and delivery priorities, without overwhelming the user.

DESIGN GOALs

Consistency

Every notification should follow a unified structure

Scalability

New message types must slot in logically

Discoverability

Users must be able to revisit updates easily

Clarity

Support country-specific promos and variable expiry

Non-disruptive

Inform, don’t overwhelm

Another rating message

Promotion message

Feedback message

Feature promotion

Solution no.1

Real-Time Notifications (Modular Cards)

Designing across multiple scenarios with different content and interaction types was initially challenging, especially working through Figma variants and logic. But after refining the structure (and a few late nights), I created a scalable, modular card system that’s now easier to implement, reuse, and document.


System Highlights:

Triggered at login or user actions

Modular structure to support flexible content formats:

Text only

Text + CTA

Text + Image + CTA

Primary & secondary CTAs

Standardized layout with tags, timestamps, and read states for consistency and clarity

Solution no.2

Persistent Notification Tray

To address the issue of lost history, I designed a single, discoverable Tray UI accessed via a persistent icon in the header.


🧩 Features includes:

Shelf life defaults to 30 days, but adjustable depends on type of notification and context

Unread states (blue dot) with hover state to mark as read

Messages shows in chronological date order

Hover state

Feature feedback

Rating message

Product message

New feature launch

Reflections and Impact

Reflections

I learned that notification UX isn’t just about timing it’s about trust. Users don’t just need alerts. They need context, prioritization, and choice.

💡 Personal Takeaways:

Every system you design has consequences for other teams

Discoverability should never be optional

UI clarity often comes from structural decisions, not just visual ones

Impact

The new system achieved its core goal of de-risking system messaging and improving team efficiency:


Design Scalability: The defined IA and modular components are now the single source of truth, reducing future design effort for new message types.


Operational Clarity: Product and Marketing teams can now launch concurrent campaigns without conflicting with other messages, solving a major internal workflow friction point.


Accessibility & Consistency: Eliminated inconsistent legacy formats, ensuring all new platform communications adhere to a single, WCAG-compliant visual standard.

Designing a Scalable Notification System

USER INTERFACE

SYSTEMS

Contribution

I Worked on concept exploration, interface design, visual design, user flow mapping and UAT along with my Lead Product designer and PM. The project time was 3-4 weeks, resulting in platform-wide system adoption.

TLDR

As Paperpal scaled globally, its lack of a unified messaging system led to severe internal inconsistencies. Teams were pushing messages via 3+ different visual formats, causing user confusion and delaying critical feature adoption.


I led the redesign of a modular notification system and persistent tray UI. This initiative was focused on defining a clear Information Architecture to structure all message types into a single, scalable component library.

BEFORE

AFTER

How I Got Here

This started as a “small task” fix a messy pop-up. But when I dug deeper, I realized we didn’t have a notification system at all. We had multiple messages from product and marketing, being pushed inconsistently, without logic or structure and users across multiple countries were getting overwhelmed. I wasn’t just designing a banner I was designing an information architecture

The Problem

Existing state

🚩Notifications appeared inconsistently at login

🚩Different teams pushed different messages

🚩No visual consistency, hierarchy, or history

🚩No Classification for the messages

What was caused

😔Users missed critical product updates and offers



💣Users bombarded my messages at random time

🕐There was no way to revisit messages

Discovery (What I Uncovered)

I started by building a full notification map, auditing to map the existing chaos across the platform.

Key Findings

Inconsistent formats across 3+ styles (fonts, layout, CTAs)

Multiple message types being sent without structure:

Feature updates

Enhancements

Nudges

Extension prompts

Referrals

Offers

Personalized alerts

Analysis

To introduce clarity and control, I created a clear Information Architecture by grouping all existing and future messages into three core, non-overlapping categories.

This structure made it easier to define design patterns, shelf life rules, and delivery priorities, without overwhelming the user.

Product

Offers & Discount

Marketing

Critical system updates, new features, and technical alerts. (High Priority)

Time-sensitive promotions and personalized pricing. (Medium Priority)

General engagement, extension prompts, or referrals. (Low Priority)

This structure made it easier to define design patterns, shelf life rules, and delivery priorities, without overwhelming the user.

DESIGN GOALs

Consistency

Every notification should follow a unified structure

Scalability

New message types must slot in logically

Discoverability

Users must be able to revisit updates easily

Clarity

Support country-specific promos and variable expiry

Non-disruptive

Inform, don’t overwhelm

Another rating message

Promotion message

Feedback message

Feature promotion

Solution no.1

Real-Time Notifications (Modular Cards)

Designing across multiple scenarios with different content and interaction types was initially challenging, especially working through Figma variants and logic. But after refining the structure (and a few late nights), I created a scalable, modular card system that’s now easier to implement, reuse, and document.


System Highlights:

Triggered at login or user actions

Modular structure to support flexible content formats:

Text only

Text + CTA

Text + Image + CTA

Primary & secondary CTAs

Standardized layout with tags, timestamps, and read states for consistency and clarity

Solution no.2

Persistent Notification Tray

To address the issue of lost history, I designed a single, discoverable Tray UI accessed via a persistent icon in the header.


🧩 Features includes:

Shelf life defaults to 30 days, but adjustable depends on type of notification and context

Unread states (blue dot) with hover state to mark as read

Messages shows in chronological date order

Hover state

Feature feedback

Rating message

Product message

New feature launch

Reflections and Impact

Reflections

I learned that notification UX isn’t just about timing it’s about trust. Users don’t just need alerts. They need context, prioritization, and choice.

💡 Personal Takeaways:

Every system you design has consequences for other teams

Discoverability should never be optional

UI clarity often comes from structural decisions, not just visual ones

Impact

The new system achieved its core goal of de-risking system messaging and improving team efficiency:


Design Scalability: The defined IA and modular components are now the single source of truth, reducing future design effort for new message types.


Operational Clarity: Product and Marketing teams can now launch concurrent campaigns without conflicting with other messages, solving a major internal workflow friction point.


Accessibility & Consistency: Eliminated inconsistent legacy formats, ensuring all new platform communications adhere to a single, WCAG-compliant visual standard.

Designing a Scalable Notification System

USER INTERFACE

SYSTEMS

Contribution

I Worked on concept exploration, interface design, visual design, user flow mapping and UAT along with my Lead Product designer and PM. The project time was 3-4 weeks, resulting in platform-wide system adoption.

TLDR

As Paperpal scaled globally, its lack of a unified messaging system led to severe internal inconsistencies. Teams were pushing messages via 3+ different visual formats, causing user confusion and delaying critical feature adoption.


I led the redesign of a modular notification system and persistent tray UI. This initiative was focused on defining a clear Information Architecture to structure all message types into a single, scalable component library.

BEFORE

AFTER

How I Got Here

This started as a “small task” fix a messy pop-up. But when I dug deeper, I realized we didn’t have a notification system at all. We had multiple messages from product and marketing, being pushed inconsistently, without logic or structure and users across multiple countries were getting overwhelmed. I wasn’t just designing a banner I was designing an information architecture

The Problem

Existing state

🚩Notifications appeared inconsistently at login

🚩Different teams pushed different messages

🚩No visual consistency, hierarchy, or history

🚩No Classification for the messages

What was caused

😔Users missed critical product updates and offers



💣Users bombarded my messages at random time

🕐There was no way to revisit messages

Discovery (What I Uncovered)

I started by building a full notification map, auditing to map the existing chaos across the platform.

Key Findings

Inconsistent formats across 3+ styles (fonts, layout, CTAs)

Multiple message types being sent without structure:

Feature updates

Enhancements

Nudges

Extension prompts

Referrals

Offers

Personalized alerts

Analysis

To introduce clarity and control, I created a clear Information Architecture by grouping all existing and future messages into three core, non-overlapping categories.

This structure made it easier to define design patterns, shelf life rules, and delivery priorities, without overwhelming the user.

Product

Offers & Discount

Marketing

Critical system updates, new features, and technical alerts. (High Priority)

Time-sensitive promotions and personalized pricing. (Medium Priority)

General engagement, extension prompts, or referrals. (Low Priority)

This structure made it easier to define design patterns, shelf life rules, and delivery priorities, without overwhelming the user.

DESIGN GOALs

Consistency

Every notification should follow a unified structure

Scalability

New message types must slot in logically

Discoverability

Users must be able to revisit updates easily

Clarity

Support country-specific promos and variable expiry

Non-disruptive

Inform, don’t overwhelm

Another rating message

Promotion message

Feedback message

Feature promotion

Solution no.1

Real-Time Notifications (Modular Cards)

Designing across multiple scenarios with different content and interaction types was initially challenging, especially working through Figma variants and logic. But after refining the structure (and a few late nights), I created a scalable, modular card system that’s now easier to implement, reuse, and document.


System Highlights:

Triggered at login or user actions

Modular structure to support flexible content formats:

Text only

Text + CTA

Text + Image + CTA

Primary & secondary CTAs

Standardized layout with tags, timestamps, and read states for consistency and clarity

Solution no.2

Persistent Notification Tray

To address the issue of lost history, I designed a single, discoverable Tray UI accessed via a persistent icon in the header.


🧩 Features includes:

Shelf life defaults to 30 days, but adjustable depends on type of notification and context

Unread states (blue dot) with hover state to mark as read

Messages shows in chronological date order

Hover state

Feature feedback

Rating message

Product message

New feature launch

Reflections and Impact

Reflections

I learned that notification UX isn’t just about timing it’s about trust. Users don’t just need alerts. They need context, prioritization, and choice.

💡 Personal Takeaways:

Every system you design has consequences for other teams

Discoverability should never be optional

UI clarity often comes from structural decisions, not just visual ones

Impact

The new system achieved its core goal of de-risking system messaging and improving team efficiency:


Design Scalability: The defined IA and modular components are now the single source of truth, reducing future design effort for new message types.


Operational Clarity: Product and Marketing teams can now launch concurrent campaigns without conflicting with other messages, solving a major internal workflow friction point.


Accessibility & Consistency: Eliminated inconsistent legacy formats, ensuring all new platform communications adhere to a single, WCAG-compliant visual standard.

Create a free website with Framer, the website builder loved by startups, designers and agencies.