Uber Tools

Cron Expression Explainer

Read a cron schedule in plain words, see each field and the next times it runs

“At 09:00, on Monday through Friday”

Every minute
Every 15 minutes
Every hour
Every day at midnight
Weekdays at 9:00
Every Sunday
First of the month
Last Friday of the month
Every 30 seconds

Fields

Five fields

0

Minute

0

0–59

9

Hour

9

0–23

*

Day of month

every day of month

1–31, L, ?

*

Month

every month

1–12, JAN–DEC

1-5

Day of week

Monday through Friday

0–7 (0 and 7 Sunday), SUN–SAT, 5L, 5#3, ?

Next runs

In your time zone, America/Vancouver

  1. Mon, Oct 19, 2026, 09:00in 11 hours
  2. Tue, Oct 20, 2026, 09:00in 1 day
  3. Wed, Oct 21, 2026, 09:00in 2 days
  4. Thu, Oct 22, 2026, 09:00in 3 days
  5. Fri, Oct 23, 2026, 09:00in 4 days
  6. Mon, Oct 26, 2026, 09:00in 7 days
  7. Tue, Oct 27, 2026, 09:00in 8 days
  8. Wed, Oct 28, 2026, 09:00in 9 days
  9. Thu, Oct 29, 2026, 09:00in 10 days
  10. Fri, Oct 30, 2026, 09:00in 11 days

How to read a cron expression

  1. Type a cron expression, or pick a common one: every 15 minutes, weekdays at 9:00, the last Friday of the month…
  2. Read it in plain words, e.g. At 09:00, Monday through Friday.
  3. See each field taken apart with its allowed values.
  4. Check the next times it runs, in your time zone or in UTC.

Questions

What do the five fields mean?

Minute, hour, day of the month, month and day of the week. A sixth field before them, as in Quartz and Spring, is seconds.

What does */15 mean?

Every 15 steps: */15 in the minute field runs at 0, 15, 30 and 45. Ranges (9-17) and lists (1,15) work too.

Does it support L, # and ?

Yes: L is the last day of the month, 5L the last Friday, 5#3 the third Friday, ? any day; and macros such as @daily and @hourly.

Why does my job run on more days than expected?

As in cron, when both a day of the month and a day of the week are given, a day matching either runs the job.

Related tools