Confirmação antes de excluir: quando é necessária

Use confirmação antes de excluir quando o impacto for alto ou a ação não puder ser desfeita; para ações reversíveis, prefira desfazer.

Wireframe de lista com decisão entre oferecer desfazer e confirmar uma exclusão permanente.
Nível de impácto
Alto
Status
Usar com atenção
Nível de evidênica
Forte evidência

Contexto

Excluir não é igual a remover da tela. Antes de bloquear a tarefa com uma modal, é preciso avaliar o impacto, a reversibilidade e o alcance da ação.

A confirmação deve explicar a consequência da exclusão, não apenas perguntar “tem certeza?”.

Confirme antes de excluir quando a ação for irreversível, afetar dados importantes, remover vários itens ou tiver recuperação difícil.

Explique claramente o que será excluído, use um botão com verbo específico — como “Excluir” — e ofereça “Cancelar”. Quando possível, prefira executar a ação e oferecer “Desfazer” em vez de interromper o fluxo com uma modal.

Para exclusões de alto impacto, peça uma confirmação adicional, como digitar o nome do recurso.

Modal do Carbon Design System com item identificado, consequência explícita e ações Cancelar e Delete.
Exemplo real: o Carbon Design System apresenta uma confirmação de exclusão com o recurso identificado, a consequência permanente descrita e ações específicas de Cancelar e Delete. A imagem demonstra como uma confirmação deve explicar o impacto antes da ação destrutiva. Fonte: Carbon Design System — Remove pattern — https://carbondesignsystem.com/community/patterns/remove-pattern/

Porque isso importa?

Confirmações usadas sem critério tornam-se ruído e incentivam cliques automáticos. Por outro lado, excluir dados sem explicar a consequência pode causar perda de trabalho, registros ou acesso.

A confirmação deve proteger contra erros graves sem transformar toda exclusão simples em uma etapa extra.

  • Quando a exclusão não puder ser desfeita.
  • Quando os dados forem importantes ou difíceis de recriar.
  • Quando vários itens forem excluídos ao mesmo tempo.
  • Quando a ação puder afetar outras pessoas, registros ou configurações.
  • Quando não houver uma recuperação simples por “Desfazer”.
  • Quando o impacto justificar uma confirmação adicional.
  • Quando a ação for facilmente reversível.
  • Quando for possível oferecer “Desfazer”.
  • Quando o item puder ser recriado sem custo relevante.
  • Quando a confirmação aparecer para toda ação pequena e repetitiva.
  • Quando a modal servir apenas para informar que a exclusão terminou.
  • Quando uma mensagem de sucesso ou ação reversível resolver melhor o problema.
Captura do GitHub Desktop com diálogo Delete Worktree, ações Cancel e Delete e botão X.
Exemplo real: o GitHub Desktop identifica o worktree na confirmação, separa Cancel de Delete e mantém o fechamento pelo X. Isso ilustra uma confirmação destrutiva com alvo e saída claros. Fonte: GitHub Docs — Managing worktrees in GitHub Desktop: https://docs.github.com/en/desktop/making-changes-in-a-branch/managing-worktrees-in-github-desktop

Recomendações

Faça

Práticas recomendadas
  • Explique o que será excluído.
  • Mostre quantidade e nome dos itens.
  • Use “Excluir” e “Cancelar”.
  • Descreva a consequência.
  • Prefira “Desfazer” quando possível.
  • Aumente a confirmação conforme o impacto.
Wireframe com desfazer para remoção simples e modal específica para exclusão permanente.
Exemplo correto: ações de baixo impacto oferecem Desfazer, enquanto a exclusão de alto impacto identifica o item, explica a consequência e oferece Cancelar antes do botão destrutivo.

Evite

Práticas a evitar
  • Não use apenas “Tem certeza?”.
  • Não use botões “Sim” e “Não”.
  • Não confirme toda exclusão.
  • Não esconda a consequência.
  • Não use cor como único aviso.
  • Não descarte dados sem recuperação.
Wireframe com toda ação de excluir abrindo modais genéricas sem identificar o item ou explicar consequências.
Exemplo incorreto: confirmações genéricas e repetidas interrompem ações rotineiras, não identificam o item, não explicam a consequência e não oferecem recuperação.

Acessibilidade

Use uma modal com título e descrição associados ao diálogo. O título deve identificar a ação, por exemplo, “Excluir projeto”.

Em ações destrutivas, o foco inicial deve favorecer a opção segura, como “Cancelar”. Mantenha o foco dentro da modal, permita o fechamento por Escape sem executar a exclusão e devolva o foco ao elemento que abriu o diálogo.

Os botões precisam ter nomes claros, foco visível e diferença perceptível que não dependa apenas de cor. Teste com teclado, zoom e leitor de tela.

Checklist

  • A ação é irreversível ou difícil de recuperar?
  • O texto identifica o item ou a quantidade?
  • A consequência está explicada?
  • O botão usa um verbo específico?
  • Existe uma opção clara de cancelar?
  • “Desfazer” seria melhor que uma confirmação?
  • A confirmação aparece somente quando o impacto justifica?
  • A ação destrutiva não é executada por Escape?
  • O foco começa na opção segura?
  • Existe feedback após a exclusão?
  • O fluxo foi testado com teclado e leitor de tela?

Referências

  • Carbon Design System — Remove pattern. Diferencia exclusões de baixo, médio e alto impacto e recomenda confirmação proporcional, incluindo digitação do nome em casos críticos. Consultar o padrão.
  • Carbon Design System — Modal: Usage. Define o uso de modais transacionais e danger modals para ações destrutivas ou irreversíveis. Consultar o uso.
  • Adobe Spectrum — Alert Dialog. Recomenda variante destrutiva, consequência explícita e rótulo do botão coerente com a ação. Consultar o componente.
  • Padrão Digital de Governo — Modal. Recomenda títulos e ações específicos, como “Excluir”, e evita “Tem certeza?” ou “Sim/Não”. Consultar o componente.
  • U.S. Web Design System — Alert. Orienta usar uma confirmação mais intrusiva para ações destrutivas, como excluir uma aplicação. Consultar a orientação.
  • W3C — ARIA Authoring Practices Guide: Dialog (Modal) Pattern. Orienta foco, teclado, Escape, nome acessível e retorno do foco. Consultar o padrão.
  • AMAWeb — UNIFESP. Oferece checklist e manual para verificar foco, teclado, compreensão e acessibilidade. Consultar o checklist e o manual.
Veja também

Esta recomendação foi útil para você?