ð Standard Cron Syntax
Schedule recurring tasks with the cron expressions you already know, from seconds through weekdays, ranges, steps, lists, and month/day names.
One line to your first scheduled task, with room to grow into timezones, background processes, events, and observability.

These docs cover node-cron v4.
node-cron is designed to grow with you. The same schedule call you write on day one is the one you keep; you just add options as your needs grow.
import cron from 'node-cron';
// Day one: run something every minute.
cron.schedule('* * * * *', () => {
console.log('Hello from node-cron');
});Later, the same task can run in a specific timezone, skip overlapping runs, report failures, and run in its own process, all without changing how you think about it:
import cron from 'node-cron';
const task = cron.schedule('0 3 * * *', './tasks/nightly-backup.js', {
name: 'nightly-backup',
timezone: 'America/Sao_Paulo',
noOverlap: true,
});
task.on('execution:failed', (ctx) => {
console.error('backup failed:', ctx.execution?.error);
});Follow the journey in order, or jump straight to what you need:
Need more than cron?
ð Check out Sidequest.js, a distributed job runner for Node.js inspired by Oban and Sidekiq.