Skip to main content

GitHub Actions Cron Schedule Generator

GitHub Actions schedules workflows with standard five-field POSIX cron under the on: schedule: key. The syntax is plain Unix cron, but a couple of platform rules — it always runs in UTC and scheduled runs are best-effort — cause most of the confusion.

Build your schedule below, then copy the full on: schedule: YAML block straight into your workflow file.

Official GitHub Actions documentation →

Expression

GitHub Actions cron always runs in UTC.
Min
Hour
Day
Month
DOW
0
9
*
*
1-5

GitHub Actions cron runs in UTC

Tip: press Ctrl+Enter to copy

Presets

Visual Builder

Description

At 09:00 AM, Monday through Friday

Timezone
June 2026
Fires on 22 days
Su
Mo
Tu
We
Th
Fr
Sa
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

GitHub Actions cron syntax

MinHourDayMonthDOW
09**1-5

GitHub Actions cron examples

Click any example to load it into the generator above.

Frequently asked questions

Why doesn't my GitHub Actions cron run exactly on time?

Scheduled workflows run on a best-effort basis. During periods of high load on GitHub's runners, jobs can be delayed by several minutes or, rarely, dropped. Don't rely on cron for tasks that must fire at an exact second.

What timezone does GitHub Actions cron use?

Always UTC. There is no timezone setting, so convert your local time to UTC before writing the expression — the generator's next-run preview can help you confirm.

What is the shortest interval I can schedule?

The cron syntax allows down to one minute, but in practice GitHub will not run schedules more often than about every 5 minutes, and very frequent schedules are the first to be throttled under load.