Cron expression for every 2 hours

The cron expression to run a job every 2 hours is 0 */2 * * *. Preview upcoming executions in any timezone and copy it straight into your scheduler.

0minute
*/2hour
*day
*month
*weekday

In Plain English

What your cron expression actually means.

On the hour, every 2 hours, every day

Upcoming Executions

Preview the next 50 times this schedule will trigger.

Calculating…

About 0 */2 * * *

0 */2 * * * fires at minute 0 of every 2 hours, starting at midnight. Since 2 divides 24 evenly, every gap in the day is the same length.

Cron reads the five fields as minute hour day month weekday. For this schedule that breaks down as:

FieldPositionMatches
0minute0
*/2hour0, 2, 4, 6, 8, 10, … 22 (12 values)
*day of monthevery day
*monthevery month
*day of weekevery day of the week

New to cron? Read the syntax reference or the FAQ.

Use it in crontab or GitHub Actions

Both snippets are ready to paste. A crontab runs in the server's local timezone; GitHub Actions always evaluates schedules in UTC. For Kubernetes, AWS EventBridge, or Vercel, use the export menu in the calculator above.

crontab

# On the hour, every 2 hours, every day
0 */2 * * * /path/to/command

GitHub Actions workflow

# On the hour, every 2 hours, every day
# Note: GitHub Actions always runs schedules in UTC.
on:
  schedule:
    - cron: '0 */2 * * *'

Repeating intervals

Build a custom cron expression →