>_

Cron expression for every quarter

To run a job every quarter, use the cron expression below. It means: At 00:00, on day 1 of the month, every 3 months.

0 0 1 */3 * At 00:00, on day 1 of the month, every 3 months

Field by field

Field Value Meaning
Minute 0 exactly 0
Hour 0 exactly 0
Day of month 1 exactly 1
Month */3 every 3
Day of week * any

Try it

minutehourday (month)monthday (week)

Presets

Next runs (your local time)

    Syntax on different platforms

    Linux crontab

    # crontab -e
    0 0 1 */3 * /path/to/script.sh >> /var/log/job.log 2>&1

    GitHub Actions

    on:
      schedule:
        - cron: '0 0 1 */3 *'  # UTC

    Kubernetes CronJob

    apiVersion: batch/v1
    kind: CronJob
    metadata:
      name: my-job
    spec:
      schedule: "0 0 1 */3 *"
      timeZone: "America/New_York"
      jobTemplate:
        spec:
          template:
            spec:
              containers:
                - name: job
                  image: busybox
                  command: ["date"]
              restartPolicy: OnFailure

    Spring @Scheduled

    // Spring has an extra seconds field first
    @Scheduled(cron = "0 0 0 1 */3 *")
    public void run() { /* ... */ }

    Note: cron runs in the time zone of the machine or platform. Servers and GitHub Actions usually use UTC; Kubernetes lets you set timeZone.

    More examples

    Open the full Cron Expression Parser →