Recuro.

Cron Expression

A cron expression is a compact string that tells a scheduler when to run a task. It originated in Unix cron and is now used by virtually every job scheduling system — from Linux crontab to cloud-based services like Recuro.

A standard cron expression has five fields separated by spaces. Each field controls a different unit of time.

The five fields

Position Field Allowed values
1Minute0 – 59
2Hour0 – 23
3Day of month1 – 31
4Month1 – 12
5Day of week0 – 6 (Sunday = 0)

Reading left to right: 30 9 * * 1 means "minute 30, hour 9, any day of month, any month, Monday." In plain English: every Monday at 9:30 AM.

Special characters

Character Meaning Example
*Every possible value* * * * * — every minute
,List of values0 9,17 * * * — 9 AM and 5 PM
-Range of values0 9-17 * * * — every hour from 9 AM to 5 PM
/Step interval*/15 * * * * — every 15 minutes

Common examples

Expression Meaning
* * * * *Every minute
*/5 * * * *Every 5 minutes
0 * * * *Every hour, on the hour
0 */2 * * *Every 2 hours
30 * * * *Every hour at minute 30
0 0 * * *Every day at midnight
0 9 * * *Every day at 9:00 AM
0 9 * * 1-5Weekdays at 9:00 AM
0 0 * * 0Every Sunday at midnight
0 0 1 * *First day of every month at midnight
0 0 1 1 *January 1st at midnight (yearly)
0 6,18 * * *6 AM and 6 PM every day
0 0 * * 1Every Monday at midnight
*/10 * * * *Every 10 minutes
0 0 15 * *15th of every month at midnight
0 8-17 * * 1-5Every hour during business hours, weekdays
5 0 * * *Every day at 12:05 AM
0 22 * * 5Every Friday at 10 PM

Non-standard shortcuts

Many schedulers also accept shorthand expressions:

Shorthand Equivalent
@yearly0 0 1 1 *
@monthly0 0 1 * *
@weekly0 0 * * 0
@daily0 0 * * *
@hourly0 * * * *
@rebootRun once at startup

Common mistakes

FAQ

What is */5 in cron?

The / is a step operator. */5 in the minute field means "every 5th minute" — so 0, 5, 10, 15, 20, and so on through 55. The full expression */5 * * * * runs a job every five minutes.

How do I run a job every 30 minutes?

Use */30 * * * *. This fires at minute 0 and minute 30 of every hour. Alternatively, 0,30 * * * * does the same thing explicitly.

What is the difference between 0 * * * * and * * * * *?

0 * * * * runs once per hour at the top of the hour. * * * * * runs every single minute — 60 times per hour. Always double-check which one you mean.

Cron expressions are the foundation of recurring background jobs. Unlike delayed jobs that run once at a future time, cron runs on a fixed repeating schedule. Need to build one? Try our free cron expression generator, or paste an existing expression into the cron expression explainer to translate it to plain English.

Stop managing infrastructure. Start scheduling jobs.

Recuro handles cron scheduling, retries, alerts, and execution logs -- so you can focus on building your product.

No credit card required