Frequently asked questions
15 questions on cron syntax, timezones, and platform quirks.
- Q1. How many fields does a cron expression have?
- POSIX cron uses 5 fields: minute, hour, day-of-month, month, day-of-week. Quartz adds seconds (6) or seconds + year (7). AWS EventBridge is 6-field with a year. This tool targets the most common POSIX 5-field form.
- Q2. Does 1-5 in
0 9 * * 1-5mean Monday through Friday? - Yes. The weekday field maps 0=Sun, 1=Mon, …, 6=Sat, 7=Sun (alias). So 1-5 is Monday–Friday. Implementations agree that both 0 and 7 represent Sunday.
- Q3. Is
*/5 * * * *really "every 5 minutes"? - Yes, but it fires on minutes 0, 5, 10, …, 55 — aligned to the hour, not "every 5 minutes starting from when the service booted".
- Q4. How is the expression interpreted when both day-of-month and day-of-week are set?
- POSIX and Vixie cron OR the two fields — fire when either matches. Quartz ANDs them and requires
?in one of them. This tool uses POSIX OR. Example:0 0 13 * 5fires on the 13th OR any Friday — it is not "Friday the 13th". - Q5. Do shortcuts like
@dailyand@hourlywork? - Yes —
@yearly,@monthly,@weekly,@daily/@midnightand@hourlyare all recognised and expanded to their 5-field equivalents. - Q6. Which timezone are the "next runs" in?
- All next-run times use Korea Standard Time (KST, UTC+9). Subtract 9 hours for the equivalent UTC time if your production scheduler runs in UTC.
- Q7. Can I use this translator for GitHub Actions
schedule:? - Yes — GitHub Actions accepts POSIX 5-field. But it always runs in UTC, so shift your expression by 9 hours for KST. 9 AM KST becomes
0 0 * * *(midnight UTC). - Q8. Does the output work in Kubernetes CronJob?
- Yes —
spec.scheduleis POSIX 5-field. Setspec.timeZone: "Asia/Seoul"(Kubernetes 1.27+) for KST, or rewrite the expression for UTC on older versions. - Q9. Is AWS EventBridge cron the same syntax?
- No — EventBridge uses 6 fields (minute, hour, day, month, weekday, year) and supports
?,L,W,#. A POSIX 5-field expression will fail. An EventBridge-specific tab is planned. - Q10. Is my cron expression sent to a server?
- No. Parsing and next-run calculation run entirely in your browser in JavaScript. Once the page is loaded you can disconnect the network and the tool keeps working. The expression never leaves your device.
- Q11. Which phrases does the natural-language → cron feature recognise?
- The current patterns are Korean-leaning: "매 분", "매 N분마다", "매일 오전 9시", "평일 오후 6시 30분", "매주 월요일 자정", "매월 1일 자정", "매년 1월 1일 자정", weekday ranges, etc. English coverage is limited for now.
- Q12. How is this different from crontab.guru?
- crontab.guru is English-only. This tool leads with a Korean description (English alongside), shows the next 10 runs in KST, adds Korean natural-language-to-cron reverse conversion, and ships 20 presets aligned with Korean teams. Quartz extensions (L, W, #) are not yet supported here.
- Q13. I need second-level cron.
- Sub-minute cron exists only in 6-field dialects (Quartz, Jenkins, some Kubernetes wrappers). POSIX cron is minute-level minimum. Use an application-level scheduler (Spring
@Scheduled, APScheduler) or Quartz. A Quartz tab is on our roadmap. - Q14. What if I specify a non-existent date like Feb 30?
- The expression parses but will never fire. If the next-runs list is empty, check for this. For "last day of February" you need Quartz
L, which this tool does not yet support. - Q15. Is it open source?
- Not public yet, but the entire parsing / describing / next-runs / reverse logic lives in a single
src/lib/cronParser.tsusing nothing but standard browser APIs. Open-sourcing is under consideration.