crontool
Paste a schedule, read it in English, see the next runs.

Cron Expression: Every Hour

The expression is 0 * * * *. Paste it above to read it in English and see the next five run times locally. Below: why the leading 0 matters and how to shift the minute.

The expression

0 * * * * runs a job once an hour, at the top of the hour — 00:00, 01:00, 02:00 and so on.

Field by field

0 in the minute field pins it to minute zero. The * in the hour field means every hour, and the last three * mean every day, month and weekday.

The most common mistake

Writing * * * * * instead of 0 * * * *. The all-stars version runs every minute — 60 times an hour, not once. The leading 0 is what makes it hourly.

Common variations

Every hour at half past: 30 * * * *. Every 2 hours: 0 */2 * * *. Once an hour during the workday: 0 9-17 * * *.

FAQ

What is the cron expression for every hour?

0 * * * * — the 0 pins it to minute zero and the * in the hour field lets it run every hour.

How do I run at the bottom of every hour instead?

Use 30 * * * * to fire at minute 30 of each hour.

Is @hourly the same as 0 * * * *?

Yes. Many cron implementations accept the shortcut @hourly, which expands to exactly 0 * * * *.