RH
Tool

Cron Parser

Parse and explain cron expressions

Client-side processing

0-59

0-23

1-31

1-12

0-6

Se ejecuta a las 09:00, de lunes a viernes

sáb, 3 oct 2026, 18:38
sáb, 3 oct 2026, 19:38
sáb, 3 oct 2026, 20:38
sáb, 3 oct 2026, 21:38
sáb, 3 oct 2026, 22:38

Formato Cron

┌───────────── minuto (0-59)
│ ┌───────────── hora (0-23)
│ │ ┌───────────── día del mes (1-31)
│ │ │ ┌───────────── mes (1-12)
│ │ │ │ ┌───────────── día de la semana (0-6)
* * * * *

Caracteres especiales: * (cualquiera), , (lista), - (rango), / (paso)

Info

Online Cron Expression Parser - Build and Validate Crontab

What is cron and how do crontab expressions work?

Cron is the task scheduler of Unix and Linux systems, running commands at specific times. A cron expression says when to run using five or six fields: minute (0-59), hour (0-23), day of month (1-31), month (1-12) and day of week (0-7, where both 0 and 7 mean Sunday). Each field accepts specific values, ranges such as 1-5, lists such as 1,3,5, intervals such as */15 for every fifteenth unit, and combinations of those. For example, "0 9 * * 1-5" means nine in the morning, Monday to Friday. The syntax is powerful but cryptic, which is exactly why a parser saves you from mistakes.

Cron syntax: fields, operators and examples

The cron operators are the asterisk (*) for every value, the comma (,) for a list of specific values (1,15 means the 1st and the 15th), the hyphen (-) for a range (1-5 is Monday to Friday), and the slash (/) for an interval (*/10 means every ten). Common examples: "0 * * * *" runs on the hour; "*/15 * * * *" every fifteen minutes; "0 0 * * *" every midnight; "0 0 1 * *" on the first day of each month; "0 0 * * 0" every Sunday at midnight; and "30 4 1,15 * *" at 04:30 on the 1st and the 15th. This tool translates an expression into plain language and lists the upcoming runs.

Cron across contexts: Linux, Kubernetes and cloud

The standard five-field cron syntax is what Linux and Unix crontab use. Variants exist: extended cron with a seconds field (six fields, used by Spring and Quartz), the Kubernetes CronJob format, AWS CloudWatch Events and EventBridge, Google Cloud Scheduler, Azure Functions timers, and GitHub Actions scheduled workflows. The base is the same everywhere, but each platform adds its own extensions or restrictions. This tool parses the standard five-field format, which is compatible with the majority of systems.

If you work with this tool, you will probably also find these useful UUID Generator, Password Generator, Lorem Ipsum Generator, Palette Generator.

Frequently asked questions

How do I run a cron job every 5 minutes during business hours only?

Combine the fields: "*/5 9-18 * * 1-5" runs every five minutes between 09:00 and 18:59, Monday to Friday. Remember that hours use the 24-hour clock and the server time zone applies. For more complex calendars, such as skipping public holidays, you will need extra logic inside your script.

What does the sixth field mean in some cron expressions?

The sixth field is a seconds field, a non-standard extension used by systems such as Quartz Scheduler in Java, Spring and others. The original Unix cron has only five fields. When a platform supports six, the first one is seconds (0-59) and every other field shifts right by one. Check the documentation of your specific system.

Can cron run on specific dates such as the last day of the month?

Standard cron has no direct support for the last day of the month. The workarounds are to run on the 1st with logic that processes the previous month, to schedule on 28-31 and let the script check whether today is really the last day, or to move to a more expressive scheduler such as systemd timers or a cloud scheduler.

How do I debug a cron job that never runs?

Work through the checklist: is the cron service running (systemctl status cron); does the user own the entry (crontab -l); does the command work when you run it by hand; are all paths absolute, since cron does not load your shell PATH; does the script have execute permission; what do the logs in /var/log/syslog or journalctl say. Redirecting output to a file is the fastest way to see the error: "* * * * * /script.sh > /tmp/cron.log 2>&1".

© 2026
Roberto Hernando
|