Skip to content
cron.surf

Convert GitHub Actions cron to AWS EventBridge

GitHub Actions writes min hour dom mon dow; AWS EventBridge writes cron(min hour dom mon dow year). Paste an expression to convert it. Anything that does not map exactly is flagged with the reason and a workaround.

“At 09:00, Monday through Friday”

To · AWS EventBridgeExact
cron(0 9 ? * 2-6 *)
cron() with six fields; one day field must be ?. UTC unless you set a time zone.

Same schedule on other platforms

crontabExact
0 9 * * 1-5
Runs in the system time zone; cronie also reads CRON_TZ=.
0 9 * * 1-5
Set spec.timeZone, or it uses the controller’s local zone.
SpringExact
0 0 9 * * 1-5
Six fields, seconds first; set zone= or it uses the server zone.
QuartzExact
0 0 9 ? * 2-6
Seconds first, Sunday is 1, one day field must be ?.

Next 10 runs

computed in your browser
  1. Calculating…

GitHub Actions vs AWS EventBridge

GitHub ActionsAWS EventBridge
Fieldsmin hour dom mon dowcron(min hour dom mon dow year)
Sunday01 (SUN=1 … SAT=7)
Day and weekday both seteither matchesone of them must be ?
Special charactersnoneL W # (one #)
Shortcutsnonenone; rate() for intervals
Time zoneUTC, or timezone: per entryIANA zone in Scheduler, UTC by default
Shortest interval5 minutes, best effort1 minute

Common schedules, converted

GitHub ActionsAWS EventBridge
Every 5 minutes*/5 * * * *cron(0/5 * * * ? *)
Every hour0 * * * *cron(0 * * * ? *)
Every 10 minutes*/10 * * * *cron(0/10 * * * ? *)
Every 15 minutes*/15 * * * *cron(0/15 * * * ? *)
Every 30 minutes*/30 * * * *cron(0/30 * * * ? *)
Daily at midnight0 0 * * *cron(0 0 * * ? *)
Daily at 9 am0 9 * * *cron(0 9 * * ? *)
Weekdays at 9 am0 9 * * 1-5cron(0 9 ? * 2-6 *)
Every Monday0 0 * * 1cron(0 0 ? * 2 *)
First day of the month0 0 1 * *cron(0 0 1 * ? *)
Every 6 hours0 */6 * * *cron(0 0/6 * * ? *)
Every Sunday at midnight0 0 * * 0cron(0 0 ? * 1 *)
Every 2 hours0 */2 * * *cron(0 0/2 * * ? *)
Every 12 hours0 */12 * * *cron(0 0/12 * * ? *)
Daily at noon0 12 * * *cron(0 12 * * ? *)
Every Friday0 0 * * 5cron(0 0 ? * 6 *)
Every quarter0 0 1 */3 *cron(0 0 1 1/3 ? *)
Every 3 hours0 */3 * * *cron(0 0/3 * * ? *)
Daily at 6 am0 6 * * *cron(0 6 * * ? *)
Daily at 6 pm0 18 * * *cron(0 18 * * ? *)
Twice a day0 */12 * * *cron(0 0/12 * * ? *)
Weekdays at 6 pm0 18 * * 1-5cron(0 18 ? * 2-6 *)
Weekends at 10 am0 10 * * 0,6cron(0 10 ? * 1,7 *)
15th of the month0 0 15 * *cron(0 0 15 * ? *)
Once a year0 0 1 1 *cron(0 0 1 1 ? *)
Every 20 minutes*/20 * * * *cron(0/20 * * * ? *)
Every 4 hours0 */4 * * *cron(0 0/4 * * ? *)
Every 8 hours0 */8 * * *cron(0 0/8 * * ? *)
Daily at 1 am0 1 * * *cron(0 1 * * ? *)
Daily at 2 am0 2 * * *cron(0 2 * * ? *)
Daily at 3 am0 3 * * *cron(0 3 * * ? *)
Daily at 8 am0 8 * * *cron(0 8 * * ? *)
Every weekday0 0 * * 1-5cron(0 0 ? * 2-6 *)
Every weekend day0 0 * * 0,6cron(0 0 ? * 1,7 *)
Every Tuesday0 0 * * 2cron(0 0 ? * 3 *)
Every Wednesday0 0 * * 3cron(0 0 ? * 4 *)
Every Thursday0 0 * * 4cron(0 0 ? * 5 *)
Every Saturday0 0 * * 6cron(0 0 ? * 7 *)
Every 6 months0 0 1 */6 *cron(0 0 1 1/6 ? *)

FAQ

Can every GitHub Actions expression be converted to AWS EventBridge?

Of the 39 common schedules on this page, all convert exactly. Special characters that AWS EventBridge lacks are still flagged when you use them.

How is Sunday written in GitHub Actions and AWS EventBridge?

GitHub Actions: 0. AWS EventBridge: 1 (SUN=1 … SAT=7).

Does the time zone carry over?

The expression has no time zone. GitHub Actions: UTC, or timezone: per entry. AWS EventBridge: IANA zone in Scheduler, UTC by default.