Build and check cron expressions. Pick a preset or edit the five fields, and see the next run times in your time zone. Runs entirely in your browser.
How to use the Cron Generator
Pick a preset or type a cron expression in the five fields.
See each field labelled and validated as you edit.
Read the next run times, calculated in your local time zone.
A cron expression is a compact string of five fields that tells a scheduler when to run a task: minute, hour, day of month, month and day of week. It is powerful but easy to get wrong, and a misplaced asterisk can mean a job fires every minute instead of once a day.
Start from a common preset (every hour, every day at midnight, every Monday at 9 AM) or build a custom expression field by field, with each field labeled and validated as you type.
Crucially, it previews the next five run times in your browser's local time zone, so you can confirm the schedule actually does what you intended before you deploy it.
Each field accepts more than a single value: an asterisk means every value, a list like MON,WED,FRI picks several, a range like MON-FRI spans days, and a step like */15 in the minute field runs at 0, 15, 30 and 45 past the hour.
The output works with standard cron on Linux and macOS, crontab, AWS EventBridge, GitHub Actions schedules and most job-scheduling libraries.
One classic trap is setting both day-of-month and day-of-week: standard cron then runs when either matches, not both, so a job can fire more often than expected. Leaving one of the two as an asterisk avoids the surprise.
This tool targets standard five-field cron, so platform extensions like a seconds field or @reboot are not produced here. Remember too that the job runs in the executing server's time zone, which may differ from the local preview.
Frequently asked questions
In order: minute, hour, day of month, month and day of week. An asterisk means every value, so * * * * * runs every minute.
Use a step value in the minute field: */15 * * * * runs at minute 0, 15, 30 and 45 of every hour.
Numbers 0 to 6 (Sunday is 0, and 7 also means Sunday) or three-letter names like MON. You can use ranges (MON-FRI) and lists (MON,WED,FRI).
When both day-of-month and day-of-week are set, standard cron runs on either match, not both. Leave one as * to avoid surprises.
This generator targets standard five-field cron. Some platforms add a seconds field or extensions like @reboot, which are not produced here.
The preview shows the next runs in your browser's local time zone. The server that executes the job uses its own zone, so confirm that matches.
Embed this tool
Add this tool to your own website. Copy the snippet below; it stays up to date automatically.
<iframe src="https://monu.tools/embed/en/cron-generator" width="100%" height="640" style="border:1px solid #e5e5e5;border-radius:12px;max-width:680px" loading="lazy" title="Monu Tools"></iframe>Related tools
Format, beautify and validate JSON online with clear error messages for invalid input.
Encode text to Base64 or decode Base64 back to text. UTF-8 safe with automatic direction detection.
Generate 5 random RFC 4122 version 4 UUIDs at once. The input is ignored; run again for a new batch.
Minify and validate JSON in your browser, and see how many bytes you save.