Cron expression explainer
Do not guess when scheduled jobs, integration flows and backups will run. Paste the expression; see a plain sentence, a field-by-field breakdown and the next 10 runs in the time zone you choose. The calculation never leaves your device.
Five fields: minute hour day-of-month month day-of-week, separated by spaces.
Examples
Next run times are calculated on the wall clock of this zone; cron uses the time zone of the machine it runs on, which on most cloud servers is UTC.
Syntax summary
- *
- every value
- 5
- only 5
- 1-5
- 1 through 5 (inclusive)
- */15
- every 15th (0, 15, 30, 45)
- 10-40/10
- 10 through 40 in steps of 10
- 1,15,30
- a list
- JAN-MAR, MON-FRI
- month and day names (case-insensitive)
- 0 and 7
- day of week: both are Sunday
- @daily
- shortcut: 0 0 * * *
The expression is parsed in your browser; no value is sent to a server.
Plain-language description
At 09:00, on Monday through Friday
Next run times
Calculating…
Times that fall into the hour skipped by a daylight saving change are not listed, and for a repeated hour the first pass is used; cron implementations may behave differently. Scheduling critical jobs in UTC is the safest choice.
Field-by-field breakdown
Minute 0
0
Allowed: 0–59
Hour 9
9
Allowed: 0–23
Day of month *
all
Allowed: 1–31
Month *
all
Allowed: 1–12
Day of week 1-5
1, 2, 3, 4, 5
Allowed: 0–7
This tool explains the standard (Vixie/cronie) 5-field syntax. Quartz, Spring, AWS EventBridge, Kubernetes CronJob and some CI systems use a different or extended syntax (seconds field, ?, L, W, #). Check the documentation and time zone of your own system; results are illustrative.
Would you like to review the reliability of your scheduled integrations (data sync, backups, reports) together? We can sort out overlapping jobs, time zone and retry risks.
Request a call01
How to use it
A
Paste your cron expression into the box or pick an example; it is parsed as you type.
B
Read the sentence in the language of the page and the field expansion as a table; if there is an error it names the field.
C
Choose the time zone and check that the next 10 run times are what you expect; copy the description and share it with your team.
02
How to read a cron expression
A standard cron expression has five fields: minute (0–59), hour (0–23), day of month (1–31), month (1–12 or JAN–DEC) and day of week (0–7 or SUN–SAT; 0 and 7 are Sunday). Each field can be *, a single value, a range (1-5), a list (1,15) or a step (*/15, 10-40/10).
For example 0 9 * * 1-5 means 'at 09:00 every weekday' and */15 * * * * means 'every 15 minutes'. A step counts from the start of the field: */7 in the minute field runs at 0, 7, 14 … 56 and restarts at the top of the hour, so the run after minute 56 is minute 0 of the next hour, not minute 60.
03
Why are day of month and day of week combined with OR?
When neither day field starts with *, classic cron (Vixie/cronie) combines the two with OR: 0 0 13 * 5 does not mean 'the 13th when it is a Friday' but 'on the 13th or on any Friday'. If one of them starts with * (e.g. */2), the two conditions are combined with AND.
This tool follows Vixie behaviour and shows a warning when both fields are restricted. Some systems (e.g. Quartz) require ? in one of these fields; that syntax is not supported here.
04
Time zone and daylight saving
A cron expression carries no time zone: the job is scheduled in the time zone of the system it runs on. In many cloud and container environments that is UTC; on desktops and older servers it is local time. Kubernetes CronJob and some schedulers let you state the zone separately.
In zones with daylight saving, a time that falls into the hour skipped in spring (e.g. 02:30) does not happen that day, and the hour repeated in autumn happens twice. The tool does not list skipped times and uses the first pass of a repeated hour; your real scheduler may behave differently.
FAQ
- My expression works here but not in my system. Why?
- The most likely cause is a syntax difference. Quartz and Spring use six or seven fields (seconds, year), AWS EventBridge wants a year field and ?, and some systems support characters such as L, W and #. This tool only parses standard 5-field cron.
- What do 0 and 7 mean in the day of week?
- Both are Sunday. Many cron implementations accept both 0 and 7; the tool treats 7 as 0. Monday is 1 and Saturday is 6. Three-letter names such as SUN, MON, TUE are accepted too.
- Does */n always give a regular interval?
- Only if n divides the range of the field evenly. */15 is regular in the minute field (0, 15, 30, 45). */7 gives 0, 7, … 56 and after 56 restarts 4 minutes later at minute 0 of the next hour. The same applies to the hour and day-of-month fields.
- What happens on day 31 in months with 30 days?
- The job does not run because that month has no day 31, and it raises no error. There is no single standard cron expression for the last day of every month; the usual workaround is to run daily and check inside the command whether tomorrow is the 1st.
- Is my expression sent to a server?
- No. Parsing and the time zone calculation run in your browser; the expression and time zone are neither sent anywhere nor stored.
Let's make your scheduled integrations reliable
We design, monitor and harden scheduled data flows between ERP, CRM and third-party systems. Let's talk through your current flow in a free discovery call.