A cron expression tells a scheduler when a job should run. Classic five-field syntax, the dialect used by
Linux crontab and most cloud schedulers, is a single line of
minute hour day-of-month month day-of-week
values. An asterisk matches every allowed value, commas build lists, hyphens create ranges, and a slash steps
through a range, so */5 * * * *
fires every five minutes and 0 9 * * 1-5
runs at 09:00 on weekdays.
As you type, this tester validates the field count, maps each field onto the five-slot breakdown strip, and
composes a plain-English description of the resulting schedule. It targets the standard five-field format:
dialects that add a leading seconds field, such as Quartz or AWS EventBridge schedules with six or seven
fields, are rejected as invalid here.
Two gotchas save real debugging time. First, when both day-of-month and day-of-week are restricted, classic
cron treats them as alternatives (either may match) rather than requiring both. Second, the schedule fires in
the cron daemon's own timezone, which is not guaranteed to be UTC. Once your expression checks out, inspect
auth headers in the JWT Debugger,
test matching patterns in the Regex Tester,
or tidy job definitions with the JSON Formatter & Validator.