Carrinho de compras: como alterar quantidade e remover itens

Como permitir que clientes alterem quantidades e removam itens do carrinho com atualização imediata, feedback, desfazer e acessibilidade.

Wireframe de uma linha de carrinho com controle de quantidade, remoção e recuperação.
Nível de impácto
Alto
Status
Recomendado
Nível de evidênica
Forte evidência

Contexto

O carrinho é o ponto de revisão antes do checkout. Alterar quantidade e remover itens parecem tarefas simples, mas seletores inadequados, atualizações atrasadas e controles ambíguos podem produzir erros no pedido ou interromper o checkout.

Use controles de aumentar e diminuir para quantidades pequenas e frequentes. Quando quantidades maiores forem plausíveis, combine os botões com um campo numérico editável. Aplique a mudança ao carrinho e aos totais sem exigir um botão separado de atualização.

Quando a quantidade estiver em 1, permita que diminuir remova o item ou conduza de forma clara à remoção. Mantenha também uma ação explícita “Remover” quando ela melhorar a descoberta. Após remover, mostre confirmação e ofereça “Desfazer” ou acesso imediato ao item removido.

Valide limites mínimos, máximos, múltiplos, estoque e regras comerciais. Se houver processamento assíncrono, mostre estado de carregamento, evite ações duplicadas e preserve uma saída de recuperação em caso de falha.

Carrinho da IKEA com produto, controle de quantidade com botões de diminuir e aumentar e ação para remover o item.
Exemplo real: a IKEA permite alterar a quantidade diretamente no carrinho pelos controles de diminuir e aumentar e mantém a ação de remover próxima ao item. Isso permite editar o pedido sem sair do contexto do carrinho. Fonte: IKEA.

Porque isso importa?

A pesquisa aplicada da Baymard encontrou dificuldade relevante em seletores baseados apenas em campo aberto ou lista suspensa. Atualizações imediatas, alvos adequados e recuperação após remoção reduzem fricção e ajudam a manter quantidade, subtotal e total coerentes.

  • Carrinhos com itens cuja quantidade pode ser alterada antes do checkout.
  • Mini carrinhos ou listas de compra com edição direta.
  • Fluxos de supermercado, recorrência ou compra múltipla em que ajustes de quantidade são frequentes.
  • Interfaces em que remover um item é reversível e pode ser recuperado com desfazer.
  • Não use somente stepper quando o intervalo possível for muito amplo; ofereça entrada direta validada.
  • Não permita quantidades que violem estoque, múltiplos, peso mínimo ou regras do produto.
  • Não trate remoções com consequências incomuns como uma exclusão trivial; explique o efeito sobre kits, descontos, assinaturas ou frete.
  • Não use confirmação bloqueadora em toda remoção reversível.
Tela de checkout da Cobasi com itens do carrinho, controle de quantidade, resumo do pedido e cupom
Exemplo real: a Cobasi permite alterar a quantidade diretamente no carrinho com controles de diminuir e aumentar, mantém o valor atual visível e oferece a remoção por um ícone de lixeira próximo ao produto. A opção “Limpar Carrinho” também permite remover todos os itens de uma vez. Fonte: Cobasi.

Recomendações

Faça

Práticas recomendadas
  • Atualize subtotal, total, descontos e frete de forma coerente após cada mudança confirmada.
  • Selecione o valor atual quando a pessoa entrar no campo para substituir a quantidade.
  • Valide limites e comunique feedback de sucesso ou erro no próprio contexto.
  • Permita remover pelo caminho que as pessoas tentam naturalmente e mantenha recuperação por desfazer.
Wireframe correto de carrinho com controles de quantidade grandes e espaçados, remoção explícita e recuperação.
Faça: controles grandes e espaçados, campo claramente delimitado, remoção explícita e recuperação.

Evite

Práticas a evitar
  • Lista suspensa extensa para quantidades comuns.
  • Campo livre sem limites, validação ou teclado numérico em dispositivos móveis.
  • Botão “Atualizar carrinho” separado como único modo de confirmar a alteração.
  • Desabilitar o botão de diminuir em 1 sem oferecer remoção clara.
  • Remover silenciosamente ou deixar totais desatualizados.
Wireframe incorreto de carrinho com controles pequenos e comprimidos, remoção distante e sem recuperação.
Evite: controles pequenos e comprimidos, estado bloqueado, remoção distante e ausência de recuperação.
Tela de carrinho com campo de quantidade, botão Check Out e opção Remove
Exemplo real: o Walmart apresenta os controles de diminuir e aumentar quantidade próximos ao produto e mantém a ação “Remove” claramente visível no mesmo contexto. A interface permite ajustar ou excluir o item sem exigir uma etapa separada de atualização do carrinho. Fonte: Baymard Institute — Product Quantity Changes: https://baymard.com/blog/auto-update-users-quantity-changes

Acessibilidade

  • Use botões nativos com nomes acessíveis específicos, como “Aumentar quantidade de [produto]”, “Diminuir quantidade de [produto]” e “Remover [produto]”.
  • Se houver campo editável, forneça rótulo, valor atual, mínimo, máximo e estado inválido programaticamente; preserve teclado e setas.
  • Garanta alvos de ponteiro com pelo menos 24 × 24 CSS px ou espaçamento equivalente conforme WCAG 2.2 AA.
  • Anuncie alterações, totais, remoção, desfazer e erros como mensagens de status sem mover o foco desnecessariamente.
  • Não dependa apenas de cor.

Checklist

  • Há botões de aumentar e diminuir e, quando necessário, campo numérico editável.
  • A quantidade atual pode ser substituída sem concatenação acidental.
  • Alterações atualizam item, subtotal e total de modo sincronizado.
  • O botão de diminuir em 1 não vira um beco sem saída.
  • A remoção tem feedback e recuperação.
  • Limites de estoque, mínimo, máximo e múltiplos são validados.
  • Estados de carregamento e erro impedem duplicação.
  • Controles têm nome, foco, teclado, alvo e contraste adequados.
  • Desktop, mobile, leitor de tela, zoom e conexão lenta foram testados.
Veja também

  • Quando oferecer a opção “Desfazer”
  • Como tratar ações destrutivas
  • Alvos de toque: qual deve ser o tamanho mínimo
Esta recomendação foi útil para você?