A preview.
Not a promise.
Which cron?
This is a deliberately narrow, strict cron-parser simulation. Five fields only: minute, hour, day of month, month, day of week. We prepend zero seconds and use the library's strict mode. At least one of the two day fields must be exactly *. This refuses the ambiguous case where both are restricted, rather than guessing the OR/AND convention of your scheduler. Even */1 is not exactly * for this strict check.
Supported syntax: digits, wildcards, lists, ranges, steps, month names JAN–DEC and weekday names SUN–SAT. Sunday is 0 or 7. Unsupported: commands, environment assignments, user fields, @nicknames, seconds/year fields, H, L, W, #, ?, Quartz and platform-specific dialects. A valid expression here is not approval to deploy it elsewhere.
Clocks and daylight saving
Start is an exclusive instant with seconds and an explicit Z or numeric offset. It is not a floating local time; no ambiguous-local-time guess is made. Supported start years are 1970–2090. Calculations stop after eight years or 30 runs. Fewer results or calculation limits are reported instead of presented as a complete schedule. Dates must be real calendar dates.
The selected IANA timezone interprets the expression. UTC timestamps identify instants; local timestamps retain numeric offsets. A changed offset flag compares consecutive listed instants (or start to first). It does not find every clock transition that happened in between, or guarantee detection of repeated wall times. A flagged hour/minute adjustment means the parser returned a local hour or minute outside those in the expression, typically compensating a DST gap. No general shift/skip/repeat promise is made for other schedulers. Some cron daemons run missed jobs immediately or suppress duplicate jobs differently.
The pinned parser's London spring example for 30 1 * * * produces 02:30+01:00 on the gap day, with an adjustment flag. Its autumn example selects the earlier 01:30 occurrence and does not list both folds. The displayed results are the parser's behavior, not a prediction of a particular server, Kubernetes, GitHub Actions, AWS or systemd deployment. Confirm your exact runtime's timezone and DST rules. See cron daemon clock-change guidance and bcron's own semantics.
Luxon uses the browser's Intl timezone data. Future government rule changes and differences between browser/server timezone databases can change results. Etc/GMT signed-offset zones are refused to avoid their reversed-sign convention; choose a regional zone or UTC. The JSON report preserves all returned timestamps, flags, start and horizon. It is not a crontab or an installed job.
Privacy and limits
Parsing runs locally in a worker that is stopped after three seconds. Inputs are capped at 200 expression characters and 80 timezone characters. The app does not create calendar events, install jobs, execute commands, connect accounts, fetch remote expressions, or schedule reminders. It has no analytics, uploads, cookies or persistent input storage. Tested app calculations make only same-origin requests for their code. Hosting logs, browser extensions and downloaded reports are outside these app claims. The report contains your rule, timezone and start; review before sharing.
Open source
Uses cron-parser revision 58690b4bf3a56689baf07f69ae09644738ae02a5, version 5.10.5, MIT. Full terms. It uses Luxon 3.7.2 (MIT), full terms. Their source logic is unmodified in a local browser bundle. Chawso adds the strict five-field boundary, start validation, explicit-clock report, bounded worker and this UI, under project-only MIT terms in LICENSE. Notices. No third-party fonts or remote runtime dependencies.
Download source and licence texts · Chawso Credits. Revised November 13, 2026.