cronuru
Patterns

Cron Patterns

Per-pattern landing pages for the schedules you'll actually write. Each one includes plain-English explanation, next-run times, and copy-paste code snippets for Unix, Quartz, Kubernetes, AWS EventBridge, Spring, and GitHub Actions.

46 patterns
0 0 * * *

Daily at Midnight

Runs once a day at 00:00 (midnight). One invocation per day.

*/5 * * * *

Every 5 Minutes

Runs every 5 minutes — at :00, :05, :10, …, :55 of every hour, every day.

0 * * * *

Every Hour

Runs at the top of every hour — :00 of every hour, every day. 24 invocations per day.

*/15 * * * *

Every 15 Minutes

Runs every 15 minutes — at :00, :15, :30, :45 of every hour, every day. This is also the every-quarter-hour schedule; the two names describe the same expression.

*/10 * * * *

Every 10 Minutes

Runs every 10 minutes — at :00, :10, :20, :30, :40, :50 of every hour, every day.

0 9 * * 1-5

Weekdays at 9 AM

Runs at 09:00 Monday through Friday — 5 invocations per week, skipping Saturday and Sunday.

* * * * *

Every Minute

Runs every minute — :00, :01, :02, …, :59 of every hour, every day. The highest frequency standard cron supports.

0 0 1 * *

First Day of Month

Runs at 00:00 on the 1st of every month — 12 invocations per year.

0 9 * * *

Daily at 9 AM

Runs once a day at 09:00 (9 AM). One invocation per day. Common morning-kickoff schedule.

*/30 * * * *

Every 30 Minutes

Runs every 30 minutes — at :00 and :30 of every hour, every day.

0 */2 * * *

Every 2 Hours

Runs every 2 hours at the top of the hour — 00:00, 02:00, 04:00, …, 22:00. 12 invocations per day.

0 0 28-31 * *

Last Day of Month

Runs at 00:00 on the 28th-31st (the Unix-cron workaround). Quartz, EventBridge, and Spring support `L` for true last-day-of-month.

0 12 * * *

Daily at Noon

Runs once a day at 12:00 (noon). One invocation per day.

0 0 * * 1

Every Monday

Runs at 00:00 every Monday — 1 invocation per week, on the Unix day-of-week 1 (Monday).

0 */3 * * *

Every 3 Hours

Runs every 3 hours at the top of the hour — 00:00, 03:00, 06:00, 09:00, 12:00, 15:00, 18:00, 21:00. 8 invocations per day.

0 0 1,15 * *

1st and 15th of Every Month

Runs at 00:00 on the 1st and 15th of every month — 24 invocations per year, the semi-monthly cadence.

*/2 * * * *

Every 2 Minutes

Runs every 2 minutes — at :00, :02, :04, …, :58 of every hour. 30 invocations per hour, 720 per day.

0 */6 * * *

Every 6 Hours

Runs every 6 hours at the top of the hour — 00:00, 06:00, 12:00, 18:00. 4 invocations per day.

0 9-17 * * 1-5

Business Hours (Hourly, 9 AM–5 PM Weekdays)

Runs hourly at :00 from 09:00 to 17:00, Monday through Friday — 9 runs per weekday, none overnight or on weekends.

0 */12 * * *

Every 12 Hours

Runs every 12 hours at the top of the hour — 00:00 and 12:00 every day. 2 invocations per day.

0 */4 * * *

Every 4 Hours

Runs every 4 hours at the top of the hour — 00:00, 04:00, 08:00, 12:00, 16:00, 20:00. 6 invocations per day.

0 0 * * 5

Every Friday

Runs at 00:00 every Friday — 1 invocation per week, on Unix day-of-week 5 (Friday).

0 0 * * 6,0

Weekends

Runs at 00:00 on Saturday and Sunday — 2 invocations per week, skipping weekdays.

0 0 1 1 *

Yearly (January 1st at Midnight)

Runs at 00:00 on January 1st every year — 1 invocation per year.

*/20 * * * *

Every 20 Minutes

Runs every 20 minutes — at :00, :20, :40 of every hour, every day. 3 invocations per hour.

0 0,12 * * *

Twice Daily (Midnight and Noon)

Runs twice a day at 00:00 and 12:00 — midnight and noon. 2 invocations per day.

0 */8 * * *

Every 8 Hours

Runs every 8 hours at the top of the hour — 00:00, 08:00, 16:00. 3 invocations per day, aligned to 8-hour shifts.

0 0 * * 0

Every Sunday

Runs at 00:00 every Sunday — 1 invocation per week. This is what the @weekly shortcut expands to.

0 0 1 */3 *

Quarterly (1st of Every 3rd Month)

Runs at 00:00 on the 1st of January, April, July, and October — 4 invocations per year, once per calendar quarter.

0 17 * * 1-5

Weekdays at 5 PM

Runs at 17:00 (5 PM) Monday through Friday — 5 invocations per week, skipping weekends.

0 0 * * 2

Every Tuesday

Runs at 00:00 every Tuesday — 1 invocation per week, on Unix day-of-week 2 (Tuesday).

0 0 15 * *

15th of Every Month

Runs at 00:00 on the 15th of every month — 12 invocations per year, the mid-month cadence.

*/45 * * * *

Every 45 Minutes

`*/45 * * * *` does NOT run every 45 minutes — it fires at :00 and :45, leaving alternating 45- and 15-minute gaps. True 45-minute spacing needs a 3-line crontab aligned to a 3-hour cycle, or an interval timer.

0 0 * * 3

Every Wednesday

Runs at 00:00 every Wednesday — 1 invocation per week, on Unix day-of-week 3 (Wednesday).

0 0 * * 4

Every Thursday

Runs at 00:00 every Thursday — 1 invocation per week, on Unix day-of-week 4 (Thursday).

0 0 * * 6

Every Saturday

Runs at 00:00 every Saturday — 1 invocation per week, on Unix day-of-week 6 (Saturday).

0 17 * * *

Daily at 5 PM

Runs at 17:00 (5 PM) every day including weekends — 365 invocations a year. Hour 17, because cron uses a 24-hour clock with no AM/PM.

*/10 * * * * *

Every 10 Seconds

Runs every 10 seconds. Requires a seconds-aware dialect — Spring or Quartz — because standard Unix cron is minute-precision only.

*/15 * * * * *

Every 15 Seconds

Runs every 15 seconds — at :00, :15, :30, :45 of each minute. Requires a seconds-aware dialect (Spring or Quartz); standard Unix cron is minute-precision only.

*/20 * * * * *

Every 20 Seconds

Runs every 20 seconds — at :00, :20, :40 of each minute. Requires a seconds-aware dialect (Spring or Quartz); standard Unix cron is minute-precision only.

*/30 * * * * *

Every 30 Seconds

Runs every 30 seconds (twice a minute). Requires a seconds-aware dialect — Spring or Quartz — because standard Unix cron is minute-precision only.

*/45 * * * * *

Every 45 Seconds

`*/45 * * * * *` does NOT run every 45 seconds — it fires at :00 and :45, leaving alternating 45- and 15-second gaps. True spacing needs a 4-entry 3-minute cycle, or an interval timer.

*/5 * * * * *

Every 5 Seconds

Runs every 5 seconds. Requires a seconds-aware dialect — Spring or Quartz — because standard Unix cron is minute-precision only.

0 1-23/2 * * *

Every Odd Hour

Runs at 01:00, 03:00, 05:00, …, 23:00 — 12 invocations a day on odd hours. The range start `1-23` is what shifts the step off even hours.

0 0 */14 * *

Every Other Week

`0 0 */14 * *` does NOT run every other week — the day-of-month field resets monthly, so it fires on the 1st, 15th and 29th: 35 runs a year, not 26.

* * * * * *

Every Second

Runs every second — the fastest a cron parser will schedule. Requires a seconds-aware dialect; standard Unix cron is minute-precision only.