cronuru
Pattern

Every Tuesday

0 0 * * 2
0 0 0 ? * TUE
0 0 * * 2
0 0 ? * TUE *
0 0 0 * * TUE
0 0 * * 2

Runs at 00:00 every Tuesday — 1 invocation per week, on Unix day-of-week 2 (Tuesday).

Use in your stack

# Every Tuesday at midnight
0 0 * * 2 /usr/local/bin/weekly-job.sh

# Or with name form
0 0 * * TUE /usr/local/bin/weekly-job.sh
{ "cron": "0 0 0 ? * TUE", "timezone": "UTC" }
apiVersion: batch/v1
kind: CronJob
metadata:
  name: tuesday-job
spec:
  schedule: "0 0 * * 2"
  timeZone: "UTC"
  jobTemplate:
    spec:
      template:
        spec:
          containers:
          - name: job
            image: my-image:latest
          restartPolicy: OnFailure
cron(0 0 ? * TUE *)
@Scheduled(cron = "0 0 0 * * TUE")
public void everyTuesday() { /* ... */ }
on:
  schedule:
    - cron: '0 0 * * 2'

Next runs

Pick a timezone to see when this expression fires next.

Next 10 runs
  1. 012026-07-07T00:00:00.000Z
  2. 022026-07-14T00:00:00.000Z
  3. 032026-07-21T00:00:00.000Z
  4. 042026-07-28T00:00:00.000Z
  5. 052026-08-04T00:00:00.000Z
  6. 062026-08-11T00:00:00.000Z
  7. 072026-08-18T00:00:00.000Z
  8. 082026-08-25T00:00:00.000Z
  9. 092026-09-01T00:00:00.000Z
  10. 102026-09-08T00:00:00.000Z

Variations

0 0 * * 1

Every Monday

0 0 * * 3

Every Wednesday

0 0 * * 4

Every Thursday

0 0 * * 5

Every Friday

Common use cases

  • Mid-week status reports or digests.
  • Weekly recurring jobs scheduled away from Monday's load.
  • Tuesday release or deployment automation.
  • Pulling weekly data on a non-Monday cadence.

Gotchas

  • Day-of-week numbering: Unix uses Tuesday = 2 (Sun=0). Quartz uses Tuesday = 3 (Sun=1). Use name form (`TUE`) to avoid the off-by-one.
  • AWS EventBridge: `0 0 ? * TUE *` — uses `?` for day-of-month, name form recommended.
  • Pin the timezone so "midnight Tuesday" fires when you intend.

0 0 * * 2 is the Tuesday weekly schedule. Pair the name form TUE with an explicit timezone for an unambiguous “once a week on Tuesday” cron that ports cleanly across schedulers.

Frequently asked questions

What does `0 0 * * 2` mean?
Minute `0`, hour `0` (midnight), day-of-month `*` (any), month `*` (any), day-of-week `2` (Tuesday in Unix where Sun=0). So the job fires at midnight every Tuesday — one invocation per week.
Why is Tuesday `2` in Unix but `3` in Quartz?
Different day-numbering conventions. Unix cron numbers days 0–6 with Sunday at 0 (so Tuesday is 2). Quartz numbers days 1–7 with Sunday at 1 (so Tuesday is 3). Use the name form `TUE` to avoid the mismatch — names work the same way in every dialect.
How do I run on Tuesday at a specific time instead of midnight?
Change the hour (and minute) fields. `0 9 * * 2` runs at 9 AM every Tuesday, `30 14 * * TUE` at 2:30 PM. Combine with a timezone pin so the wall-clock time means what you expect.

Browse all cron patterns

Every schedule Cronuru documents, with its expression and code snippets for six dialects.