Cron example · Monthly and yearly

Every quarter in cron

Runs at 00:00 on 1 January, 1 April, 1 July and 1 October.

0 0 1 */3 * Open in the generator

Months run 1–12, so */3 counts from 1 and selects 1, 4, 7 and 10: the first month of each calendar quarter. 0 0 1 1,4,7,10 * is the same schedule spelled out.

For fiscal quarters that start in a different month, use a list: a fiscal year starting in April is 0 0 1 4,7,10,1 *.

Field by field

ValueFieldMeaning
0Minute
0–59
at minute 0
0Hour
0–23
at 00:00
1Day of month
1–31
on day 1
*/3Month
1–12 or JAN–DEC
every 3 months
*Day of week
0–7 or SUN–SAT (0 and 7 are Sunday)
every day of the week

Next run times

Computed in your browser from the current time, so you can check the schedule against a clock you trust.

Your timezone (local)

  1. Needs JavaScript.

UTC (GitHub Actions, Kubernetes default)

    Variations

    • 0 0 1 1,4,7,10 *the same as an explicit list · try it
    • 0 0 1 */6 *twice a year, 1 January and 1 July · try it
    • 0 0 1 1 *once a year · see page

    Where this expression works

    • Linux and macOS crontab: as written; times follow the system timezone.
    • Kubernetes CronJob: the same five fields; UTC unless spec.timeZone is set.
    • GitHub Actions: the same syntax in UTC, minimum interval five minutes, no @ shortcuts.
    • AWS EventBridge: a different six-field syntax; do not paste this expression unchanged.

    Full platform comparison · Cron tutorial

    FAQ

    Why does */3 in the month field start at January, not March?

    Steps count from the field minimum, which is 1 for months. 1, 4, 7, 10 are the months selected.