Cron Expression Generator & Explainer
Build a crontab schedule with clicks or paste an existing one. You get a plain-English explanation, field-level validation and the next 10 run times in your time zone.
Runs in your browserNo sign-upNothing uploaded
Visual builder
Next 10 runs
How to use the Cron Expression Generator
- Type a cron expression such as
*/15 * * * *, or click a preset. - Read the plain-English description to confirm it does what you expect. Invalid fields are highlighted with the reason.
- Use the Visual builder tabs to set minute, hour, day of month, month and day of week with Every, Every N, Specific or Range.
- Check the next 10 run times, and pick the server’s time zone if it differs from yours.
- Copy the expression into your crontab, Kubernetes CronJob, GitHub Actions
scheduleor CI config.
Cron syntax in one minute
A standard cron expression has five fields separated by spaces:
┌───────────── minute (0-59)
│ ┌─────────── hour (0-23)
│ │ ┌───────── day of month (1-31)
│ │ │ ┌─────── month (1-12 or JAN-DEC)
│ │ │ │ ┌───── day of week (0-7 or SUN-SAT, 0 and 7 are Sunday)
│ │ │ │ │
* * * * * command
| Symbol | Meaning | Example |
|---|---|---|
* | every value | * * * * * every minute |
, | list | 0 9,17 * * * at 09:00 and 17:00 |
- | range | 0 9 * * 1-5 weekdays at 09:00 |
/ | step | */10 * * * * every 10 minutes |
@daily | macro | same as 0 0 * * *; also @hourly, @weekly, @monthly, @yearly, @reboot |
The day-of-month / day-of-week trap
When both day fields are restricted (neither starts with *), cron runs when either matches. 0 0 13 * 5 therefore runs on every 13th and every Friday, not only on Friday the 13th. This generator follows that Vixie cron rule, and the description says “or” so you notice it.
Time zones and daylight saving
Cron uses the server’s local time zone unless configured otherwise (CRON_TZ= in some crons, timeZone in Kubernetes CronJobs; GitHub Actions always uses UTC). Pick that zone in the run preview. Jobs scheduled inside a daylight-saving gap (for example 02:30 on the spring-forward night) are skipped in the preview, because that local time never occurs.
Common schedules
*/5 * * * *: every 5 minutes0 */2 * * *: every 2 hours, on the hour0 9 * * 1-5: 09:00 on weekdays0 0 1 * *: midnight on the first day of each month0 3 * * 0: 03:00 every Sunday, a typical backup window
Frequently asked questions
How do I run a cron job every 5 minutes?
*/5 * * * *. The step /5 on the minute field means every 5th minute starting at 0: 00, 05, 10 and so on.Does cron support seconds?
Is Sunday 0 or 7?
SUN or MON-FRI.Why does my job run on more days than expected?
* to require only the other.