Run a Cron Job Every Monday
Day-of-week 1 is Monday, so 0 9 * * 1 fires once a week, Mondays at 09:00 — the natural slot for weekly reports, sprint kickoff reminders, and Monday-morning digests. Change the trailing number to move the day: 3 for Wednesday, 5 for Friday.
0 9 * * 1In plain English: At 09:00, on Monday.
Field by field
| Field | Value | Meaning |
|---|---|---|
| Minute | 0 | 0 |
| Hour | 9 | 9 |
| Day of month | * | every day |
| Month | * | every month |
| Day of week | 1 | Monday |
Variations
0 9 * * MONthe same schedule with a day name0 0 * * 1Mondays at midnight0 9 * * 1,4twice weekly — Mondays and Thursdays at 09:00Tweak any of these in the crontab explainer to see the schedule in plain English and its next run times.
Frequently asked questions
How do I run a job every other Monday?
Standard cron can't express fortnightly schedules — day-of-week has no 'every second' concept. Run every Monday and have the job check the week number (e.g. exit early when the ISO week is odd).
Can I use names instead of numbers?
Most cron implementations accept three-letter names (MON, TUE …) in the day-of-week field, and JAN–DEC in the month field. Names are more readable and dodge the Sunday 0-or-7 question.
New to cron syntax? Read Cron Expressions Explained, Field by Field.