T
ToolPrime

Cron Expression for Every Monday at 9 AM

Run a cron job every Monday at 9 AM using 0 9 * * 1. The classic start-of-week morning schedule for team notifications and reports.

Expression

0 9 * * 1

At 09:00 every Monday

Use Cases

Code Examples

Crontab

# At 09:00 every Monday
0 9 * * 1 /path/to/your/script.sh

GitHub Actions

name: Scheduled Job
on:
  schedule:
    - cron: '0 9 * * 1'
jobs:
  run:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: echo "Running Every Monday at 9 AM"

systemd Timer

[Unit]
Description=Every Monday at 9 AM timer

[Timer]
OnCalendar=*-*-* *:*:00
Persistent=true

[Install]
WantedBy=timers.target

node-cron (Node.js)

import cron from 'node-cron'

// At 09:00 every Monday
cron.schedule('0 9 * * 1', () => {
  console.log('Running Every Monday at 9 AM')
})

Spring (@Scheduled, Java)

// At 09:00 every Monday
@Scheduled(cron = "0 0 9 * * 1")
public void run() {
    // your task
}

Spring cron has 6 fields (a leading seconds field), so a 0 is prepended to the standard 5-field expression.

Tips

Frequently Asked Questions

How do I run at 9 AM on Mondays?

Use 0 9 * * 1. The minute is 0, hour is 9, and day-of-week is 1 (Monday). The asterisks mean any day-of-month and any month.

Can I add Wednesday too?

Yes, use 0 9 * * 1,3 to run at 9 AM on both Monday and Wednesday.

Related Cron Expressions

Related Tools