Home โบ Convert โบ node-cron to Quartz
Convert node-cron cron to Quartz
node-cron expressions look similar to Quartz, but the differences matter. Paste yours below; the result is checked against the original run times.
What changes from node-cron to Quartz
- node-cron 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.
Worked examples
| Schedule | node-cron | Quartz |
|---|---|---|
| every minute | * * * * * | 0 * * * * ? |
| 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 * * ? |
Conversions that come with a warning
- on the first Monday of every month at 9:00 AM:
0 9 1-7 * 1โ0 0 9 1-7 * ?. Both day-of-month and day-of-week were set. Quartz (6-7 field) cannot express "either"; day-of-week was dropped. Check the result.
Field layout and time zones
second (0-59), minute (0-59), hour (0-23), day-of-month (1-31), month (1-12), day-of-week (0-7, 0 and 7 = Sunday).
node-cron uses the server time zone unless you pass { timezone: "Asia/Kolkata" }. Its documentation advises timezone: "UTC" for jobs that must not skip or repeat when clocks change.
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 node-cron, or open the node-cron builder or the Quartz builder.
Frequently asked questions
How do I convert a node-cron cron expression to Quartz?
Paste it into the converter above with node-cron as the source and Quartz as the target. For example, * * * * * becomes 0 * * * * ?.
Is every node-cron expression convertible to Quartz?
Yes for the common schedules we tested (32 of 32), though unusual expressions with special characters might need manual review.
Does Quartz run in the same time zone as node-cron?
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.