Cron Expression Explainer

Paste a cron expression to read it in plain English and see exactly when it will run next, in your time zone or UTC.

🔒 Runs entirely on your device. Nothing you paste or pick is uploaded.

Try:

Next runs in

    How to read a cron expression

    A cron expression has five fields separated by spaces: minute (0–59), hour (0–23), day of the month (1–31), month (1–12 or JAN–DEC) and day of the week (0–6 or SUN–SAT, where 7 is also Sunday). A schedule runs whenever the current time matches every field.

    • * means every value: * * * * * runs every minute.
    • a-b is a range: 9-17 in the hour field is 09:00 to 17:59.
    • a,b,c is a list: 1,15 in the day field runs on the 1st and the 15th.
    • */n is a step: */15 in the minute field runs at :00, :15, :30 and :45.
    • Shortcuts: @hourly, @daily, @weekly, @monthly and @yearly.

    Why does my job run on the wrong days?

    When you restrict both the day of the month and the day of the week, classic cron runs the job when either one matches. 0 12 1 * 5 runs at noon on the 1st of every month and on every Friday, not only on Fridays that fall on the 1st. The next-runs list above follows that rule, so you can check.

    Which time zone does cron use?

    Cron uses the time zone of the server it runs on, which is often UTC. GitHub Actions schedules always run in UTC. Switch the list to UTC to see what a server will do.

    Does it support seconds?

    This tool reads the standard five-field format used by crontab, GitHub Actions, Kubernetes CronJobs and most hosting platforms. Six-field formats with seconds (Quartz, some Node libraries) are not supported.

    More free tools