Skip to content
SnapTools

Cron Expression Generator

Runs in your browser

Explain any cron schedule in plain English and see exactly when it will next run. Validated in your browser as you type.

minutehourdaymonthweekday

At 09:00 on Monday, Tuesday, Wednesday, Thursday and Friday.

Next runs (your local time)

  • Fri Aug 21 2026 09:00:00
  • Mon Aug 24 2026 09:00:00
  • Tue Aug 25 2026 09:00:00
  • Wed Aug 26 2026 09:00:00
  • Thu Aug 27 2026 09:00:00
  • Fri Aug 28 2026 09:00:00

About this tool

Cron syntax is five fields of terse numbers, and almost nobody reads it correctly at a glance. Worse, the two day fields interact in a way that catches out even experienced engineers: when both day-of-month and day-of-week are restricted, cron runs when *either* matches, not both. This tool parses the expression, describes it in English, and — more usefully — shows the actual next run times, which is the fastest way to confirm a schedule does what you meant.

How to use

  1. Type a cron expression, or start from one of the presets.
  2. Read the plain-English description to confirm the intent.
  3. Check the next run times — they are the real proof the schedule is right.

When to use this tool

  • Checking a crontab line before deploying it.
  • Working out what an inherited schedule actually does.
  • Building a schedule for a CI job, backup or newsletter.
  • Diagnosing why a job ran more or less often than expected.

Tips

  • The five fields are minute, hour, day-of-month, month, day-of-week.
  • */15 means every 15 units, not '15 minutes past'. For a single time use a plain number.
  • Day-of-week accepts 0 or 7 for Sunday, and names like mon or fri.

Limitations

  • Handles the standard 5-field syntax. Quartz-style seconds and year fields, and extensions such as L, W and #, are not supported.
  • Next run times are computed in your browser's local timezone; a server running UTC will differ.

FAQ

What timezone are the next run times in?
Your browser's local timezone. Most servers run cron in UTC or the system timezone, so verify which one your scheduler uses before trusting the times.
Why does '0 0 1 * 1' run more often than I expect?
Because when both day-of-month and day-of-week are restricted, cron ORs them: it runs on the 1st of the month AND on every Monday. To require both, you generally need a guard inside the job itself.
Does it support seconds or the L and W characters?
No. This handles the standard 5-field Vixie cron syntax. Quartz-style seconds and year fields, and extensions such as L, W and #, are not supported.