Cron Expression Cheatsheet: Syntax, Examples & Tips
A quick-reference guide to the cron expression format. Bookmark this page and come back whenever you need to build a schedule.
The Five Fields
Every standard cron expression has five fields, each separated by a space. From left to right:
| Field | Allowed Values | Description |
|---|---|---|
| Minute | 0 - 59 | Minute of the hour |
| Hour | 0 - 23 | Hour of the day (24h format) |
| Day | 1 - 31 | Day of the month |
| Month | 1 - 12 | Month of the year |
| Weekday | 0 - 7 | Day of the week (0 and 7 = Sunday) |
Special Characters
Beyond plain numbers, cron supports several special characters that give you flexible scheduling options:
| Character | Name | Usage |
|---|---|---|
| * | Wildcard | Matches every value in the field |
| , | List | Specifies multiple values: 1,15 means the 1st and 15th |
| - | Range | Defines a range: 1-5 means Monday through Friday |
| / | Step | Defines intervals: */10 means every 10 units |
Common Schedules
Here are the most frequently used cron expressions. Copy any of them directly into your scheduler:
| Expression | Schedule |
|---|---|
| * * * * * | Every minute |
| */5 * * * * | Every 5 minutes |
| */15 * * * * | Every 15 minutes |
| */30 * * * * | Every 30 minutes |
| 0 * * * * | Every hour (on the hour) |
| 0 */2 * * * | Every 2 hours |
| 0 */6 * * * | Every 6 hours |
| 0 0 * * * | Every day at midnight |
| 0 9 * * * | Every day at 9:00 AM |
| 0 9 * * 1-5 | Weekdays at 9:00 AM |
| 0 0 * * 0 | Every Sunday at midnight |
| 0 0 1 * * | First day of every month at midnight |
| 0 0 1 1 * | January 1st at midnight (yearly) |
| 30 4 * * 1 | Every Monday at 4:30 AM |
Combining Special Characters
You can combine characters to create precise schedules. Here are some more advanced examples:
0 9,17 * * 1-5At 9:00 AM and 5:00 PM, Monday through Friday. Useful for sending start-of-day and end-of-day reports.
0 0 1,15 * *At midnight on the 1st and 15th of every month. Common for bi-monthly billing cycles.
*/10 9-17 * * 1-5Every 10 minutes during business hours (9 AM to 5 PM), weekdays only. Ideal for polling an external API during working hours without wasting resources overnight.
0 3 * * 6Every Saturday at 3:00 AM. A common choice for weekly database backups during low-traffic hours.
Common Pitfalls
- Day-of-month vs day-of-week overlap. Setting both fields to non-wildcard values creates an OR condition in most implementations, not an AND. The job runs when either condition matches.
- Timezone awareness. Cron expressions do not include timezone information. Make sure you know which timezone your scheduler uses. CronJobPro lets you set a timezone per job.
- February and the 31st. If you schedule a job for day 31, it will simply not run in months with fewer days. It will not roll over to the next month.
- Sunday = 0 or 7. Both values represent Sunday. Use whichever feels more natural, but be consistent.
Build Expressions Visually
If you prefer not to write cron expressions by hand, use our free Cron Expression Generator. It lets you select a schedule using dropdowns and toggles, instantly previews the next 5 execution times, and generates the expression for you to copy.
Put your cron expressions to work
Schedule HTTP requests with automatic retries, monitoring, and alerts. Free for up to 5 jobs.
Start Free — No Credit Card Required