Skip to content

Crontab every 5 minutes

*/5 * * * * means “Every 5 minutes”. It runs 288 times a day. Also searched as: crontab each 5 minutes.

100% Local Browser Execution • Zero Server Uploads • Air-Gap Safe

100% Local Tool Execution • Tool Inputs Never Leave Your Browser Cron field parser

Cron expression

*/5****

0–59

0–23

1–31

1–12 · JAN–DEC

0–6 · SUN–SAT

Reads as

Every 5 minutes

Next 7 runs

    crontab -e

    # m h dom mon dow command
    */5 * * * * /usr/local/bin/sync.sh >> /var/log/sync.log 2>&1

    Systemd timer (OnCalendar=)

    OnCalendar=*-*-* *:00/5:00

    Unit files: sync.service + sync.timer

    # /etc/systemd/system/sync.service
    [Unit]
    Description=sync (converted from cron)
    
    [Service]
    Type=oneshot
    ExecStart=/bin/sh -c '/usr/local/bin/sync.sh >> /var/log/sync.log 2>&1'
    
    # /etc/systemd/system/sync.timer
    [Unit]
    Description=Run sync on a schedule
    
    [Timer]
    OnCalendar=*-*-* *:00/5:00
    Persistent=true
    
    [Install]
    WantedBy=timers.target
    
    # Enable: sudo systemctl daemon-reload && sudo systemctl enable --now sync.timer

    CtrlEnter to run

    Wrong result, broken layout or an idea? Tell us about this tool.

    Crontab every 5 minutes Crontab Schedule and Systemd Timer & Security Architecture Banner

    This crontab generator and cron expression translator turns a five-field schedule such as */15 9-17 * * 1-5 into plain English and lists the next seven run times in both UTC and your local time zone. Use it as a cron expression generator when writing a new job, or as a crontab calculator to check what an existing line in production actually does.

    Installing “every 5 minutes” in your crontab

    Run crontab -e, add the line below, then save. Cron reloads the table automatically, and crontab -l confirms the entry was installed.

    */5 * * * * /usr/local/bin/sync.sh >> /var/log/sync.log 2>&1
    • Use absolute paths: cron runs with a minimal PATH (usually /usr/bin:/bin).
    • Redirect output (>> file 2>&1), otherwise cron tries to email it to the user.
    • Guard against overlap with flock -n /tmp/job.lock if one run can take longer than the interval (288 times a day).

    The five fields of a cron expression

    A standard cron expression has five space-separated fields, read left to right: minute (0–59), hour (0–23), day of month (1–31), month (1–12 or JAN–DEC) and day of week (0–6 or SUN–SAT, where 7 is also Sunday). A line in a crontab file adds the command after these five fields.

    Each field accepts a value (5), a list (1,15,30), a range (9-17), a step (*/10) or a combination such as 0-30/5. An asterisk means “every value”. The visualizer highlights the matching field pill as you hover, so you can see which part of the cron schedule drives each part of the description.

    How it works: Cron Visualizer

    Crontab every 5 minutes Crontab Schedule and Systemd Timer & Security Architecture Diagram. Diagram of the cron expression */15 9-17 * * 1-5 broken into minute, hour, day, month and weekday fields, translated to “every 15 minutes, 09:00–17:59, Monday–Friday” with a timeline of upcoming runs.
    Diagram of the cron expression */15 9-17 * * 1-5 broken into minute, hour, day, month and weekday fields, translated to “every 15 minutes, 09:00–17:59, Monday–Friday” with a timeline of upcoming runs.

    The day-of-month and day-of-week trap

    When both the day-of-month and day-of-week fields are restricted, Vixie cron (the cron on Debian, Ubuntu, RHEL and macOS) runs the job when either matches, not when both match. 0 9 13 * 5 therefore runs on the 13th of every month and on every Friday, not only on Friday the 13th.

    If you need “first Monday of the month”, schedule 0 9 1-7 * * and guard the command with a weekday test: [ "$(date +\%u)" = 1 ] && /path/to/job. Note the escaped percent sign: cron treats a bare % as a newline.

    Time zones, daylight saving and missed runs

    Cron evaluates schedules in the system time zone of the server, which on most cloud images is UTC. The next-run timeline shows both UTC and your browser’s local time so you can spot the difference before it becomes an incident.

    Around daylight-saving transitions, jobs scheduled between 01:00 and 03:00 local time can run twice or not at all. Schedule critical jobs in UTC, or outside that window. Cron also does not catch up on runs missed while the machine was off; use anacron or a systemd timer with Persistent=true if you need that.

    Macros, Kubernetes CronJobs and other dialects

    Most crons accept shortcuts: @hourly (0 * * * *), @daily or @midnight (0 0 * * *), @weekly (0 0 * * 0), @monthly, @yearly and @reboot, which runs once at startup.

    Kubernetes CronJob, GitHub Actions schedule and most CI systems use the same five-field syntax, always in UTC unless you set timeZone. Quartz (Java) and AWS EventBridge use six or seven fields with a seconds or year field and a ? placeholder, so paste only the standard five fields here.

    • If you have used crontab guru, the syntax here is identical; this tool adds local and UTC timelines side by side.
    • Avoid * * * * * for heavy jobs: one run per minute adds up to 1,440 runs a day.
    • Spread load by offsetting minutes (7,37 * * * *) instead of starting every job at minute 0.

    Cron schedule cheat sheet

    Copy-ready cron expressions for the schedules people search for most.
    ExpressionMeaningRuns per day
    * * * * *Every minute1,440
    */5 * * * *Every 5 minutes288
    */15 * * * *Every 15 minutes96
    */30 * * * *Every 30 minutes48
    0 * * * *Every hour, on the hour24
    0 */4 * * *Every 4 hours (00, 04, 08…)6
    0 */6 * * *Every 6 hours4
    0 0 * * *Every day at midnight1
    0 9 * * 1-5Weekdays at 09:001 (Mon–Fri)
    0 0 * * 0Weekly, Sunday at midnight1 per week
    0 0 1 * *Monthly, on the 1st1 per month

    Copy-ready cron expressions for the schedules people search for most.

    Command-line examples

    Edit your crontab

    crontab -e

    List your cron jobs

    crontab -l

    Add -u username (as root) to list another user’s jobs.

    List system-wide cron jobs

    ls /etc/cron.d /etc/cron.daily /etc/cron.hourly && cat /etc/crontab

    Log output from a job

    */5 * * * * /opt/backup.sh >> /var/log/backup.log 2>&1

    Frequently asked questions

    Use */5 * * * *. It reads as “Every 5 minutes” and runs 288 times a day.

    Related Engineering Guides