Cron, em português direto: um relógio que dispara workflow
Em automação, “cron” virou sinônimo de agendamento baseado em horário. A ideia nasceu no Unix: um serviço roda no servidor e, em horários definidos, chama um comando. Ferramentas de automação (n8n, Make, Zapier, orquestradores) copiariam o conceito: em vez de “comando”, elas disparam um workflow.
Na prática, você define uma regra de recorrência. Quando o relógio bate, o sistema cria uma execução. Parece simples — e é — até você depender disso em produção, com múltiplos fusos, atrasos e reprocessamentos.
Como ler uma expressão cron (sem decorar tudo)
A forma mais comum de cron tem 5 campos (minuto, hora, dia do mês, mês, dia da semana). Algumas ferramentas usam 6 ou 7 campos (incluindo segundos e/ou ano). O ponto aqui não é decorar variações, e sim saber reconhecer padrões.
Alguns exemplos típicos (formato de 5 campos):
| Objetivo | Exemplo de cron | O que significa |
|---|---|---|
| Todo dia às 08:00 | 0 8 * * * | Min 0, hora 8, qualquer dia/mês |
| A cada 15 minutos | */15 * * * * | Minutos em passos de 15 |
| Toda segunda às 09:30 | 30 9 * * 1 | Dia da semana 1 (seg) às 09:30 |
| Dia 1 de cada mês às 07:00 | 0 7 1 * * | Rodar no dia 1, 07:00 |
Quando usar cron vs webhook (e quando NÃO usar)
A decisão costuma ser: você quer reagir a um evento (webhook) ou rodar por rotina (cron).
Regra prática: se o dado “nasce” em outro sistema (novo pedido, novo lead, pagamento confirmado) e existe webhook, prefira webhook. Se você precisa “buscar” ou consolidar coisas em horários (relatório diário, checagem de SLA, varredura de planilha), cron é natural.
- Use cron quando: relatórios diários/semanais, reconciliação bancária, limpeza de dados, checagem de estoque, tarefas de manutenção, sincronizações por janela (batch).
- Prefira webhook quando: evento em tempo real importa, latência precisa ser baixa, volume é alto e você não quer ficar “varrendo” API.
- Evite cron quando: a API do sistema origem tem limites rígidos e você tende a fazer polling agressivo; ou quando a duplicidade de execução causa prejuízo (pedido faturado duas vezes, mensagem repetida no WhatsApp).
Armadilhas que derrubam cron em produção (as 5 campeãs)
Cron quebra menos por “expressão errada” e mais por detalhe operacional. As cinco situações abaixo aparecem direto em automações de verdade:
- Timezone: onde o agendamento está configurado? No fuso do servidor, da conta, do workflow, ou do projeto? Se você não crava isso, 08:00 pode virar 05:00.
- Horário de verão e ajustes regionais: mesmo quando o Brasil não está em DST, integrações globais podem aplicar regras próprias. Trate “hora local” como requisito, não como suposição.
- Sobreposição de execuções: se um job de 10 minutos roda “a cada 5”, você cria fila e concorrência sem perceber.
- Retry + não-idempotência: se falha no meio e reprocessa, você pode duplicar envio de e-mail, cobrança, criação de ticket etc.
- Janelas de manutenção: quedas curtas (VPS, rede, provedor) podem fazer você “perder” disparos. Algumas ferramentas recuperam, outras não. Se for crítico, modele compensação (rodar varredura de faltantes).
Checklist rápido para cron “confiável” em automações
Se o cron vai mexer com dinheiro, estoque, atendimento ou reputação, eu trato como mini-sistema. Este checklist evita 80% das dores:
- Defina explicitamente o timezone do agendamento e documente no workflow.
- Garanta idempotência (por exemplo: chave única por período/cliente/registro) para suportar retries.
- Controle concorrência: limite execuções simultâneas ou serialize por cliente/conta quando necessário.
- Monitore atrasos e falhas: alerta para “não rodou até X”, e não só para erro explícito.
- Crie “modo compensação”: um job que verifica itens pendentes de uma janela anterior e reprocessa de forma segura.
Perguntas frequentes
Cron é a mesma coisa que polling?
Qual a diferença entre cron de 5 campos e de 6 campos?
Se meu cron roda todo dia, como evito enviar a mesma mensagem duas vezes?
Cron serve para automação em tempo real?
Termos relacionados
Webhook ou polling em automações: como escolher (sem perder eventos e sem estourar limites)
Guia direto para decidir entre webhook e polling: latência, confiabilidade, custo por execução, rate limit e como evitar duplicidades. Inclui tabela e checklist prático.
Ler →
Timezone em automações (n8n, Make, Zapier): como parar de enviar mensagem no horário errado
Guia prático para corrigir fuso horário em automações: agenda, webhooks, APIs e bancos. Padrões (UTC), conversão, armazenamento e testes para n8n, Make e Zapier.
Ler →
Como fazer idempotência em automações com webhook (e parar de duplicar pedidos, notas e leads)
Guia direto para aplicar idempotência em automações com webhook: chaves idempotentes, deduplicação, banco/planilha, retries e boas práticas para n8n/Make/Zapier.
Ler →
Erro 429 (Rate Limit) em automações: como resolver sem travar o fluxo
Entenda o que causa o erro 429 (rate limit), como calcular limites, aplicar retry com backoff, filas e idempotência para automações com API que não quebram em pico.
Ler →