Home › Convert › GitHub Actions to Quartz
Convert GitHub Actions cron to Quartz
GitHub Actions expressions look similar to Quartz, but the differences matter. Paste yours below; the result is checked against the original run times.
What changes from GitHub Actions to Quartz
- Quartz has a leading seconds field. The converter adds
0in front so the job fires at the start of the minute. - GitHub Actions numbers Sunday as 0, but Quartz uses 1-7 starting on Sunday. Every weekday number is increased by one (Monday-Friday becomes 2-6).
- Quartz requires a
?in exactly one of the two day fields. The converter puts it in the day field you did not use. - Quartz has a year field. The converter appends
*so the schedule repeats every year. - GitHub Actions runs when day-of-month or day-of-week matches, but Quartz requires both. If you set both fields, the converter warns you.
Worked examples
| Schedule | GitHub Actions | Quartz |
|---|---|---|
| every 5 minutes | */5 * * * * | 0 */5 * * * ? |
| every 10 minutes | */10 * * * * | 0 */10 * * * ? |
| every 15 minutes | */15 * * * * | 0 */15 * * * ? |
| every 30 minutes | */30 * * * * | 0 */30 * * * ? |
| every hour | 0 * * * * | 0 0 * * * ? |
| every 2 hours | 0 */2 * * * | 0 0 */2 * * ? |
| every 3 hours | 0 */3 * * * | 0 0 */3 * * ? |
| every 6 hours | 0 */6 * * * | 0 0 */6 * * ? |
Field layout and time zones
minute (0-59), hour (0-23), day-of-month (1-31), month (1-12), day-of-week (0-6, 0 = Sunday).
GitHub Actions schedules are always UTC. Convert your local time to UTC before writing the expression.
second (0-59), minute (0-59), hour (0-23), day-of-month (1-31), month (1-12), day-of-week (1-7, 1 = Sunday), year (1970-2199, optional).
Quartz uses the JVM default time zone unless you set one: CronScheduleBuilder.cronSchedule(expr).inTimeZone(TimeZone.getTimeZone("UTC")).
Go the other way
Convert Quartz to GitHub Actions, or open the GitHub Actions builder or the Quartz builder.
Frequently asked questions
How do I convert a GitHub Actions cron expression to Quartz?
Paste it into the converter above with GitHub Actions as the source and Quartz as the target. For example, */5 * * * * becomes 0 */5 * * * ?.
Is every GitHub Actions expression convertible to Quartz?
Yes for the common schedules we tested (26 of 26), though unusual expressions with special characters might need manual review.
Does Quartz run in the same time zone as GitHub Actions?
Not necessarily. Conversion changes the syntax, not the time zone. Check where each system evaluates the schedule before you rely on the same clock times.