Cron Expression Generator & Explainer
Build and decode cron schedules into plain English, entirely in your browser.
Loading Cron Expression Generator & Explainer… If nothing happens, please enable JavaScript.
Cron is the time-based job scheduler that has run the world's servers since the 1970s. A cron expression is a compact string of five fields (minute, hour, day of month, month, and day of week) that together describe exactly when a task should fire. The syntax is famously terse, and a single misplaced asterisk or slash can turn an hourly backup into a once-a-minute storm. This tool turns any expression into a clear, human-readable sentence so you can confirm the schedule before you commit it to a crontab, a CI pipeline, or a Kubernetes CronJob.
Frequently asked questions
Is my cron expression sent anywhere?
What do the five fields in a cron expression mean?
What does an asterisk and a slash together mean, like */15?
Why does my job run more often than I expected?
Does it support seconds or six-field cron?
How do day of month and day of week interact?
Can I use names like MON or JAN instead of numbers?
Does the tool work offline?
About Cron Expression Generator & Explainer
The explainer accepts standard five-field cron expressions and supports the usual operators: the asterisk for any value, commas for lists (such as 0,15,30,45), hyphens for ranges (such as 1-5 for Monday through Friday), and slashes for steps (such as */5 for every fifth unit). Type your own expression or click one of the ready-made presets to load a common pattern, then read the description and adjust until it matches your intent. The field reference table below the input reminds you which position controls which unit and what values each one accepts.
Everything runs locally in your browser using the cronstrue library bundled directly into the page. Nothing you type is uploaded, logged, or sent to any server, so you can paste schedules from private infrastructure without a second thought. The tool works offline once loaded, which makes it a handy companion when you are editing crontabs over SSH and just need a quick sanity check on what a line actually does.
Why it is called cron
The name cron comes from Chronos, the Greek personification of time, and the utility first appeared in Version 7 Unix in the late 1970s. The original implementation by Brian Kernighan simply woke up once a minute, read the system crontab, and ran whatever was due. It was elegant but did not scale well as the number of jobs grew.
In 1987 Paul Vixie released what became known as Vixie cron, a far more efficient rewrite that calculated the next run time for each job instead of scanning the whole table every minute. Vixie cron introduced many conveniences taken for granted today, including step values with the slash operator, ranges, and per-user crontabs. Its descendants ship as the default scheduler on most Linux distributions.
The five-field syntax has proven remarkably durable. Decades after its creation it still appears almost unchanged in modern cloud platforms, container orchestrators, and continuous integration services. Whenever you write a schedule for a GitHub Actions workflow or a Kubernetes CronJob, you are speaking a dialect of a language designed for a single shared minicomputer running in a research lab.