Crontab Guru
Parse and explain cron expressions. Shows human-readable schedule description and next execution times.
What is a cron expression?
A cron expression is a string of 5 or 6 fields separated by spaces that represents a schedule. The fields are: minute (0-59), hour (0-23), day of month (1-31), month (1-12), day of week (0-6, 0=Sunday), and optional year.
What does * mean in cron?
The asterisk (*) means "every possible value" for that field. For example, * in the minute field means "every minute".
What is the difference between 0 0 * * * and 0 0 * * 1?
0 0 * * * runs at midnight every day. 0 0 * * 1 runs at midnight every Monday only. The last field (1) restricts it to Mondays.
Can I use step values like */5?
Yes. */5 in the minute field means "every 5 minutes" (0, 5, 10, 15...). You can also use ranges with steps like 1-30/5 meaning every 5 minutes from 1 to 30.
Is my cron expression sent to any server?
No. All parsing and calculation happens locally in your browser. Nothing is transmitted anywhere.
How do I run a cron job every 5 minutes?
Use */5 * * * * to run every 5 minutes. The */5 in the minute field means "every 5 minutes", and the remaining fields are wildcards.
What does 0 0 * * * mean?
0 0 * * * means "at minute 0, hour 0 (midnight), every day of month, every month, every day of week". It runs at midnight every day.
How do I schedule a job for weekdays only?
Use 0 9 * * 1-5 to run at 9:00 AM Monday through Friday. The range 1-5 in the day of week field covers Monday (1) to Friday (5).
What are the special characters in cron?
Cron supports several special characters: * (any value), , (list), - (range), / (step). For example, 1,3,5 means Monday, Wednesday, Friday; 1-5 means Monday through Friday.
How do I run a job on the first day of every month?
Use 0 0 1 * * to run at midnight on the 1st of every month. The "1" in the day of month field specifies the first day.
Can I use names instead of numbers?
Yes, some cron implementations allow names like JAN, FEB for months and MON, TUE for days of week. However, numeric values are more universally supported.
What is the 6-field cron syntax?
The 6-field syntax adds a seconds field at the beginning: seconds (0-59), minute, hour, day of month, month, day of week. This is used by some systems like Quartz Scheduler.
How do I run a job every hour?
Use 0 * * * * to run at minute 0 of every hour. This means it runs at the start of each hour (1:00, 2:00, 3:00, etc.).
What is the difference between day of month and day of week?
Day of month (1-31) specifies which day of the month to run. Day of week (0-6) specifies which day of the week to run. If both are specified (not *), the job runs when either condition is met.