Cron Expression GeneratorDeveloper Tools
Build a crontab schedule from a frequency picker or field by field, with a description and next runs.
The schedule for a job that runs every five minutes is one short line, */5 * * * *. The mistakes come from the parts around it: the hour window, the days, and the time zone of the server.
A cron line has five fields: minute, hour, day of month, month, and day of week. */5 in the minute field means every fifth minute from the start of the hour, so the job runs at :00, :05, :10, and so on up to :55. Write 5 * * * * instead and the job runs once an hour, at minute 5. Nothing warns you, and the job runs twelve times less often than you meant.
Time zones cause the rest of the trouble. The machine that runs cron uses its own time zone, often UTC, and GitHub Actions always runs schedules in UTC. A job limited to 9-17 runs in the server's working hours, not yours. Intervals also restart every hour: with every 7 minutes, the job runs at :56 and again at :00, four minutes later. Five divides 60 evenly, so a five-minute interval never has that short gap.
Open the Cron Expression Generator and choose Every N minutes under Run. Enter 5, set the hour window to 0 and 23, and tick every day to get */5 * * * *. To run only during working hours, narrow the window and the days: the picker turns the hours 9 to 17 into 9-17 and Monday to Friday into 1-5, which gives */5 9-17 * * 1-5. The page describes the schedule in plain English and lists the next five runs. Press Copy expression and paste the line in front of your command in crontab -e.
To check a line you already have, paste it into the Cron Expression Parser. It explains each of the five fields, writes the schedule in plain English, and lists the next run times in your local time zone or in UTC. Switch to UTC to see what a server set to UTC will actually do. It reads lists, ranges, steps, month and day names such as JAN and SUN, and macros such as @hourly.
crontab -e on the server and add the line, such as */5 * * * * /path/to/script.sh.*/5 * * * *. It runs at minutes 0, 5, 10, and so on up to 55 of every hour.
Limit the hour and day fields. */5 9-17 * * 1-5 runs every 5 minutes from 09:00 to 17:55, Monday to Friday.
The time zone of the machine running the cron daemon, unless the crontab sets CRON_TZ or TZ. GitHub Actions always uses UTC.
Yes. Both use the standard five-field format.
Tools used in this guide
Build a crontab schedule from a frequency picker or field by field, with a description and next runs.
Explains cron schedules in plain English and lists the next run times.