Skip to content
Cron Truth

Scheduled job truth board

Did the job run, or did it only say so?

Paste your crontab and a run log. Cron Truth works out every window the schedule promised, lines each one up with a real run, and shows what was missed, late, failed, suspiciously quick or running on top of itself.

TimeJobStatus
02:00NIGHTLY-BACKUPMissed
03:00BILLING-CLOSEFailed
06:15DAILY-REPORTSuspect
08:00CRM-SYNCOverlap
08:30PRUNE-TMPTruthful
Demo board. Each row comes from the sample crontab and log below.

What it is

A free checker for scheduled jobs. It compares what the schedule promised with what the log shows actually happened.

Who it is for

Backend owners, SREs, founders with nightly jobs and support people who hear that a report never arrived.

What it solves

Silent cron failures. A job that never started leaves no error, and a job that exits with success after two seconds looks fine on a dashboard.

Check scheduled runs

Everything runs in your browser. Nothing you paste is sent anywhere.

Check untilWindows after this moment are not judged yet.

No check yet

Paste a crontab and a run log, or load the demo jobs to see a full board.

Your crontab and logs never leave this page.

What the verdicts mean

Every job gets one verdict, the most serious thing found in its windows.

  1. Truthful

    Every window has a run that started on time and ended well.

  2. Late

    A run arrived after the grace period. Look for a busy host or a lock that waits.

  3. Overlap

    A run started before the previous one finished. Add a lock or move the schedule.

  4. Missed

    A window passed with no run at all. Check that the cron daemon is up and the host was awake.

  5. Failed

    The run happened but exited with an error code. Read the job output for that time.

  6. Suspect

    It reported success but finished far faster than usual or wrote nothing. Check the result, not the exit code.

  7. Silent

    The schedule expects runs, yet the log never mentions this job. It may not be installed at all.

How to use it

  1. Paste the crontab

    Copy it from crontab -l or your scheduler config. Put a comment after a line to give the job a friendly name.

  2. Paste the run log

    Export job, start time, duration and exit code from your logs, or paste the CRON lines from syslog.

  3. Pick the time zone

    Choose the zone the server uses. CRON_TZ lines in the crontab override it for the lines below them.

  4. Read the board

    Open a job to see each missed, late, failed or suspect window with its exact time.

  5. Share the receipt

    Copy the receipt into the incident thread so the discussion starts from facts.

Good to know

  • Each job is checked from its first run in the log, so a short log cannot create false misses.
  • Syslog CRON lines show starts only, so they cannot reveal failures or durations.
  • Times that do not exist on a clock change day are skipped.
  • Day of month and weekday follow classic cron: when both are set, either one is enough.
  • This is a checker, not a monitor. It does not watch your jobs or page anyone.

Questions

Does my data leave the browser?

No. Parsing and checking run on this page. Nothing is uploaded or stored.

Which log formats work?

CSV or tab separated columns with a header, columns in the order job, start, duration, exit, rows, lines that start with a date, and syslog CRON lines.

How do you match a log line to a job?

By the comment name, by the command, or when one contains the other. Lines that match nothing are listed separately.

Why is a run with exit code 0 marked suspect?

Because it finished in under a tenth of its usual time or reported zero rows. Many broken jobs exit cleanly while doing nothing.

Talk to the builder

Questions, ideas or a job offer? Send a message on X or Telegram.

Support the builder

If this tool saved you time, you can send a tip to this EVM address from your own wallet.

0xd28Fd90eD69092bd01598f237aad33a0cc9c3EeA