Skip to content
cronhelp.me
Preset

Cron expression for every hour

0 * * * *
Cron expression5-field
Every hour
Lint
OKNo issues found — this expression is well-formed.
Next runs
#
1
2
3
4
5
6
7
Copy as

What it does

The expression 0 * * * * runs a job once an hour, at the top of every hour — 00:00, 01:00, 02:00 and so on, 24 times a day. The minute field is fixed at 0 and every other field is *, so it fires at minute zero of every hour, every day.

This is the canonical hourly schedule and is equivalent to the @hourly shortcut. It suits log rotation, cache warming, hourly rollups, and anything that should run at a predictable clock minute rather than "sometime each hour".

Fixing the minute matters: a common mistake is writing * * * * * and expecting hourly behaviour — that runs every minute instead. Keep the 0 in the first field. To run at a different minute past the hour, change it: 30 * * * * fires at half past every hour.

Related presets

FAQ

Is 0 * * * * the same as @hourly?
Yes. @hourly expands to 0 * * * * on systems that support the shortcut. The explicit form is more portable.
Why not * * * * * for hourly?
* * * * * runs every minute — 1,440 times a day. Fixing the minute to 0 is what makes it hourly.
How do I run every hour at 15 past?
Set the minute field: 15 * * * * runs at :15 of every hour.