Cron to Quartz Converter

Convert standard cron expressions to Quartz-compatible cron format with explanations.

Format: minute hour day-of-month month day-of-week [year]

Format: second minute hour day-of-month month day-of-week [year]

Format Differences

Standard Cron (5-6 fields)

minute hour day-of-month month day-of-week [year]
  • • Day of week: 0=Sun, 1=Mon, ..., 6=Sat
  • • No seconds field

Quartz Cron (6-7 fields)

second minute hour day-of-month month day-of-week [year]
  • • Day of week: 1=Sun, 2=Mon, ..., 7=Sat
  • • Includes seconds field

What is Cron to Quartz Converter?

Cron expressions are time-based job scheduling strings used across Unix-like systems and scheduling frameworks. Standard Unix cron uses five fields — minute, hour, day of month, month, and day of week — to define when a task should run. Quartz Scheduler, a widely adopted open-source job scheduling library for Java applications, extends this format with a mandatory seconds field and a different day-of-week numbering convention. In standard cron, Sunday is represented as 0, while Quartz uses 1 for Sunday through 7 for Saturday. Additionally, Quartz introduces the question mark (?) character to indicates "no specific value" for either the day-of-month or day-of-week field, since Quartz does not allow both fields to be set simultaneously. This converter bridges the gap between these two formats, handling the seconds field insertion, day-of-week offset adjustment, and the asterisk-to-question-mark transformation that Quartz requires. Whether you are migrating scheduled jobs from a Linux crontab to a Spring Boot application, configuring AWS EventBridge rules that use Quartz-style expressions, or setting up Quartz triggers in a Java enterprise system, this tool ensures your schedule semantics are preserved accurately.

How to Use

  1. Enter your standard cron expression in the input field — it should have 5 or 6 fields (minute hour day-of-month month day-of-week [year])
  2. Click "Convert to Quartz" to generate the Quartz-compatible expression with the seconds field and corrected day-of-week values
  3. Review the human-readable explanation below the output to verify the schedule matches your intent
  4. Check the format comparison panel to understand how each field maps between standard and Quartz notation
  5. Copy the Quartz expression and paste it into your Quartz Scheduler configuration, Spring @Scheduled annotation, or AWS EventBridge rule

Why Use This Tool?

Automatically inserts the seconds field (defaults to 0) required by Quartz Scheduler
Corrects day-of-week numbering from the 0-6 standard cron convention to the 1-7 Quartz convention
Converts asterisk wildcards to question marks in day fields per Quartz rules, preventing validation errors
Provides a plain-English explanation of the converted schedule so you can verify correctness at a glance
Validates your input expression before conversion, catching syntax errors early
Handles both 5-field and 6-field standard cron expressions including the optional year field

Tips & Best Practices

  • Quartz defaults the seconds field to 0 — if you need a specific second, append it manually after conversion
  • In Quartz, you cannot set both day-of-month and day-of-week to specific values — one must be ? — this tool handles that automatically
  • Quartz supports advanced modifiers not available in standard cron: L (last day of month), W (nearest weekday), and # (nth occurrence of a weekday in a month)
  • When migrating from Linux crontab, double-check that your schedule frequency still makes sense — Quartz jobs often run in application servers with different load patterns
  • Spring Boot CronTrigger uses Quartz format, so this converter is essential when writing @Scheduled(cron = "...") annotations

Frequently Asked Questions

What is the main difference between standard cron and Quartz cron?

Quartz cron requires 6 to 7 fields (including a mandatory seconds field), while standard Unix cron uses 5 to 6 fields. The day-of-week numbering also differs: standard cron uses 0-6 where Sunday is 0, while Quartz uses 1-7 where Sunday is 1. Additionally, Quartz requires the ? character instead of * for either day-of-month or day-of-week when the other is specified.

Why does Quartz need a seconds field?

Quartz Scheduler provides finer-grained scheduling than standard cron, allowing jobs to trigger at an exact second. When converting from standard cron, the seconds field defaults to 0, meaning the job fires at the start of each matching minute. You can manually adjust this value if you need sub-minute precision.

When should I NOT use Quartz cron format?

Avoid Quartz cron if you are configuring Linux crontab entries, GitHub Actions schedules, or Kubernetes CronJobs — these platforms use standard 5-field cron syntax. Quartz format is specifically for the Quartz Scheduler library and frameworks that embed it, such as Spring Boot, AWS EventBridge, and Databricks jobs.

What does the ? character mean in Quartz?

The ? character means "no specific value" and is required in Quartz when you specify either day-of-month or day-of-week but not both. For example, if you want a job to run every Monday, you must set day-of-month to ? because Quartz does not allow both day fields to have specific values simultaneously.

How does day-of-week conversion work?

Standard cron numbers days from 0 (Sunday) to 6 (Saturday). Quartz numbers them from 1 (Sunday) to 7 (Saturday). This tool adds 1 to each numeric day-of-week value during conversion. Named day abbreviations like MON, TUE are supported natively by Quartz and do not require conversion.

Is my cron expression sent to a server?

No. All parsing, conversion, and validation happen entirely in your browser. Your cron expression never leaves your device, making this tool safe for use with production schedules and internal system configurations.

Real-world Examples

Daily Report Job — Linux to Spring Boot

A nightly report generation job running at 9:30 AM every weekday needs to be migrated from a Linux crontab to a Spring Boot application using the Quartz Scheduler.

Input
30 9 * * 1-5
Output
0 30 9 ? * 2-6

Monthly Cleanup Task — Crontab to AWS EventBridge

A database cleanup script that runs at 2:00 AM on the 1st of every month needs to be configured as an AWS EventBridge rule, which uses Quartz cron syntax.

Input
0 2 1 * *
Output
0 0 2 1 * ?

Related Tools