Free tools · no login

◷ Cron expression explainer

A cron expression has five fields: minute, hour, day-of-month, month and day-of-week. For example, */5 * * * * means every 5 minutes, and 0 9 * * 1-5 means at 09:00, Monday through Friday. Paste any expression here to get its plain-English meaning and next 10 run times in any timezone.

Paste a 5-field cron expression. Get what it means in plain English, when it runs next, and what could go wrong. Nothing is sent anywhere; it runs on our server in a few milliseconds.

Try: */5 * * * * (every 5 minutes) · 0 9 * * 1-5 (weekdays 09:00) · 0 0 1 * * (monthly) · 30 2 * * 0 (Sundays 02:30) · 0 9 1-7 * 1 (the OR trap) · @daily (macro)

The five fields

minute hour day-of-month month day-of-week. Each takes a number, * (any), a list 1,15, a range 9-17 or a step */10. Months and weekdays also accept names like JAN or MON.

What we check

Out-of-range values, backwards ranges, zero steps, 6-field (seconds) and Quartz syntax, dates that never exist, uneven steps, the day-of-month/day-of-week OR rule, and DST shifts in the run list.

How Vigil can watch this for you

Know the moment a cron job doesn't run

Paste the same expression into a Vigil heartbeat. Vigil works out when each run is due in your timezone, waits the grace period, then alerts you if the ping never came, if the job reported a failure, or if it started and never finished.

Monitor a cron job free
Free plan, no card. Alerts on email, Telegram, Slack, Discord, Teams or any webhook.
More free tools: