Destructive Flows

The scariest screens in your product. Deletion, revocation, account closure — the moments where one click can't be undone.

Delete account

The user wants to permanently delete their account and all associated data. This is irreversible. Most products bury this or make it confusing — both are wrong. Make it clear, make it hard to do accidentally, but don't make it impossible.

Delete account

This action is permanent and cannot be undone.

The following will be permanently deleted:

  • • All projects and their data (12 projects)
  • • All team members will lose access (4 members)
  • • Billing history and invoices
  • • API keys and integrations

Show on the account settings page behind a 'Danger zone' section. Require explicit confirmation (typing the workspace name). Explain exactly what will be deleted and what the timeline is.

Remove team member

An admin is removing someone from the workspace. This revokes all their access immediately. The person being removed might have active work, shared resources, or be the owner of critical integrations.

Remove team member

BS

Bob Smith

bob@acme.com · Editor

This will immediately:

  • • Revoke access to all projects
  • • Remove from 3 shared dashboards
  • • Invalidate their API key

Their past activity will remain in the audit log.

Show as a confirmation modal when an admin clicks 'Remove' on a team member. List the consequences — what access they'll lose, what happens to their resources.

Revoke API key

The user is revoking an API key. Any integration using this key will immediately stop working. This is a common action in developer-facing products that's often treated too casually.

Revoke API key

This cannot be undone.

Production API Key

sk_live_...a8f2

Active

Last used 3 minutes ago · 12,847 requests this month

Warning: This key is actively being used. Revoking it will immediately break any integration using it.

Show as a confirmation dialog when revoking any API key or token. Emphasize that this is immediate and irreversible. If you can detect active usage, show that.

Cancel subscription

The user is canceling their paid subscription. This is the moment your product is losing a customer. Don't guilt-trip them, but do make sure they understand what they're giving up and when it takes effect.

Cancel your subscription

We're sorry to see you go.

Pro Plan

$49/month · Renews March 1, 2026

Active

If you cancel:

  • You'll keep access until March 1, 2026
  • After that, your workspace downgrades to the Free plan
  • Your data is kept for 90 days, then permanently deleted
  • You can resubscribe anytime to restore full access

Show as a multi-step flow or confirmation page when the user clicks 'Cancel subscription'. Be transparent about the timeline and what happens to their data.

Bulk delete with mixed ownership

The user selected multiple items to delete, but some belong to other team members. This is a nuanced destructive action — you need to show them exactly what they're deleting and flag items they might not realize they're affecting.

Delete 5 projects

Review what will be deleted.

Marketing SiteYou
API DocsYou
Sales DashboardOwned by Carol
Onboarding FlowOwned by Dan
Internal WikiYou

2 of 5 projects are owned by other team members.

Show when a bulk delete selection includes items owned by other users or items with dependencies. Break down the selection so the user can make an informed decision.

Leave workspace

A team member is leaving a shared workspace. Unlike being removed by an admin, this is voluntary. They need to understand what they'll lose access to and whether they can rejoin.

Leave workspace

You're about to leave "Acme Inc."

Once you leave:

  • You'll lose access to all projects in this workspace
  • Your contributions will remain but be uneditable
  • An admin can re-invite you if you want to rejoin

Show when a user clicks 'Leave workspace' from their workspace settings. Clarify whether they can rejoin and what happens to their contributions.