Most products treat confirmation dialogs as a yes/no prompt. The systems that handle money, identity, or irreversible state treat them as a serious design surface — typed confirmations, consequence preview, undo affordances, and explicit copy that names what's about to happen.
Study these references when your product has any action whose effect cannot be cleanly reversed: account deletion, data export, payment commits, deployment rollouts, contract signs.
- 01Typed confirmation ("Type DELETE to confirm") for the genuinely irreversible path, not for routine actions.
- 02Consequence preview — show exactly what will change before the user commits.
- 03Undo within the relevant time window for actions that can be reversed.
- 04Explicit, specific copy. "Delete repository?" beats "Are you sure?".
- 05Time delay or cooldown for the most consequential actions (e.g. account deletion).
- 01Every action gets a confirmation dialog and users tune them out — the meaningful ones get clicked through.
- 02Generic copy ("Are you sure?") leaves users guessing about what will actually happen.
- 03No undo for actions that could be reversed in 30 seconds, leaving users to file support tickets.
Stripe Design System
Stripe
ConfirmDialog
Reference irreversible-action confirmation — typed confirmation, delay, and consequence preview together.
Polaris
Shopify
Banner / Modal
Inline status messaging with severity levels and clear action language; the modal pairs with explicit destructive-action copy.
Apple Human Interface Guidelines
Apple
Sheet / Action Sheet
Modal presentation with detents, drag dismissal, and platform-aware destructive-action styling (red text, separation from neutral actions).