03 · triggers
Time-based runs — every N minutes or a cron expression.
When to use it
Anything that should run without a human or HTTP caller. Prefer intervals for probes; cron for calendar-aligned jobs.
Writeup
Time-based runs — every N minutes or a cron expression. Anything that should run without a human or HTTP caller. Prefer intervals for probes; cron for calendar-aligned jobs.
Step by step — how to wire it
01
Add Schedule Trigger
Pick Minutes interval or Custom/Cron expression.
02
Set timezone context
Confirm n8n Settings timezone so cron 0 9 * * * means the morning you intend.
03
Attach work nodes
HTTP Request, Code, Sheets, Slack — whatever the job does.
04
Dry-run then Activate
Execute once manually if possible, then Active and watch Executions.
How it functions
Interval mode
e.g. every 15 minutes via minutesInterval — simple uptime patterns.
Cron mode
e.g. 0 9 * * * for 09:00 daily. Fires in the n8n instance timezone.
Needs Active
Like Webhook, the schedule only fires when the workflow is Active.
Used for
Used for 1
Health pings and uptime checks
Used for 2
Daily digests and reports
Used for 3
Nightly syncs and cleanup jobs
Tips
Pair failing schedules with an Error Trigger workflow so #ops gets paged.
Don’t poll APIs every minute unless you need it — quotas add up.