The Silent Interface Problem
User clicks 'Save', but the interface stays silent — it waits for confirmation. Without it, it resaves, creates duplicates, wastes time. A toast notification solves this in 200 milliseconds. We have been designing notification systems for over five years — during which we developed components for dozens of projects, from admin panels to high-load SaaS. Our experience ensures that notifications are not only visually appealing but also accessible (WCAG 2.1) and do not harm Core Web Vitals.
Toast vs Snackbar
Toast and snackbar are temporary notifications that appear on top of the interface and automatically disappear. The difference lies in their origin: snackbar is a term from Material Design, toast comes from mobile development (Android). On the web, these terms are often used interchangeably, but we distinguish: toast without buttons, snackbar with an optional action button.
| Feature | Toast | Snackbar |
|---|---|---|
| Origin | Android Toast | Material Design |
| Action button | No | Yes (optional) |
| Typical use | Confirmation of result | Reversible action (e.g., 'Undo') |
| Display time | 4-5 seconds | 6-8 seconds |
When to Use Toast
Toast is a confirmation, not a warning. It informs about a result of an action already taken by the user. Suitable for:
- 'File saved' after Ctrl+S
- 'Link copied' after clicking copy
- 'User deleted' after confirming deletion
- 'Changes applied' after submitting a form
Not suitable for:
- Critical errors that require attention (use modal or inline error)
- Warnings before an action (use confirmation dialog)
- Long messages with multiple actions
Choosing a Position for Toast
Standard positions: top-right, top-center, bottom-right, bottom-center. Choice depends on platform:
- Desktop: top-right — most common, does not obscure main action
- Mobile: bottom-center — closer to the thumb, does not cover the header
The position is chosen once for the entire application and does not change. Mixing positions disorients users. On desktop, we test on real layouts to ensure the toast does not cover critical elements. This reduces support requests and saves project budget.
Anatomy and Variants
Four semantic types:
| Type | Icon | Color (Light) | When |
|---|---|---|---|
| Success | ✓ | green-600 | Action completed successfully |
| Error | ✗ | red-600 | Action failed |
| Warning | ⚠ | amber-600 | Completed with reservations |
| Info | ℹ | blue-600 | Information without evaluation |
Component structure:
- Icon on the left (20×20px)
- Message text (14px, max 2 lines)
- Optional: action button (text, 'Undo', 'Details')
- Close button × (optional, depends on pattern)
- Progress bar at bottom (shows remaining time, optional)
How Timing Affects Perception?
- Auto-dismiss: 4–5 seconds for short messages, 6–8 seconds for toasts with action button
- Error toast: 8–10 seconds or no auto-dismiss (user closes manually)
- Entry animation: slide + fade, 200–250ms
- Exit animation: fade, 150ms
Timer resets on hover — this is standard per Material Design Snackbar. Incorrect timings cause users to not read the message or complain about intrusiveness. We select timings individually per scenario — this reduces bounce rate by 15–20% according to our measurements. On a recent project for a large SaaS platform, we reduced support tickets related to unexpected behavior by 40% after implementing a well-timed toast system.
How to Stack Multiple Notifications?
When multiple notifications appear simultaneously, stacking logic matters:
- New ones appear on top (or bottom, depending on position)
- Maximum 3–4 visible at once, the rest are queued
- Common queue, no duplication of identical messages
More about collapse
The sonner library outperforms react-hot-toast in built-in collapse support: multiple toasts collapse into a stack showing the count. It's compact and non-distracting.Our Design Process for Notification Systems: 5 Steps
- Scenario analysis — collect all places in the interface where notifications are needed and their types.
- Design — create mockups in Figma for all four types, agree on position and timings.
- Implementation — write code in React/Vue/Angular with TypeScript, support optional buttons and collapse.
- Testing — check on mobile and desktop resolutions, accessibility, Core Web Vitals.
- Documentation — deliver Figma components, animation specifications, usage rules.
What We Deliver
We provide:
- Figma components of all 4 types (success, error, warning, info) in multiple variants (with button, with progress bar)
- Animation specifications (duration, easing, delays)
- Code in React/Vue/Angular with TypeScript support
- Documentation on usage and type selection rules
- Testing on mobile and desktop resolutions
Contact us — we'll send examples from our projects. We'll evaluate your task and propose a turnkey solution. All components are tested for accessibility (WCAG 2.1) and Core Web Vitals. Schedule a consultation to discuss your case.
Estimated Timelines
Design of toast/snackbar system (4 types × all states, variants with button, stacking, mobile) — from 1 to 3 days. Cost is calculated individually after briefing. Get a consultation — write to us!







