Cron Expression Generator Online
Build cron expressions visually with preset schedules or field-by-field inputs. Get an instant plain-English description of your schedule. No signup, runs entirely in your browser.
Runs at 9 AM on weekdays (Mon–Fri).
How to Build a Cron Expression
- 1Click a preset to start from a common schedule, or set each field manually.
- 2Adjust the five fields: Minute, Hour, Day of Month, Month, and Day of Week.
- 3Read the plain-English description below the fields to confirm the schedule is correct.
- 4Click Copy Expression and paste it into your crontab, CI pipeline, or cloud scheduler.
Cron Field Quick Reference
Each field accepts a specific value, a wildcard (*), a step value (*/5), a range (1-5), or a list (1,3,5). Combining these lets you express nearly any recurring schedule. The most common gotcha is day of month vs day of week — if you set both, most cron daemons will fire on either condition matching, not both simultaneously.
Common Cron Patterns
Step values (*/n)
*/15 * * * * — every 15 minutes. */2 * * * * — every 2 minutes. Steps divide the field range evenly starting from 0.
Ranges (n-m)
0 9-17 * * 1-5 — every hour from 9 AM to 5 PM on weekdays. Ranges are inclusive on both ends.
Lists (a,b,c)
0 0 1,15 * * — at midnight on the 1st and 15th of every month. Great for bi-monthly tasks.
Monthly on last day
Standard cron cannot reference "last day of month" directly. Use a wrapper script that checks date +%d against the last day, or use a platform like AWS EventBridge that supports L.
Timezone awareness
Unix cron runs in the system timezone. Cloud schedulers (GitHub Actions, AWS, GCP) often default to UTC. Always check which timezone your scheduler uses to avoid off-by-one-hour bugs.
Test before deploying
Paste your expression into a cron debugger or this tool's description output to confirm the next 5 scheduled fire times before adding it to production crontabs.
Frequently Asked Questions
What is a cron expression?
A cron expression is a string of five fields (minute, hour, day of month, month, day of week) that defines a recurring schedule for automated tasks. It is used in Unix-like systems via the crontab file and in many cloud schedulers and CI/CD tools.
What do the five fields mean?
From left to right: minute (0–59), hour (0–23), day of month (1–31), month (1–12), and day of week (0–6, where 0 is Sunday). An asterisk (*) means "every value". A slash (*/5) means "every 5th value". A hyphen (1-5) defines a range.
How do I run a job every 15 minutes?
Use the expression */15 * * * *. The */15 in the minute field means "at 0, 15, 30, and 45 minutes past every hour". Click the "Every 15 minutes" preset button to apply it instantly.
How do I run a job on weekdays only?
Set the day of week field to 1-5, which covers Monday through Friday. For example, 0 9 * * 1-5 runs at 9 AM on every weekday. Click the "Every weekday at 9am" preset to apply this.
What is the difference between day of month and day of week?
Day of month (field 3) specifies a calendar date — e.g. the 1st or 15th. Day of week (field 5) specifies a weekday — e.g. Monday. When both are non-asterisk, most cron implementations run when either condition is true (OR logic), not both.
Does cron support seconds?
Standard Unix cron does not support seconds — the smallest interval is one minute. Some tools like Quartz Scheduler (Java) and AWS EventBridge extend the syntax to include a seconds field, but that is non-standard.
Is my data private?
Yes. The tool runs entirely in your browser. No expressions or schedule data are sent to any server.