cronkit.org
Cron expressions, explained and converted — in your browser

Cron tools › Explain / Test

Crontab viewer

plain English per line · next run · sortable · CSV, JSON, Markdown

What does this crontab actually do? Paste it and read every job as a row — what the schedule means, when it next runs, who it runs as and the comment above it — then sort by next run or export the table for a runbook.

Jobs

Select the Next run heading to sort soonest first; select it again for file order. Lines that are not valid entries stay in the table with the reason.

How to read a crontab as a table

  1. Paste the crontab or drop the file on the box.
  2. Choose the Format. System crontabs (/etc/crontab, /etc/cron.d) have a user field after the schedule, shown in its own column.
  3. Pick the Time zone the server runs in. The next run of each line is shown in that zone, or in the zone of a CRON_TZ= line above it.
  4. Select the Next run heading to see what fires first.
  5. Export with CSV, JSON or Markdown; environment settings such as MAILTO and PATH are listed separately and included in the exports.

Anatomy of a crontab

LineExampleShown as
Comment# nightly database dumpThe "Comment above" of the job that follows it
Environment setting[email protected]A row in Environment settings
User crontab entry30 2 * * * /usr/local/bin/backup.shSchedule, meaning, next run, command
System crontab entry30 2 * * * root /usr/local/bin/backup.shThe same, plus the user
Shortcut@daily /usr/local/bin/rotate.shIts meaning (@daily = 0 0 * * *)
@reboot@reboot /usr/local/bin/start.shNext run "at daemon start" — it has no clock time

Comments are only allowed on their own line (crontab(5)); a # after a command is part of the command. The CRON_TZ= setting is cronie's; Debian's cron has no per-user time zones. For problems rather than a summary — an unescaped %, Windows line endings, jobs inside a daylight-saving change — run the same file through the crontab checker.

FAQ

Why is a line marked invalid?

Either it is not a complete entry (a crontab line needs five time fields or an @ shortcut, then a command — and a user first in system crontabs), or the schedule has an error, such as a value out of range. The reason is shown in the Meaning column.

Which time zone is "next run" in?

The zone you pick, which should be the server's. cron uses the system time zone unless a cronie CRON_TZ= line sets another; lines after one are computed in that zone and the export records the zone of each row.

What is in the JSON export?

A jobs array with the line number, schedule, meaning, next run (local time with offset, and UTC), time zone, user in system mode, command, comment and any error, and an environment array of the name/value settings.

Is the crontab stored or uploaded?

No. It is parsed in this page and not saved or sent, and it is not put in the address bar.