UtilityToolsLab

© 2026 UtilityToolsLab. Built and maintained by the UtilityToolsLab Team.

Free eBooks·About·Changelog·Privacy Policy·Terms of Service·Report a bug
HomeWeb Dev HelpersCron Explainer

Related Tools

Cron Expression Explainer & Builder

Read any cron schedule in plain English and see its next 10 run times, or build one from presets and field inputs. Macros, names and steps supported.

You Might Also Like

All Web Dev Helpers

Case Converter

Convert text between UPPERCASE, lowercase, Title Case, Sentence case, camelCase, PascalCase, snake_case, and kebab-case.

Lorem Ipsum

Placeholder text in 20 languages — English, Bengali, Hindi, Arabic, Spanish, French, Chinese and more. Paragraphs, sentences, words, lists, optional emoji.

English Lorem Ipsum

Generate free English Lorem Ipsum dummy text for web design, layouts, and mockups. Classic Latin filler text in paragraphs, sentences, words, or lists.

Bangla Lorem Ipsum

Generate free Bangla (Bengali) Lorem Ipsum dummy text for web layouts and mockups. Bengali script filler in paragraphs, sentences, words, or lists.

Five fields separated by spaces control when a backup runs, an invoice goes out or a cache is cleared, and a single misplaced number can change it from “every weekday” to “every minute”. The Cron Expression Explainer reads the schedule back to you in plain English, lists the next ten times it will actually fire, and lets you build or edit it one field at a time.

It reads standard five-field cron (minute, hour, day of month, month, day of week) as Vixie cron and most Linux systems run it. It also accepts the @daily, @weekly, @monthly, @yearly and @hourly macros, month and weekday names such as JAN and MON, and both 0 and 7 for Sunday.

Worked Example: Business Hours on Weekdays

The page opens on */15 9-17 * * 1-5, which reads as “Every 15 minutes, between 09:00 and 17:59, on Monday through Friday.”

  • The minute field */15 expands to 0, 15, 30 and 45.
  • The hour field 9-17 covers 09 to 17. That is nine hours, so the last run of the day is 17:45, not 17:00.
  • Four minutes × nine hours gives 36 runs on each matching day.
  • After the 17:45 run on a Friday, the next one in the list is Monday at 09:00.

Load Sample then steps through a Sunday 02:00 backup, 30 6 1,15 * *, 0 */6 * * * and 0 9 * JAN,JUL MON.

Edge Cases Cron Gets Right and People Get Wrong

When both day fields are restricted, cron runs when either matches, not when both do. 0 0 13 * 5 therefore fires on every 13th and on every Friday, not only on Friday the 13th. A yellow note appears whenever both fields are set. A step that starts from a number keeps going to the end of the range, so 5/15 in the minute field means 5, 20, 35 and 50.

Run times are searched five years ahead. 0 0 29 2 * finds the next leap day, while 0 0 30 2 * reports that it never runs. Mistakes are named precisely, for example “Minute value 75 is out of range 0–59.” A six-field Quartz expression with seconds is pointed out rather than misread.

Getting a Schedule Built

  1. Start from a preset such as Weekdays at 09:00 or Every 15 minutes, or type an expression.
  2. Edit any of the five field boxes below the description. The full expression and the plain-English sentence update as you type.
  3. Switch the run list between your browser's time zone and UTC, which is what most servers use. Times that a daylight-saving jump removes are left out.
  4. Copy the expression, or use the crontab line shown under the run list.

Presets

In plain English

Every 15 minutes, between 09:00 and 17:59, on Monday through Friday.

36 runs on each matching day

0, 15, 30, 45

09, 10, 11, 12, 13, 14, 15, 16, 17

every day

every month

Mon, Tue, Wed, Thu, Fri

Next 10 runs

  1. Working out run times…

Crontab line: */15 9-17 * * 1-5 /path/to/command