Delete pattern

Deleting is a destructive action. To protect user resources, your product should support ‘undo’ where possible. If ‘undo’ support is impossible, request user confirmation before deleting a resource or asset.

Status:

Experimental

Maintainers:

Example of a deletion pattern using a modal in context

Example of a deletion pattern using a moda

High impact

A high-impact deletion cannot be reversed. The action would result in a significant loss for a user if done accidentally.

For high-impact scenarios, a user should confirm the action by manually entering the name of the resource. The ‘Delete’ button is enabled when the text entered perfectly matches the resource name.

The text should tell the user the consequences of the deletion and that the action cannot be undone. Optionally, when the delete button is selected it changes to Deleting….

Example of an un-populated high-impact deletion modal Example of a populated high-impact deletion modal Example of a high-impact deletion modal in its "deleting" state Example of a high-impact deletion modal in its "deleting" state

You can choose to show a notification confirming deletion is completed. This is useful when the deletion of the resource takes more than a few moments.

Example of a successful delete notification

Medium impact

A medium-impact deletion is one that cannot be reversed, but would not be catastrophic if done accidentally. When deleting is medium-impact, a confirmation dialog should be presented to the user which displays:

  • The name of the resource
  • Consequences of the deletion
  • The action cannot be undone

Optionally, when the delete button is selected it changes to Deleting….

Example of a standard delete modal Example of a standard delete modal in its "deleting" state Example of a standard delete modal in its "deleting" state

You can choose to show a notification confirming deletion is completed. This is useful when the deletion of the resource takes more than a few moments.

Example of a successful delete notification

Low impact

Requiring the user to confirm deletion is generally recommended. However, in very low impact situations, such as when an ‘undo’ option is available, user confirmation may not be required.