Candid Tools

Cron every Monday at 9 AM

Every Monday at 9 AM in cron is 0 9 * * 1 (Unix) or 0 0 9 ? * MON (Quartz, Spring); this page lists the next Mondays, calculated in your browser.

Unix cron (crontab, GitHub Actions, Kubernetes)
  • 0 9 * * 1
Quartz and Spring (seconds first; valid in both)
  • 0 0 9 ? * MON
AWS EventBridge (minute first, year last)
  • cron(0 9 ? * MON *)

Read by our parser as: At 9:00 AM, only on Monday. Open in the cron checker

Next 10 runs

Calculating in your browser...

  1. 1 
  2. 2 
  3. 3 

At a glance

Accepts
Nothing to enter - the schedule is preset on the page
Outputs
The expression in Unix, Quartz/Spring and AWS form, plus its next 10 run times
Where it runs
Entirely in your browser, on your device
What leaves your device
Nothing - what you type stays in this tab
Limits
Run times use your browser's timezone or UTC; real schedulers can start a run late
Account
Not required - there is no sign-up
Price
Free, with no watermark and no usage cap
Made by
Visrut

What it means

0 9 * * 1 runs at 9:00 every Monday: minute 0, hour 9, any day of month, any month, day of week 1. That last 1 is the bit that changes meaning between dialects. In Unix cron and Spring 1 is Monday; in Quartz and AWS 1 is Sunday and Monday is 2.

When this is the right schedule

Use it when you want a weekly kickoff: a planning reminder, a weekly metrics report, a reset of weekly quotas.

When to pick something else

Look elsewhere when Monday is a public holiday for your team now and then (cron will run anyway), or you need the first Monday of the month only, which needs a different approach.

Things to watch

Numbers move between dialects

Moving 0 9 * * 1 from crontab to Quartz by adding seconds gives 0 0 9 ? * 1, which Quartz runs on Sundays. Use MON and it means Monday in Unix, Quartz, Spring and AWS alike.

Every other Monday isn't possible

Cron has no week counter. */2 in the day-of-week field means Sunday, Tuesday, Thursday, Saturday. For fortnightly, run weekly and check the ISO week number in the job ([ $(( $(date +\%V) \% 2 )) -eq 0 ], with % escaped inside a crontab).

Monday 9 AM in which zone

For a team spread across zones, pick the earliest office and set the timezone on the schedule, or the report arrives on Sunday evening for someone.

Frequently asked questions

Why does my Quartz job with day of week 1 run on Sundays?

Quartz counts 1 = Sunday through 7 = Saturday. Use 2 or MON for Monday.

How do I run every other Monday?

Cron can't count weeks. Schedule it every Monday and skip odd (or even) ISO week numbers inside the job.