Cron expression for every Monday at 9am
At 9:00 AM, only on Monday
0
minute
9
hour
*
day (month)
*
month
1
day (week)
At 9:00 AM, only on Monday
Try this expression in the interactive tool:
Open in cron explainer →Next 10 scheduled runs
#1Mon, 20 Apr 2026, 09:00
#2Mon, 27 Apr 2026, 09:00
#3Mon, 4 May 2026, 09:00
#4Mon, 11 May 2026, 09:00
#5Mon, 18 May 2026, 09:00
#6Mon, 25 May 2026, 09:00
#7Mon, 1 Jun 2026, 09:00
#8Mon, 8 Jun 2026, 09:00
#9Mon, 15 Jun 2026, 09:00
#10Mon, 22 Jun 2026, 09:00
Common use cases
Monday morning at 9 AM is the natural trigger for anything on a weekly cadence. Sprint planning reminders, weekly analytics reports, Monday morning team digests, and "last week in review" summaries all use this pattern.
It's also popular for weekly maintenance tasks: pruning old backups, regenerating sitemaps, or checking for dependency updates in your codebase.
Platform-specific syntax
crontab
0 9 * * 1 /path/to/script.shAWS EventBridge
cron(0 9 ? * MON *)GitHub Actions
schedule:
- cron: '0 9 * * 1' # Mondays 9AM UTCKubernetes
schedule: "0 9 * * 1"Technical breakdown
The expression 0 9 * * 1 has five fields: minute=0, hour=9, day (month)=*, month=*, day (week)=1. At 9:00 AM, only on Monday.
Frequently asked questions
Can I use MON instead of 1?
In standard POSIX cron, only numbers 0-7 are valid. Many implementations (Vixie cron, AWS, Quartz) accept three-letter day names like MON, TUE, WED. Check your platform's documentation.