n8n Programar Tareas con Cron: Schedule Trigger Completo

N8n programar tareas cron es uno de los usos más prácticos de n8n. El Schedule Trigger de n8n (también conocido como Cron en n8n) permite ejecutar workflows automáticamente a la hora exacta que necesitas: cada hora, cada día a las 9:00, cada lunes, el primer día del mes, o en cualquier combinación imaginable. En esta guía aprenderás a dominarlo completamente.

¿Qué es el Schedule Trigger de n8n?

El Schedule Trigger es el nodo de n8n que inicia un workflow en momentos específicos sin necesidad de ningún input externo. Es el equivalente a un cron job de Linux pero con interfaz visual y sin necesidad de acceder al servidor.

Lo usas cuando quieres:

  • Enviar reportes cada lunes a las 8:00
  • Limpiar datos antiguos cada noche a las 2:00
  • Sincronizar sistemas cada hora
  • Enviar recordatorios en fechas específicas

Configuración del Schedule Trigger

Modo simple (sin cron)

Para la mayoría de casos puedes usar los modos predefinidos:

Modo Intervalo Ejemplo de uso
Every Minute Cada minuto Monitorización en tiempo real
Every Hour Cada X horas Sincronización frecuente
Every Day Cada día a X hora Reportes diarios, backups
Every Week Días y hora específicos Informes semanales
Every Month Día del mes y hora Facturación mensual

Ejemplo: Todos los días laborables a las 9:00

  • Mode: Every Week
  • Days: Monday, Tuesday, Wednesday, Thursday, Friday
  • Hour: 9
  • Minute: 0

Modo cron (expresión avanzada)

Para máxima flexibilidad, usa expresiones cron directamente. El formato es:

MINUTO HORA DÍA-MES MES DÍA-SEMANA
Expresión cron Significado
0 9 * * 1-5 9:00 de lunes a viernes
0 */2 * * * Cada 2 horas
30 8 * * 1 8:30 todos los lunes
0 0 1 * * Medianoche del primer día del mes
0 8,12,18 * * * A las 8:00, 12:00 y 18:00 todos los días
*/15 * * * * Cada 15 minutos
0 9 15 * * El día 15 de cada mes a las 9:00

Zona horaria del Schedule Trigger

Importante: El Schedule Trigger usa la zona horaria configurada en n8n. Para España, asegúrate de tener:

GENERIC_TIMEZONE=Europe/Madrid

Para LATAM:

GENERIC_TIMEZONE=America/Mexico_City    # México
GENERIC_TIMEZONE=America/Bogota         # Colombia
GENERIC_TIMEZONE=America/Buenos_Aires   # Argentina
GENERIC_TIMEZONE=America/Santiago       # Chile

Sin esto, los horarios pueden estar desfasados 1-2 horas según el horario de verano.

Casos de uso comunes

Reporte diario de ventas

Cron: 0 7 * * 1-5 (7:00, lunes a viernes)
  → Google Sheets — leer datos del día anterior
  → Code — calcular métricas
  → Gmail — enviar resumen al equipo

Backup nocturno de base de datos

Cron: 0 2 * * * (2:00 cada noche)
  → MySQL — pg_dump o export
  → Google Drive — subir backup
  → Eliminar backups de más de 30 días

Sincronización cada hora

Cron: 0 * * * * (cada hora en punto)
  → Shopify — obtener pedidos nuevos
  → ERP — sincronizar pedidos
  → Log — registrar sincronización

Recordatorio de tareas pendientes

Cron: 0 9 * * 1 (lunes 9:00)
  → Asana/Trello/Notion — obtener tareas sin completar esta semana
  → Slack — enviar recordatorio al equipo

Limpieza de datos

Cron: 0 3 * * 0 (domingo 3:00)
  → MySQL — eliminar registros de más de 90 días
  → Google Sheets — archivar filas antiguas
  → Log — registrar cuántos registros se eliminaron

Múltiples Schedules en el mismo workflow

Puedes tener varios Schedule Triggers en el mismo workflow si necesitas que se ejecute en diferentes horarios con distinto comportamiento:

  1. Añade un segundo Schedule Trigger
  2. Conéctalos al mismo nodo siguiente con el nodo Merge (en modo "Pass-Through")
  3. Usa un nodo Switch para diferenciar el comportamiento según cuál trigger se activó

Alternativa más limpia: crea workflows separados para cada schedule.

Evitar ejecuciones duplicadas

Si un workflow tarda más de el intervalo del schedule (ej: un workflow de 5 minutos con schedule de cada 2 minutos), n8n por defecto esperará a que termine la ejecución anterior antes de iniciar la siguiente.

Para verificar que no hay ejecuciones bloqueadas:

# En n8n, ve a Executions y filtra por "Running"
# Cancela manualmente las ejecuciones atascadas si es necesario

Depurar el Schedule Trigger

El Schedule Trigger no se puede "ejecutar manualmente" desde el editor. Para probar el workflow:

  1. Temporalmente, cambia el trigger a Manual Trigger
  2. Prueba el workflow completo
  3. Vuelve a cambiar a Schedule Trigger cuando esté listo

O añade un Manual Trigger adicional durante el desarrollo que apunte al mismo flujo.

Comparativa: Schedule Trigger vs Webhook vs Polling

Trigger Cuándo usarlo
Schedule (cron) Tareas que deben ejecutarse a hora fija
Webhook Reaccionar a eventos en tiempo real
Polling (en nodo) Cuando el sistema externo no tiene webhooks

Para sincronizaciones, el polling con Schedule es la alternativa cuando la API no tiene webhooks.

Conclusión

El Schedule Trigger de n8n es la base de todas las automatizaciones programadas. Dominar las expresiones cron y configurar correctamente la zona horaria te permite ejecutar cualquier tarea de forma exacta y confiable. Combínalo con los demás nodos de n8n para crear reportes, backups, sincronizaciones y recordatorios completamente automáticos.