Cron Expression Generator
Build a schedule with presets and five fields, or paste an existing expression like */15 * * * * to see what it means.
About Cron Expression Generator
Build a schedule with presets and five fields, or paste an existing expression like */15 * * * * to see what it means. This free Cron Expression Generator explains each field, warns when day-of-month and day-of-week use OR semantics, shows the next five local run times, and copies a crontab line or GitHub Actions schedule - all in your browser.
How to Use Cron Expression Generator
- Pick a preset (every minute, every 5 minutes, hourly, daily, weekly, or monthly) or edit the five fields.
- Or paste a full 5-field Unix cron into the paste box - the tool explains it field by field.
- Read the plain-English meaning and the next five run times in your local timezone.
- Copy the expression, a crontab line, or a GitHub Actions schedule snippet.
- If both day-of-month and day-of-week are set, check the OR warning before you deploy.
Cron Expression Generator Examples
What does */15 * * * * mean?
Paste */15 * * * *. The breakdown shows minute = every 15 minutes from 0-59, and the other fields are every hour, every day, every month, every weekday. Next runs are :00, :15, :30, :45.
Weekdays at 09:30
Set minute 30, hour 9, day-of-week 1-5. The expression becomes 30 9 * * 1-5 and runs Monday through Friday at 09:30 local time.
First of the month at midnight
Use the Monthly preset (0 0 1 * *) for backups or reports that should fire on day 1 only.
DOM + DOW gotcha
0 0 1 * 1 means the 1st of the month OR Mondays at midnight on classic Unix cron - not only Mondays that fall on the 1st. The tool surfaces that warning.
Frequently Asked Questions about Cron Expression Generator
- What are the five fields in a Unix cron expression?
- Minute (0-59), hour (0-23), day of month (1-31), month (1-12 or JAN-DEC), and day of week (0-7 or SUN-SAT, where 0 and 7 are Sunday). Special characters include * (any), lists (1,15), ranges (1-5), and steps (*/15).
- What does */15 * * * * mean?
- It means every 15 minutes: at minutes 0, 15, 30, and 45 of every hour, every day. Paste it into this tool to see the field breakdown and the next five run times.
- Why does setting day-of-month and day-of-week together warn me?
- On classic Vixie/Unix cron, when both are restricted the day matches if either field matches (OR), not both (AND). That surprises many developers. Clear one of the fields if you want a single constraint.
- Are next run times in UTC or local time?
- They use your browser's local timezone. Production crontabs and GitHub Actions usually evaluate in UTC (or a configured timezone). Convert before you deploy if the server is not in your local zone.
- Can I use this for GitHub Actions schedules?
- Yes. After you build or paste an expression, copy the GitHub Actions schedule snippet (schedule / cron). GitHub Actions uses standard 5-field cron in UTC.
- Is my expression uploaded?
- No. Parsing, explanation, and next-run calculation all run in your browser. Nothing is sent to a server.
Related Tools
Regex Tester
Test JavaScript regular expressions in your browser. See match groups, flags, and highlights - nothing is uploaded.
Unix Timestamp Converter
Convert Unix timestamps (seconds or milliseconds) into ISO 8601, UTC, and your local date/time. Convert local dates back into Unix seconds and milliseconds. Runs in your browser.
UUID Generator
Generate UUID v4 and GUID identifiers in your browser. Create one or many random UUIDs for databases, APIs, and testing.