/

Cron: Every Wednesday

0 0 * * 3 fires once a week, every Wednesday at midnight — day-of-week 3 in standard cron numbering. Sitting at the midpoint of the work week, Wednesday is a common choice for mid-week check-ins, status reports, and jobs that shouldn't be tied to either the start or end of the week.

Examples & Variations

0 0 * * 3

Every Wednesday at midnight

Try it

0 12 * * 3

Every Wednesday at noon

Try it

0 9 * * 1,3,5

Monday, Wednesday, and Friday

Try it

Common Mistakes

  • Using Wednesday as a default without a specific reason — if the job's timing genuinely doesn't matter, that's worth documenting so a future engineer doesn't assume it's load-bearing.
  • Running a mid-week report before the data it depends on has been fully processed by earlier jobs in the pipeline.
  • Forgetting daylight saving transitions can occasionally shift a Wednesday-midnight job by an hour if the server runs in local time.

Best Practices

  • For three-times-a-week schedules, Monday/Wednesday/Friday (0 0 * * 1,3,5) gives even spacing across the work week.
  • Sequence dependent jobs with enough buffer — if a Wednesday report depends on a Tuesday night batch job, don't schedule them back-to-back with zero margin.
  • Keep the day-of-week choice documented in code comments or job descriptions, especially if it was chosen to avoid a specific known conflict.

Frequently Asked Questions

What number represents Wednesday in cron's day-of-week field?
3. Standard cron numbers days 0 (Sunday) through 6 (Saturday), making Wednesday the 4th day at index 3.
How do I run something every Wednesday at multiple times?
List multiple hours: 0 9,15 * * 3 runs at both 9 AM and 3 PM every Wednesday.
Is there a nickname for 'every Wednesday' like @weekly?
No — standard cron nicknames (@daily, @weekly, @monthly, etc.) don't include specific weekday variants. @weekly always means midnight Sunday; any other day needs the explicit 0 0 * * N form.