Cron Expression Generator
Build cron schedules visually and translate any cron expression to plain English. Choose a preset or fill in the fields manually.
Special Characters
| * | Any / every value |
| */N | Every N units (step) |
| N-M | Range from N to M |
| N,M | List: N and M |
| N-M/S | Range with step S |
Common Examples
| * * * * * | Every minute |
| 0 * * * * | Every hour |
| 0 0 * * * | Daily at midnight |
| 0 9 * * 1-5 | Weekdays at 9 AM |
| 0 0 1 * * | Monthly on 1st |
| */5 * * * * | Every 5 minutes |
What Is a Cron Expression?
A cron expression is a compact notation for defining recurring schedules. It originates from the Unix cron daemon — a background process that runs scheduled commands at specified times. Cron expressions are now used across virtually every platform that supports scheduled tasks: Linux systems, AWS EventBridge, GitHub Actions, Kubernetes CronJobs, cloud functions, and automation tools like Zapier and Make.com.
A standard cron expression has five space-separated fields. From left to right: 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). Some platforms add a sixth field for seconds at the beginning or for a year at the end.
Cron Field Values and Special Characters
Each field accepts the following patterns:
*— Wildcard: matches every valid value.* * * * *runs every minute.*/N— Step: matches every Nth value.*/5in the minute field runs at 0, 5, 10, 15 … 55.N-M— Range: matches values from N to M inclusive.1-5in the weekday field means Monday through Friday.N,M,O— List: matches specific values.0,6in the weekday field means Sunday and Saturday.N-M/S— Stepped range: matches every Sth value within the range N–M.
How to Read Common Cron Expressions
* * * * * — Every minute, around the clock. Rarely used in production due to the load it creates.
0 * * * * — At the top of every hour (minute 0). A common schedule for hourly data syncs.
0 0 * * * — Every day at midnight (00:00). Used for daily database backups, report generation.
0 9 * * 1-5 — At 9:00 AM every Monday through Friday. Business-hours notifications or reports.
0 0 1 * * — At midnight on the 1st of every month. Monthly billing, archiving tasks.
*/15 * * * * — Every 15 minutes. Health checks, metrics collection, cache refreshes.
0 2 * * 0 — At 2:00 AM every Sunday. Weekly maintenance window.
Cron Timezone Behavior
Standard Unix cron runs in the local system timezone. Cloud-based cron schedulers (AWS EventBridge, Google Cloud Scheduler, GitHub Actions) default to UTC unless you specify a timezone. Always check which timezone your cron runner uses — a job scheduled for 0 9 * * * will run at 9 AM local time on a server-level cron but at 9 AM UTC on most cloud schedulers (which may be 4 or 5 AM in New York).
Best practice: schedule cloud cron jobs in UTC and document the intended local time in comments. Avoid scheduling critical jobs at DST transition hours (2:00 or 3:00 AM local time in DST-observing regions), as these hours can be ambiguous or skipped entirely.
Frequently Asked Questions
What is a cron expression?
A cron expression is a five-field string defining a recurring schedule. Fields represent: minute, hour, day of month, month, and day of week. It originated in the Unix cron scheduler and is now used across cloud platforms, CI systems, and automation tools.
What does * mean in a cron expression?
An asterisk (*) is a wildcard meaning "every valid value for this field." * * * * * runs every minute of every hour every day. Combine it with a step — */5 — to run every 5 minutes.
How do I run a cron job every 5 minutes?
Use */5 * * * *. The */5 in the minute field means "every 5 minutes." Similarly, */10 * * * * runs every 10 minutes, and */30 * * * * runs at minutes 0 and 30 of every hour.
What are the five fields in a cron expression?
Left to right: (1) Minute 0–59, (2) Hour 0–23, (3) Day of month 1–31, (4) Month 1–12, (5) Day of week 0–7 (0 and 7 both = Sunday). Some platforms prefix a 6th field for seconds.
How do I schedule a cron job only on weekdays?
Use 1-5 in the day-of-week field (1=Monday, 5=Friday). Example: 0 9 * * 1-5 runs at 9:00 AM every weekday. 30 17 * * 1-5 runs at 5:30 PM Monday through Friday.