Cron builder
Cron: every hour — 0 * * * *
The 0 pins the minute, the * opens every hour: one run per hour, exactly on the hour. The @hourly macro is shorthand for the same thing.
The classic mistake is writing * */1 * * * and expecting hourly — the minute field is still *, so it runs every minute of every hour. The minute field must be a fixed value for an hourly job. And since half the internet schedules at :00, consider 17 * * * * — same cadence, no top-of-hour stampede against your own database.
What this schedule does, field by field
| Field | Value | Meaning |
|---|---|---|
| Minute | 0 | at minute 0 exactly |
| Hour | * | every hour (0–23) |
| Day of month | * | every day |
| Month | * | every month |
| Day of week | * | every weekday |
0Minute*Hour*Day*Month*WeekdayEvery hour
Presetsclick to load — converted to the active dialect
Visual buildertwo-way synced with the expression above
Minute
0Hour
*Every value (*)
Day
*Every value (*)
Month
*Every value (*)
Weekday
*Every value (*)
Next 10 runsin
No upcoming runs — the schedule may be entirely in the past (e.g. a fixed year).
Field referenceStandard
| # | Field | Allowed values | Special characters |
|---|---|---|---|
| 1 | Minute | 0–59 | * , - / |
| 2 | Hour | 0–23 | * , - / |
| 3 | Day of month | 1–31 | * , - / |
| 4 | Month | 1–12 or JAN–DEC | * , - / |
| 5 | Day of week | 0–7 or SUN–SAT (0 and 7 = Sunday) | * , - / |
Macrosstandard crontab shortcuts — click to use
— Once an hour, at minute 0 (≡
0 * * * *) — Once a day, at 00:00 (≡
0 0 * * *) — Once a day, at 00:00 (≡
0 0 * * *) — Once a week, Sunday at 00:00 (≡
0 0 * * 0) — Once a month, on the 1st at 00:00 (≡
0 0 1 * *) — Once a year, on 1 January at 00:00 (≡
0 0 1 1 *) — Once a year, on 1 January at 00:00 (≡
0 0 1 1 *) — Once, at system startup — has no schedule, so next runs cannot be computed
Everything is computed on your device — nothing is uploaded.