Overview
A visual five-field cron builder: set minute, hour, day-of-month, month, and day-of-week fields with the familiar syntax, and get a plain-English sentence describing the schedule plus a copy-ready expression. Six common presets — every minute, every 15 minutes, hourly, midnight daily, weekday mornings, and the first of the month — are one click away.
How It Works
Edit any of the five fields directly or click a preset to fill all five. The resulting cron string assembles live at the bottom in the standard minute hour day-of-month month day-of-week order, with each field labelled by its valid range. The explanation panel translates the expression into English: well-known patterns get a hand-written sentence, and anything else gets a structured description naming each field's value. Copy Expression places the string on your clipboard.
Step-by-Step Usage Guide
- Click a preset close to what you need, or edit the five fields directly.
- Read the English explanation and verify it matches your intent.
- Adjust fields like */15 or 1-5 for step and range schedules.
- Copy the expression into your crontab or scheduler configuration.
Technical Specifications & Standards
The tool targets the classic five-field Unix cron format — not the six- or seven-field variants used by Quartz or some schedulers — and its field ranges follow the Vixie cron convention: minutes 0-59, hours 0-23, days of month 1-31, months 1-12, and day-of-week 0-6 (Sunday first). The English output is honest about its depth: six exact patterns, including */15 * * * * and 0 9 * * 1-5, map to hand-written sentences, while everything else falls back to a template that restates the field values rather than fully parsing step values, ranges, and lists. Two limitations follow from that. First, the fields are free-text inputs with no range validation, so a minute of 99 or a typo like *-* is displayed as-is rather than flagged. Second, the fallback sentence does not expand constructs such as */n or 1,15 into words, so read the expression itself for those. Cron's day-of-month versus day-of-week OR behaviour when both are restricted is also not called out — a subtlety worth knowing before scheduling jobs on specific weekdays of the month.
Targeted Use Cases
- Writing a crontab entry for a nightly backup or a weekday-only job.
- Translating an unfamiliar cron expression found in a config file into words.
- Setting up CI or hosting-platform schedules that accept standard five-field cron.
- Teaching a teammate the field order and step syntax safely.
Notes & Gotchas
- Verify the English sentence for unusual expressions — the fallback restates fields rather than fully parsing them.
- Remember day-of-week runs 0-6 with Sunday as 0 in this format.
- Test the copied expression in a staging scheduler before relying on it in production.
- Know that restricting both day-of-month and day-of-week makes cron match either, not both.
Frequently Asked Questions
Which cron dialect does this tool produce?
The classic five-field Unix cron format: minute, hour, day-of-month, month, day-of-week with 0-6 for weekdays. It does not emit the six-field Quartz format or seconds-based variants some schedulers expect.
Why does the explanation sound generic for my expression?
Six common patterns have hand-written translations; everything else uses a template that restates each field's value. Step values like */n and lists are not expanded into words, so check the raw expression for their exact meaning.
Does it validate my fields?
No. The five fields are free-text and are assembled as typed, so out-of-range values pass through without a warning. Double-check ranges: minutes 0-59, hours 0-23, month days 1-31, months 1-12, weekdays 0-6.
Where can I use the copied expression?
Anywhere that accepts standard five-field cron: a Linux crontab, most CI schedulers, and many hosting platforms. Confirm your target's dialect first, since six-field systems will misread the schedule.