Mini Tools

Cron Expression Parser

Enter a cron expression to see what it means and when it runs next. Standard 5 fields (minute hour day month weekday); 6 fields are read as seconds + the standard 5.

Next runs

    Fields

    Cron syntax

    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ minute (0โ€“59)
    โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ hour (0โ€“23)
    โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ day of month (1โ€“31)
    โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€ month (1โ€“12 or JANโ€“DEC)
    โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€ day of week (0โ€“7 or SUNโ€“SAT; 0 and 7 are Sunday)
    โ”‚ โ”‚ โ”‚ โ”‚ โ”‚
    * * * * *  command
    SymbolMeaningExample
    *Every value* * * * * โ€” every minute
    ,List0 9,17 * * * โ€” at 9:00 and 17:00
    -Range0 9 * * 1-5 โ€” 9:00 Monday to Friday
    /Step*/10 * * * * โ€” every 10 minutes

    Special strings

    @yearly / @annually0 0 1 1 *
    @monthly0 0 1 * *
    @weekly0 0 * * 0
    @daily / @midnight0 0 * * *
    @hourly0 * * * *
    @rebootOnce, at startup

    Gotchas

    • Day of month and day of week are OR-ed when both are set: 0 0 13 * 5 runs on every 13th and every Friday, not only on Friday the 13th.
    • Time zone: cron uses the serverโ€™s local time zone unless configured otherwise (e.g. CRON_TZ). Check whether your server runs in UTC.
    • Quartz / Spring cron has an extra seconds field and supports ?, L, W and #; this parser supports the seconds field and ?, but not L, W or #.

    Frequently asked questions

    What does */5 mean in cron?

    A step: โ€œevery 5th valueโ€ of the fieldโ€™s range. In the minute field, */5 means at minutes 0, 5, 10, โ€ฆ 55.

    How do I run a cron job every weekday?

    Use 1-5 in the day-of-week field, for example 0 9 * * 1-5 runs at 09:00 Monday to Friday.

    Is Sunday 0 or 7?

    Both. Standard cron accepts 0 and 7 for Sunday; you can also write SUN.

    Which time zone are the next runs shown in?

    Your browserโ€™s local time zone by default. Tick UTC to see the schedule as a server running in UTC would execute it.

    Why does my job run more often than expected?

    If both day-of-month and day-of-week are restricted, cron runs when either matches. Set one of them to * to require only the other.