01 — Foundation

Efficiency must not reduce safety

Bulk actions save time when scope is obvious. They cause mass accidents when it is not.

Bulk actions help users repeat operations across many items. Users must always understand what is selected, what will happen, how many items are affected, and whether recovery exists.

02 — Selection

Selection before action

Actions appear because of deliberate selection — not hidden defaults.

  • visible selection state and count — see Selection Patterns
  • bulk toolbar appears when items are selected — “3 selected”
  • clear way to deselect all without triggering an action

03 — Actions

Clear labelling and destructive care

Name the action and the scope in the label.

  • “Delete 3 invoices” — not generic “Delete”
  • confirm destructive bulk operations — see Destructive Actions
  • undo or soft-delete where possible — see Undo and Restore
  • show progress for long bulk jobs — see Background Jobs
'Archive 12 selected projects? You can restore them within 30 days.'

04 — Accessibility

Accessible bulk operations

Keyboard users must select, review, and confirm without mouse precision.

  • keyboard access to select all, actions, and confirmation dialogs
  • announce selection count changes meaningfully
  • focus moves to confirmation or result summary after completion

05 — Review

Before you approve

A short checklist for bulk actions in code review.

  • scope is visible before and during the action
  • destructive bulk work has confirmation and recovery where possible
  • accidental mass actions are hard to trigger by mistake