Home All Tools Dev Tools Popular Rated Browse 100+ Tools →
* * * * *
Cron Expression
*
Minute
*
Hour
*
Day/Month
*
Month
*
Day/Week
* * * * *
Every minute.
Presets: Every minute Every hour Daily midnight Weekdays 9am Weekly Sunday Monthly Every 5 min Yearly Jan 1 Weekdays 6:30am
Minute 0–59
Use * to match every value for this field.
Click to toggle values. Multiple selections create a comma-separated list.
Matches all values between start and end (inclusive).
Run every N-th value, optionally starting from a given offset.
units
Next Scheduled Runs ⏱ Preview
Loading…
FEATURES

Everything You Need to Master Cron

The I7 Pixel Cron Expression Builder removes the guesswork from scheduling. Whether you're a seasoned sysadmin or writing your first crontab entry, every feature is designed for instant clarity.

🖱️
Visual Field Editor
Click any of the five segment cells — Minute, Hour, Day/Month, Month, Day/Week — to open a dedicated editor. No need to remember syntax rules.
📝
Plain-English Description
A green banner translates every expression into human-readable text in real time. "At 09:00, Monday through Friday" — instantly visible as you edit.
🕐
Next Run Preview
See the next 8 scheduled trigger times with exact dates and relative countdowns. Catch scheduling mistakes before deploying to production.
⚙️
Every / Specific / Range / Step Modes
Switch between four modes per field: wildcard (*), comma-list of specific values, a start–end range, or a step interval like */5. The expression updates live.
@Alias Shortcuts
Use @yearly, @monthly, @weekly, @daily, @hourly and @reboot from the Special Strings sidebar. Type any alias into the manual input and it resolves instantly.
⌨️
Manual Expression Input
Paste or type any cron string directly. The input validates as you type, highlights invalid expressions in red, and syncs the visual editor to match.
📋
One-Click Copy
Copy your finished expression with a single click from the main card or the sticky header. Ready to paste into crontab, GitHub Actions, or any scheduler config.
🌙
Dark & Light Theme
Toggle between dark and light mode. Your preference is saved in localStorage so every visit starts the way you like it.
🔒
100% Private, Client-Side
All expression building, validation and run-time calculation runs entirely in your browser. Nothing is sent to a server. Your cron schedules stay on your device.

HOW TO USE

Build Your First Expression in 4 Steps

The builder is designed to be operable in under 30 seconds. Follow these steps or jump straight to a preset and customise from there.

01
Select a Field
Click one of the five coloured segment tiles at the top of the expression card. The active field is highlighted in amber and the field editor opens below it.
02
Choose a Mode & Configure
Pick Every, Specific, Range or Step. For Specific mode click individual value chips; for Range enter start and end numbers; for Step set the interval — the expression updates live.
03
Verify the Description & Next Runs
Read the plain-English description banner and scroll to the "Next Scheduled Runs" panel to confirm the job will trigger at exactly the times you expect.
04
Copy & Deploy
Click Copy in the expression card or the sticky header. Paste the expression into your crontab, CI config or cloud scheduler — you're done.

DEEP DIVE

Understanding Cron Syntax

The Five-Field Format

A standard cron expression consists of five space-separated fields: minute hour day-of-month month day-of-week. Each field accepts a number within its valid range, a wildcard * (every value), a comma-separated list like 1,3,5, a range like 1-5, or a step like */10. Day-of-week accepts 0–7 where both 0 and 7 represent Sunday, maintaining compatibility across platforms. Month names (JAN–DEC) and day abbreviations (SUN–SAT) are accepted by some implementations but numeric values are universally portable.

Step Expressions Explained

The slash / character defines a step value. */5 in the minute field means "every 5 minutes" — equivalent to listing 0,5,10,15,20,25,30,35,40,45,50,55. You can also anchor a step: 10/15 means "starting at minute 10, every 15 minutes" producing 10, 25, 40, 55. Step expressions significantly shorten what would otherwise be long comma lists and are supported across all major cron implementations.

Day-of-Month vs Day-of-Week Interaction

When both dom and dow are restricted (neither is *), most Unix cron implementations use OR logic — the job runs if either condition is true. For example 0 0 1 * 1 fires on the 1st of each month AND every Monday. This is a common source of scheduling surprises. If you only want day-of-week logic, leave dom as *, and vice versa.


REFERENCE

Cron Field Reference

Quick reference for each field's allowed values, syntax characters and common examples.

Field Position Allowed Range Special Values Example Meaning
Minute 1st 0 – 59 * , - / */15 Every 15 minutes
Hour 2nd 0 – 23 * , - / 9-17 Every hour from 9 AM to 5 PM
Day of Month 3rd 1 – 31 * , - / 1,15 On the 1st and 15th
Month 4th 1 – 12 * , - / 3-6 March through June
Day of Week 5th 0 – 7 (0 & 7 = Sun) * , - / 1-5 Monday through Friday
@yearly Alias 0 0 1 1 * @yearly Once a year, Jan 1 at midnight
@monthly Alias 0 0 1 * * @monthly First day of each month
@weekly Alias 0 0 * * 0 @weekly Every Sunday at midnight
@daily Alias 0 0 * * * @daily Every day at midnight
@hourly Alias 0 * * * * @hourly Beginning of every hour
@reboot Alias Run once at startup @reboot After each system boot

USE CASES

Who Uses the Cron Builder?

From server administrators to frontend developers configuring CI pipelines — cron expressions appear across the entire software stack.

🖥️
Linux / Unix Sysadmins
Build precise crontab entries for database dumps, log rotation, certificate renewal and system health checks without consulting the man page every time.
🚀
DevOps & CI/CD Engineers
Generate correctly-formatted expressions for GitHub Actions scheduled workflows, GitLab CI pipelines, Jenkins triggers and AWS EventBridge rules.
☁️
Cloud Developers
Configure Kubernetes CronJobs, AWS Lambda EventBridge Scheduler, Google Cloud Scheduler and Azure Logic Apps triggers with validated expressions.
🐘
PHP / Laravel Developers
Craft cron strings for Laravel's Task Scheduler ->cron() method, WordPress WP-Cron custom intervals, or Symfony Scheduler component rules.
📊
Data Engineers
Schedule ETL pipelines, data warehouse refreshes, report generation scripts and API polling jobs on precise recurring intervals with confidence.
🎓
Students & Self-Taught Devs
Learn cron syntax interactively by seeing exactly how each character affects the schedule. The plain-English description and next-run preview make learning intuitive.

FAQ

Frequently Asked Questions

A cron expression is a five-field string that tells the cron daemon when to execute a scheduled task. The fields, in order, are: minute (0–59), hour (0–23), day of month (1–31), month (1–12) and day of week (0–7, where 0 and 7 both mean Sunday). Each field accepts a number, a wildcard *, a range (1-5), a comma list (1,3,5) or a step value (*/10).
Everything runs entirely in your browser. Expression parsing, validation, human-readable translation and next-run calculation are all performed by JavaScript on your device. No cron expressions or schedule data are transmitted to any server. Your schedules remain completely private.
The slash / defines a step (interval). */5 in the minute field means "every 5 minutes": 0, 5, 10 … 55. You can anchor it with a starting value: 10/15 means "starting at minute 10, every 15 minutes" — giving 10, 25, 40, 55. Use the Step mode tab in the field editor and fill in the Start and Every inputs.
Set the Day of Week field to the range 1-5 (Monday = 1, Friday = 5) and leave Day of Month as *. For example 0 9 * * 1-5 runs every weekday at 9:00 AM. Click the Day/Week segment, choose Range mode, and enter 1 as the start and 5 as the end. Or use the "Weekdays 9am" preset.
The 5-field format is the basis for both, but with platform-specific differences. GitHub Actions uses a 5-field syntax but evaluates in UTC and requires the schedule to be at least every 5 minutes. AWS EventBridge Scheduler uses a 6-field format that adds a year field and uses ? instead of * for unused dom/dow fields. Always verify against the target platform's documentation.
These are convenience aliases supported by GNU cron (Vixie cron) and many modern schedulers. They expand to standard 5-field expressions: @yearly0 0 1 1 *, @monthly0 0 1 * *, @weekly0 0 * * 0, @daily0 0 * * *, @hourly0 * * * *. @reboot runs once at system startup and has no numeric equivalent. Not all platforms support aliases — check before using in production.

REVIEWS

What Users Say

User Reviews
☆☆☆☆☆
0 reviews
Leave a Review
No reviews yet. Be the first!

RELATED TOOLS

More Dev Tools You'll Love