automatizacion

Cómo programar workflows en n8n paso a paso

Aprende a configurar el nodo Schedule Trigger de n8n para que tus workflows se ejecuten solos: cada cierto tiempo, a una hora concreta o con expresiones cron.

18 de septiembre de 2026·10 min de lectura

En los tutoriales anteriores disparaste workflows a mano y con Webhooks. Ahora toca lo contrario: que el workflow se ejecute solo, según el reloj. Con el nodo Schedule Trigger n8n lanza el flujo automáticamente a la hora que configures. En este tutorial creas un workflow que se ejecuta cada poco tiempo para verlo en directo, y después aprendes a programar horas concretas y días determinados.

Qué significa programar un workflow

Programar un workflow es indicarle a n8n cuándo debe iniciarlo sin que nadie pulse un botón. El responsable es el nodo Schedule Trigger:

Hora/fecha → Schedule Trigger → workflow

Es el equivalente a un temporizador: n8n revisa la programación y, cuando llega el momento, ejecuta el workflow de principio a fin.

Requisitos previos

No necesitas APIs, credenciales ni servicios externos: el ejemplo es totalmente local.

Crear el workflow

Crea un workflow nuevo. Añade el Schedule Trigger como primer nodo del workflow: es el nombre actual del nodo de programación en n8n (si en algún sitio aparece el nombre antiguo, no lo uses). Si ya aparece un Manual Trigger en el lienzo, elimínalo para este ejemplo. El flujo debe quedar así:

Schedule Trigger → Edit Fields

Primera programación sencilla

Abre el nodo Schedule Trigger. Tiene el apartado Trigger Rules (reglas de disparo), cada una con su Trigger Interval.

Para verificar rápido que funciona, configura un Trigger Interval de tipo Minutes con Minutes Between Triggers a 1. El workflow se disparará cada minuto.

Esta frecuencia es solo para la prueba: un minuto genera 1.440 ejecuciones al día y no es una configuración pensada para producción. Lo cambiamos a valores razonables en las secciones siguientes.

Añadir una acción simple

Conecta un nodo Edit Fields al Schedule Trigger y haz que cree datos que permitan comprobar la ejecución. Añade estos campos:

Name Value
estado ejecutado
mensaje workflow programado
fecha {{ $now }}

El campo fecha usa la variable {{ $now }} de n8n, que captura el momento de la ejecución. Así, cada vez que corra el workflow sabrás exactamente cuándo ocurrió.

Probar el workflow

Puedes probar de dos formas, y conviene que las diferencies:

  • Desde el editor: usa Test step en el nodo o Execute Workflow para ejecutar el workflow entero. El Schedule Trigger se comporta como si hubiera llegado su momento y dispara una vez al instante. Revisa el output del Edit Fields: deberías ver estado, mensaje y la fecha rellena.

Lo que haces en el editor es solo una prueba: ejecutas un ciclo, no llegas a programar nada.

Activar el workflow

Aquí está el punto clave: la programación no se ejecuta hasta que el workflow está activo. Ejecutar desde el editor no equivale a tenerlo programado.

Para que el Schedule Trigger corra de verdad, publica el workflow poniéndolo activo con el interruptor Active del editor (en la documentación de n8n, publicar el workflow). Cuando está inactivo, las reglas de tiempo no se ejecutan; solo las pruebas manuales funcionan.

Además, ten en cuenta cómo arranca la cuenta atrás:

  • El calendario comienza desde el momento en que publicas el workflow, no desde que guardas la regla.
  • Si modificas el intervalo o el cron, el cambio solo se aplica cuando vuelves a publicar el workflow.

Deja el workflow activo un par de minutos y comprueba en la pestaña Executions cómo van apareciendo ejecuciones nuevas por sí solas. Eso sí: no verás los datos en el lienzo con las ejecuciones automáticas; se revisan en Executions.

Programar cada cierto tiempo

Con el disco ya en marcha, ajusta la frecuencia a valores sensatos. Las opciones reales del Trigger Interval son Seconds, Minutes, Hours, Days, Weeks, Months y Custom (Cron).

Frecuencia Configuración
Cada minuto Minutes → Minutes Between Triggers 1
Cada 5 min Minutes → Minutes Between Triggers 5
Cada hora Custom (Cron) → 0 * * * *
Cada día Custom (Cron) → 0 6 * * *

Las dos últimas son expresiones cron, que verás más abajo. Recuerda que, tras cada cambio, hay que volver a publicar el workflow para que aplique.

Programar a una hora concreta

Para que se ejecute siempre a la misma hora, usa el intervalo Custom (Cron). Por ejemplo, todos los días a las 09:00:

0 9 * * *

La regla cron se compone de minuto hora día del mes mes día de la semana. Con 0 9 * * * los dos primeros valores fijan las 09:00 y los asteriscos dicen “todos los días”.

Programar ciertos días

Con cron puedes acotar qué días de la semana. De lunes a viernes a las 09:00:

0 9 * * 1-5

El último campo indica el día de la semana, donde 1 es el lunes y 5 el viernes. Una vez por semana, por ejemplo los lunes a las 09:00:

0 9 * * 1

Estas expresiones son válidas en n8n: el intervalo Custom (Cron) espera exactamente esa sintaxis.

Zona horaria

La zona horaria domina por completo a qué hora física se ejecuta el workflow, y es la causa más común de sorpresas. El Schedule Trigger usa la timezone según este orden:

  1. La timezone del workflow, si la has configurado.
  2. Si no, la timezone de la instancia. En self-hosted el valor por defecto es America/New_York. En n8n Cloud se intenta detectar la del dueño de la instancia y, si no se puede, se usa GMT.

El detalle del default importa: si tu instancia self-hosted está por defecto en Nueva York y tú trabajas en otra zona, un “09:00” local sale a una hora distinta a la que esperas.

Para corregirla:

  • Por workflow: menú de tres puntos (esquina superior derecha del editor) → Settings → cambiar Timezone → Save.
  • Global en self-hosted: la variable de entorno GENERIC_TIMEZONE para toda la instancia.
  • En n8n Cloud: la zona se ajusta desde el panel de administración de la instancia.

Regla práctica: comprueba siempre la timezone efectiva antes de fiarte de una hora programada. Una zona mal configurada ejecuta el workflow en otro momento sin ningún error visible.

Expresiones cron

Una expresión cron es una forma compacta de describir un horario con 5 campos (y un sexto opcional en n8n para los segundos):

minuto  hora  día del mes  mes  día de la semana  [segundos]
0       9     *            *    1-5               (opcional)
  • 0 9 * * 1-5: de lunes a viernes a las 09:00.
  • */5 * * * *: cada 5 minutos (el campo de los minutos, con */5, significa “cada 5”).
  • 0 * * * *: en punto cada hora.

n8n recomienda generar estas expresiones con crontab.guru, que explica cada campo en lenguaje natural, y pegarlas en el Expression del nodo. No hace falta dominar cron al completo; con saber leer los ejemplos y validarlos ahí es suficiente.

Schedule Trigger vs Manual Trigger

  • Manual Trigger: el workflow solo se ejecuta cuando tú lo lanzas desde el editor. No hay programación posible.
  • Schedule Trigger: el workflow se ejecuta automáticamente según la regla de tiempo configurada, con el workflow activo.

Al mismo workflow con Manual Trigger lo usaste en tu primer workflow; aquí el disparador ha cambiado la iniciativa: ya no dependes de tu mano, sino del reloj.

Schedule Trigger vs Webhook

  • Schedule Trigger: n8n inicia el workflow según el tiempo. Ideal para tareas recurrentes (un resumen, una comprobación periódica).
  • Webhook: una llamada externa inicia el workflow. Ideal para reaccionar a eventos que ocurren en otro sistema.

La diferencia es quién toma la iniciativa. Ya sabes montar el caso del Webhook; la programación es el otro camino para arrancar flujos sin intervención manual.

Combinar Schedule Trigger con HTTP Request

Un patrón habitual es unir las dos ideas: que un workflow programado consulte una API periódicamente.

Schedule Trigger → HTTP Request → procesar respuesta

El Schedule Trigger marca la cadencia (por ejemplo, cada hora) y el nodo HTTP Request sale a buscar los datos de turno. No vamos a montar una API real aquí: basta con ver el patrón, que reutiliza exactamente los nodos que ya conoces.

Errores frecuentes

  • Workflow no activado: la programación no corre si el workflow no está publicada (Active desactivado).
  • Zona horaria incorrecta: el workflow se ejecuta a una hora distinta a la esperada porque usa la timezone de la instancia (por defecto en Nueva York) sin que lo sepas.
  • Frecuencia mal configurada: intervalos en el campo equivocado, o frecuencias que no hacen lo que crees (p. ej. minuto de más).
  • Cron incorrecto: la sintaxis no es válida para n8n. n8n muestra el error Invalid cron expression; valida tu expresión en crontab.guru.
  • Pensar que probar sustituye a la programación: ejecutar con Execute Workflow solo lanza un ciclo manual; la ejecución automática exige el workflow activo.
  • Cambiar la configuración y olvidar publicar: la regla modificada no se aplica hasta que vuelves a publicar el workflow, y el calendario se reinicia desde ese momento.

Frecuencia y uso responsable

Cuanto más corto sea el intervalo, más impacto tiene en lo que te rodea. Ejecutar un workflow cada pocos segundos puede:

  • Consumir recursos de la instancia (CPU, memoria, almacenamiento de ejecuciones).
  • Disparar muchas peticiones a APIs, con riesgo de rate limits (429).
  • Generar datos o logs innecesarios que ensucian Executions y las copias.

Por eso un intervalo de un minuto (o menor) es razonable solo para pruebas. En producción, usa la frecuencia más baja que cumpla el objetivo real.

Seguridad y fiabilidad

  • Si una ejecución falla, revisa la pestaña Executions del workflow y los logs del nodo para ver el motivo antes de reconfigurar.
  • No des por hecho que una programación funciona: comprueba periódicamente los resultados.
  • El Schedule Trigger depende del proceso de n8n. Si la instancia se reinicia o está caída, el comportamiento de las ejecuciones perdidas depende del scheduler utilizado y de su configuración: con el scheduler en memoria no se recuperan, y con el durable scheduler las versiones actuales de n8n permiten configurar qué hacer con ellas, incluyendo ejecutar posteriormente la más reciente.
  • En una instalación self-hosted, usa persistencia y backups para no quedarte sin los workflows ni su historial. Puedes empezar por cómo hacer backup de volúmenes Docker, que protege los datos de n8n en contenedores.

Qué aprender después

Con la programación ya puedes dejar flujos solos. Los siguientes temas con los que darles utilidad real:

  • Manejo de errores: reaccionar cuando una ejecución o una API fallan en vez de acumular errores en silencio.
  • APIs con autenticación: conectar n8n a servicios reales que piden credenciales.
  • Bases de datos: guardar y consultar información de forma persistente desde los workflows.
  • Automatizaciones reales: combinar schedule, webhooks y HTTP para resolver tareas concretas.
  • Ejecución de workflows encadenados: que un workflow lance otros, para separar responsabilidades.

Conclusión

Ya tienes workflows que se ejecutan solos: sabes configurar el Schedule Trigger con frecuencias por minuto, horas y días, fijar horas concretas y expresiones cron, entender la zona horaria que está aplicando, publicar el workflow para que la programación corra de verdad, y distinguir entre ejecución manual, programada y por webhook.

Con esto cierras el anillo de los disparadores de n8n: sabe arrancar a mano, reaccionar a llamadas externas y trabajar por su cuenta según el tiempo.