⏰ CronTool

Build, test, and understand cron expressions

* * * * *

Runs every minute

Quick:

Next 5 Executions

#1Tue, Jun 16, 2026, 06:42 AM
#2Tue, Jun 16, 2026, 06:43 AM
#3Tue, Jun 16, 2026, 06:44 AM
#4Tue, Jun 16, 2026, 06:45 AM
#5Tue, Jun 16, 2026, 06:46 AM

Understanding Cron Scheduling

Cron is the backbone of server automation, powering everything from database backups to email newsletters. An estimated 70% of Linux servers rely on cron for scheduled tasks. Yet a single misplaced asterisk can turn a "daily at midnight" job into "every minute" — flooding systems with unintended executions.

The five-field cron expression (minute, hour, day-of-month, month, day-of-week) supports wildcards (*), ranges (1-5), steps (*/15), and lists (1,3,5). The most common mistake is misunderstanding the interaction between day-of-month and day-of-week: when both are specified, cron runs when either matches, not both.

Cron Best Practices

  • Always test expressions in a sandbox before deploying to production servers
  • Avoid scheduling heavy jobs at round numbers (e.g. 0, 15, 30) — use random offsets to prevent thundering herds
  • Use MAILTO="" to suppress cron output emails when not needed
  • For complex schedules, consider systemd timers which offer calendar events and randomized delays