Cron Expression Generator
Generate cron expressions for scheduling automated tasks, backups, and recurring jobs. Visual builder with presets, custom configuration, and human-readable descriptions. See next execution times instantly.
Recommended Settings
Common Patterns
- •Every 5 minutes: */5 * * * *
- •Weekdays at 9 AM: 0 9 * * 1-5
- •First day of month: 0 0 1 * *
Best Practices
- •Test expressions with next run times before deployment
- •Use specific times instead of * when possible
- •Document your cron schedules in code comments
Pro Tips
- •Field order: minute, hour, day, month, weekday
- •Day 0 and 7 both represent Sunday
- •Use */N for 'every N' intervals (e.g., */15 = every 15)
Most Popular
Most users schedule daily jobs at midnight (0 0 * * *)
When to Use This Tool
Schedule automated tasks in CI/CD pipelines, deployment scripts, and DevOps workflows. Create cron jobs for system maintenance, log rotation, database backups, and automated testing runs.
Recommended: DevOps & automation
Set up regular backup schedules for databases, files, and configurations. Ensure data safety with hourly snapshots, nightly full backups, or weekly archival processes running at off-peak hours.
Recommended: Data management
Generate and send reports on a schedule: daily sales summaries, weekly analytics, monthly financial statements. Perfect for business intelligence dashboards and automated email reports.
Recommended: Business reporting
How It Works
Choose a preset or click Custom for fine control
Configure each time field using *, numbers, ranges, or lists
View the generated cron expression and description
Check next execution times to verify schedule
100% Private
Files never leave your device. All processing happens locally in your browser.
Lightning Fast
Powered by Client-side JavaScript with cronstrue and cron-parser for optimal performance on modern browsers.
Open Source
Built with verified, open-source libraries. Fully transparent.
Frequently Asked Questions
What is a cron expression?
A cron expression is a string format used to schedule automated tasks at specific times or intervals. It consists of 5 fields: minute (0-59), hour (0-23), day of month (1-31), month (1-12), and day of week (0-6, where 0=Sunday).
What do the special characters mean?
* means 'any value', / means 'step values' (e.g., */5 = every 5), - means 'range' (e.g., 1-5), and , means 'list' (e.g., 1,3,5). For example, */15 in the minute field means 'every 15 minutes'.
How do I schedule a job for weekdays only?
Use 1-5 in the day of week field. For example, '0 9 * * 1-5' runs at 9:00 AM Monday through Friday. Day 0 and 7 both represent Sunday, and days 1-5 represent Monday through Friday.
Can I test my cron expression?
Yes! The tool shows you the next 5 execution times for your expression, so you can verify it will run when you expect. The human-readable description also helps confirm your schedule is correct.
What's the difference between day of month and day of week?
Day of month (1-31) schedules by calendar date, while day of week (0-6) schedules by weekday. If both are specified (not *), the job runs when EITHER condition is met, not both. Use * for one if you only want to schedule by the other.