Cron job cheat sheet: every common schedule explained

A cron job cheat sheet with 18 common schedules, verified next-run times, special characters explained, and the mistakes that actually cause downtime.

Hosting & Dev · Cheat Sheet

By ANUPRESS Team · Last reviewed August 2026 · 7 min read

A cron expression is five fields, minute, hour, day of month, month, day of week, read left to right. This cron job cheat sheet has the 18 schedules that cover almost every real use case, each with its actual next run time verified against a real cron parser, not typed from memory.

Cron job cheat sheet illustration showing a schedule grid with clock icons
Every common schedule, one page, bookmark it

The five fields, in order

Field order, never changes
 ┌───────────── minute       (0-59)
 │ ┌─────────── hour         (0-23)
 │ │ ┌───────── day of month (1-31)
 │ │ │ ┌─────── month        (1-12)
 │ │ │ │ ┌───── day of week  (0-6, both 0 and 7 = Sunday)
 │ │ │ │ │
 * * * * *

Day-of-week is the field that trips people up: 0 and 7 both mean Sunday, 1 is Monday, so a range like 1-5 is Monday through Friday, not what most people’s calendar app has trained them to expect.

The cron job cheat sheet

ExpressionRuns
* * * * *Every minute
*/5 * * * *Every 5 minutes
*/15 * * * *Every 15 minutes
*/30 * * * *Every 30 minutes
0 * * * *Every hour, on the hour
0 */2 * * *Every 2 hours
0 8,20 * * *8 AM and 8 PM, daily
0 0 * * *Every day at midnight
0 9 * * *Every day at 9 AM
30 3 * * *Every day at 3:30 AM
0 0 */2 * *Midnight, every 2 days
0 9 * * 1-59 AM, weekdays only
0 9 * * 19 AM, every Monday
0 0 * * 1,3,5Midnight, Mon/Wed/Fri
0 2 * * 02 AM, every Sunday
0 6 1,15 * *6 AM, on the 1st and 15th
0 0 1 * *Midnight, 1st of every month
0 0 1 1 *Midnight, January 1st, yearly

Need a schedule that’s not on this list?

Build one from dropdowns, or paste an expression someone else wrote to decode it, and get the actual next 5 run times, not a guess.

Open the cron expression builder

Special characters used throughout this cron job cheat sheet

CharacterMeansExample
*Any value* in hour = every hour
,A list of values8,20 = 8 AM and 8 PM
A range1-5 = Monday to Friday
/A step value*/15 = every 15 units

Mistakes that cost real downtime

  • Confusing */5 with “5 minutes from now”: */5 fires at :00, :05, :10, on the clock, not 5 minutes after whenever the job was set up
  • Forgetting server timezone: a schedule written assuming your local time can run hours off if the server runs in UTC, always check before relying on an exact time. The crontab man page is the authoritative source if your system’s exact behaviour is in question
  • Day-of-month and day-of-week both set: most cron implementations treat this as OR, not AND, so 0 0 1 * 1 runs on the 1st of the month AND every Monday, not only when both happen to coincide
  • Overlapping long-running jobs: a job scheduled every minute that occasionally takes 90 seconds will start stacking up instances unless something explicitly prevents overlap

Test it before you deploy it

This cron job cheat sheet is meant to be checked against reality, not trusted blindly: the safest way to confirm a new cron expression is to verify its next several run times against what you actually intended before it ever touches production, since a schedule that’s subtly wrong tends to fail silently rather than throw an error. A job meant for 9 AM weekdays that’s accidentally written as 9 AM every day won’t crash anything, it’ll just quietly run on Saturday too, and that kind of mistake can go unnoticed for weeks.

Two practical checks catch almost everything, and they’re worth applying to every schedule you pull from this cron job cheat sheet: confirm the day-of-week field matches what you expect (remembering 0 and 7 are both Sunday), and confirm the server’s actual timezone before trusting a specific hour. Most hosting control panels show cron logs somewhere, worth checking after the first few runs of anything new rather than assuming silence means success.

Frequently asked questions

What does */15 actually mean in cron?

Every 15 units of that field, starting from 0. In the minutes field, it fires at :00, :15, :30 and :45 on the clock, never simply “15 minutes after the last run.”

Do 0 and 7 both mean Sunday?

Yes, in the day-of-week field both 0 and 7 represent Sunday. Most people only ever see 0 used in practice, but both are valid and identical.

What timezone does my cron job run in?

Whatever timezone the server itself is set to, which is very often UTC on cloud hosting regardless of where you or your users are. Always verify server time before assuming a schedule matches your local clock.

How do I run something every weekday but not weekends?

Use 1-5 in the day-of-week field: 0 9 * * 1-5 runs at 9 AM Monday through Friday only.

Can I schedule something to run twice a day at specific times?

Yes, using a comma list in the hour field: 0 8,20 * * * runs at exactly 8 AM and 8 PM every day.

Bookmark this cron job cheat sheet for next time you need a schedule fast. For the rest of your site’s technical setup, see the complete developer tools guide. Last reviewed August 2026. See how we review and our affiliate disclosure.

ANUPRESS Team
ANUPRESS Team

ANUPRESS Team writes and builds everything on this site — reviews and 48+ free browser-based tools alike. We test what we review by actually using it, not by summarizing a spec sheet. Spot something wrong or want to know more about a specific piece? Reach us through the contact page.

Articles: 31