A short pop-up message about the outcome of an action — for what the user would otherwise not see.
When to show
-
✓ Error / failure — system or background. Form errors — inline at the field.
-
✓ Background / deferred outcome — a sync has started, an email is queued.
-
✓ Change out of view — an element you have left; a bulk action.
-
✓ A significant action with no visible trace — revoking access, sending an invitation.
-
✕ The result is visible in place — a toast duplicates it; confirm inline.
-
✕ Routine, instantly reversible —
a toggle, expanding a block: no feedback needed.
Variants
success
✓
Saved
Organization settings updated.
×
error
!
Could not connect
The SMTP server did not respond (timeout).
Open SMTP settings →
×
info
i
Sync started
Source “GitLab” — the result will appear in the log.
×
warn
!
Invitation sent
The email is queued — delivery depends on SMTP.
×
-
success — a significant action went through: sent, created, revoked.
-
error — the action failed; the cause + an optional link to the fix.
-
info — a neutral status: a background task has started.
-
warn — done with a caveat.
Behavior
stack · several in a row
✓
Role changed
Anna Petrova — now Admin.
×
✓
Invitation sent
ivan@example.com — valid for 48 hours.
×
-
Position — bottom-right corner, over the content, without shifting the layout.
-
Auto-dismiss — ~5 seconds; hover/focus pauses the timer,
× closes it manually.
-
Stack — in a column, newest at the bottom; over the limit, older ones collapse.
-
Accessibility —
role="status" or role="alert" (error), aria-live for
screen readers.