Cron expression editor

The cron expression generator

Write a cron schedule and instantly decode it with a field-by-field breakdown, including the exact times it will run next.

At every 5th minute

*/5minute0–59
*hour0–23
*day of month1–31
*month1–12 / JAN–DEC
*day of week0–6 / SUN–SAT
Schedule

Next scheduled runs

The upcoming times this expression fires, in your local time zone.

  1. 2026-06-22 06:50in 2 min
  2. 2026-06-22 06:55in 7 min
  3. 2026-06-22 07:00in 12 min
  4. 2026-06-22 07:05in 17 min
  5. 2026-06-22 07:10in 22 min
Examples

Start from a common schedule

Click any example to load it into the editor above.

Reference

Cron syntax cheatsheet

*any value (every minute, hour, …)
,value list separator — e.g. 1,15,30
-range of values — e.g. 1-5 (Mon–Fri)
/step values — e.g. */15 (every 15)
@@hourly @daily @weekly @monthly @yearly

A cron expression has five fields — minute hour day-of-month month day-of-week — separated by spaces. When both day-of-month and day-of-week are restricted, the job runs when either matches.

FAQ

Cron expressions, explained

A cron expression is a string of five fields – minute, hour, day of month, month, and day of week – that tells a scheduler when to run a job. For example, 0 9 * * 1-5 runs at 09:00 every weekday. Cron is the standard job scheduler on Linux, macOS, and most Unix-like systems.

Yes. Create a webhook in your Pocket Alert dashboard and have your cron job call it on success or failure – you get an instant push notification on your phone every time it runs. Perfect for backups, scheduled jobs, and dead-man's-switch alerts. Sign up free if you don't have an account yet.

Use the Pocket Alert CLI. Pipe your cron command through it and it sends a push with the exit status and output – for example 0 3 * * * backup.sh | pocketalert. It is the simplest way to know whether a scheduled job actually finished. Sign up free to get started.

Read the five fields left to right: minute (0–59), hour (0–23), day of month (1–31), month (1–12), and day of week (0–6, where Sunday is 0). An asterisk * means "every". Paste any expression into the editor above and it decodes the schedule into plain English field by field.

There are four operators: * matches every value, a comma , lists specific values (1,15,30), a hyphen - defines a range (1-5 means Monday through Friday), and a slash / sets a step (*/15 means every 15). They can be combined, e.g. 0-30/5.

*/5 * * * * runs every 5 minutes, around the clock, every day. The */5 in the minute field is a step value that fires at minute 0, 5, 10, 15, and so on, while the four asterisks match every hour, day, month, and weekday.

Macros are shorthands for common schedules. @hourly equals 0 * * * *, @daily (or @midnight) equals 0 0 * * *, @weekly equals 0 0 * * 0, @monthly equals 0 0 1 * *, and @yearly (or @annually) equals 0 0 1 1 *. This tool expands them automatically.

When both the day-of-month and the day-of-week fields are restricted, cron runs the job when either one matches – not when both match. For example, 0 0 13 * 5 fires at midnight on the 13th of every month and on every Friday. This is the most common cron mistake.

The "Next scheduled runs" are calculated in your browser's local time zone. Most servers run cron in UTC, so always confirm your server's time zone before relying on the times – a job set for 09:00 local may fire at a different hour on the server.

Yes. The Pocket Alert crontab editor is completely free, runs entirely in your browser, and needs no signup. Connect it with Pocket Alert to get an instant push notification whenever your scheduled cron jobs succeed or fail.

Turn your cron jobs into push notifications

Wire your cron jobs to PocketAlert and get a push the moment a scheduled task succeeds or fails.