AWS EventBridge Cron Expression Guide

AWS EventBridge uses a 6-field cron format that differs from standard Unix cron in critical ways: a year field, "?" wildcards, and named day abbreviations. Get the syntax right with the builder above.

Live Builder

Valid
MINMinute
0
HRHour
9
DOMDay of Month
*
MONMonth
*
DOWDay of Week
1-5

In plain English

At 09:00 AM, Monday through Friday

English → Cron

Try: "every 5 minutes", "every weekday at 9am", "every Monday at 3pm", "every month on the 1st"

Next 10 Executions

UTC
  1. 1Mon, May 18, 09:00 AM UTCin 3d
  2. 2Tue, May 19, 09:00 AM UTCin 4d
  3. 3Wed, May 20, 09:00 AM UTCin 5d
  4. 4Thu, May 21, 09:00 AM UTCin 6d
  5. 5Fri, May 22, 09:00 AM UTCin 7d
  6. 6Mon, May 25, 09:00 AM UTCin 10d
  7. 7Tue, May 26, 09:00 AM UTCin 11d
  8. 8Wed, May 27, 09:00 AM UTCin 12d
  9. 9Thu, May 28, 09:00 AM UTCin 13d
  10. 10Fri, May 29, 09:00 AM UTCin 14d
crontab entrybash
# Add to crontab with: crontab -e
0 9 * * 1-5    /path/to/your/script.sh

Syntax Overview

Field order

MIN

Minute

HR

Hour

DOM

Day of Month

MON

Month

DOW

Day of Week

YEAR

Year

0 9 ? * MON-FRI *

Example: At 09:00 AM, Monday through Friday

Use "?" for the day field you want to ignore. Both day-of-month and day-of-week cannot be specified simultaneously.

Common Expressions

0 12 * * ? *Every day at noon UTC
0 9 ? * MON-FRI *Every weekday at 9am UTC
0 0 1 * ? *1st of every month at midnight UTC
*/5 * * * ? *Every 5 minutes
0 18 ? * FRI *Every Friday at 6pm UTC
0 0 ? * SUN *Every Sunday at midnight UTC

Frequently Asked Questions

Why does AWS EventBridge use "?" instead of "*"?
AWS requires exactly one of day-of-month or day-of-week to be "?" (no specific value). You cannot specify both simultaneously. If you set day-of-week to "MON-FRI", day-of-month must be "?".
What is the 6th field in AWS EventBridge cron?
The 6th field is the year (e.g., 2024, 2024-2030, or * for any year). Standard Unix cron has no year field — this is AWS-specific.
Can I use numeric day-of-week values in AWS EventBridge?
Yes, but AWS uses 1=Sunday through 7=Saturday (not 0=Sunday as in standard cron). The named form (SUN, MON, TUE, WED, THU, FRI, SAT) is less error-prone and more commonly seen.
All AWS EventBridge cron expressions use UTC — can I change the timezone?
AWS EventBridge schedules (Scheduler, not Rules) support timezone-aware recurring schedules as of 2022. However, the cron expression itself is always evaluated in UTC; you set a separate schedule timezone parameter.
What's the difference between EventBridge Rules and EventBridge Scheduler for cron?
EventBridge Rules use "rate" or "cron" expressions and are evaluated in UTC. EventBridge Scheduler (the newer service) adds timezone support and flexible retry policies on top of the same cron syntax.