Blog
Wild & Free Tools

AWS EventBridge Cron Expression Guide — Schedule Lambda and Events

Last updated: April 2026 7 min read

Table of Contents

  1. AWS EventBridge Cron Format
  2. Common AWS EventBridge Cron Patterns
  3. Rate Expressions: Simpler Alternative
  4. AWS vs Standard Cron Conversion
  5. Frequently Asked Questions

AWS EventBridge Scheduler (formerly CloudWatch Events) uses a cron format that's similar to standard cron — but with two key differences: a 6th field for year, and the ? character required in either day-of-month or day-of-week. Our free cron generator builds standard 5-field expressions that you can convert to AWS format using the patterns below.

AWS EventBridge Cron Format

AWS cron expressions have 6 fields:

cron(minutes hours day-of-month month day-of-week year)

Example: cron(0 9 ? * MON-FRI *) runs at 9 AM UTC on weekdays every year.

Key differences from standard Unix cron:

Common AWS EventBridge Cron Expressions

ScheduleAWS Cron Expression
Every minutecron(* * * * ? *)
Every 5 minutescron(0/5 * * * ? *)
Every hourcron(0 * * * ? *)
Daily at midnight UTCcron(0 0 * * ? *)
Daily at 9 AM UTCcron(0 9 * * ? *)
Weekdays at 9 AM UTCcron(0 9 ? * MON-FRI *)
First of month midnightcron(0 0 1 * ? *)
Last day of monthcron(0 0 L * ? *)
Weekly Sunday midnightcron(0 0 ? * SUN *)
Sell Custom Apparel — We Handle Printing & Free Shipping

AWS Rate Expressions — Simpler Alternative to Cron

For simple intervals (every N minutes, hours, or days), AWS EventBridge also accepts rate expressions — much simpler than cron syntax:

rate(5 minutes)    # Every 5 minutes
rate(1 hour)       # Every hour
rate(24 hours)     # Every 24 hours
rate(7 days)       # Every 7 days

Use rate expressions when you need a fixed interval without concern for exact clock time. Use cron expressions when you need to run at a specific time of day (like 9 AM) or on specific days (like weekdays or the 1st of the month).

Converting Standard Cron to AWS EventBridge Format

To convert a standard 5-field cron expression to AWS format:

  1. Take your standard expression: 0 9 * * 1-5
  2. Replace * in the day-of-month field with ? since day-of-week is specified: 0 9 ? * 1-5
  3. Add a year field at the end: 0 9 ? * MON-FRI *
  4. Wrap in cron(): cron(0 9 ? * MON-FRI *)

AWS uses day-of-week names (MON, TUE, WED, THU, FRI, SAT, SUN) rather than numbers, which actually makes the expressions more readable. Numbers also work: AWS uses 1-7 where 1=Sunday.

All AWS EventBridge cron jobs run in UTC. There's no timezone parameter — you need to calculate the UTC equivalent of your desired local time.

Try It Free — No Signup Required

Runs 100% in your browser. No account, no install, no limits.

Open Free Cron Generator

Frequently Asked Questions

Does AWS EventBridge cron use UTC?

Yes, all AWS EventBridge scheduled rules run in UTC. There is no timezone parameter. To run a Lambda at 9 AM Eastern, schedule it at 14:00 UTC in winter (EST) and 13:00 UTC in summer (EDT).

Why does AWS cron require a question mark (?)?

AWS cron requires ? in either day-of-month or day-of-week to avoid ambiguity when specifying both fields. If you specify weekdays (like MON-FRI), day-of-month must be ? If you specify a specific date (like 1 for the 1st), day-of-week must be ?.

What is the difference between AWS rate() and cron() expressions?

Rate expressions (rate(5 minutes), rate(1 hour)) specify a fixed interval between runs. Cron expressions (cron(0 9 ? * MON-FRI *)) specify exact times. Use rate for simple intervals, cron for time-of-day or day-of-week specific scheduling.

Launch Your Own Clothing Brand — No Inventory, No Risk