Cron Expression Builder

Build, validate, and understand cron expressions visually. See human-readable descriptions and upcoming run times.

Expression

* * * * *

Every minute

Fields

Every minute
Every hour
Every day of the month
Every month
Every day of the week

Common Presets

Next Run Times

1
Sat, Aug 1, 2026, 06:47
2
Sat, Aug 1, 2026, 06:48
3
Sat, Aug 1, 2026, 06:49
4
Sat, Aug 1, 2026, 06:50
5
Sat, Aug 1, 2026, 06:51

Field Reference

FieldRangeSpecialExamples
Minute0-59* , - /0, */5, 0-30
Hour0-23* , - /0, 12, 9-17
Day of Month1-31* , - /1, 15, 1-7
Month1-12* , - /1, 6, 1-6
Day of Week0-7* , - /0, 1-5, 0,6

Usage Tips

  • Asterisk (*): Matches any value in the field.
  • Comma (,): Specifies a list of values (e.g., 1,3,5 for Mon, Wed, Fri).
  • Hyphen (-): Specifies a range (e.g., 1-5 for Monday through Friday).
  • Slash (/): Specifies step values (e.g., */5 for every 5 minutes).
  • Day of Week: 0 and 7 both represent Sunday. 1 = Monday, 6 = Saturday.

About Cron Expressions

A cron expression is a special-purpose string used to schedule recurring tasks on Unix-like systems and job schedulers worldwide. The format consists of five fields—minute (0-59), hour (0-23), day of month (1-31), month (1-12), and day of week (0-7)—that together define when a job should execute. For example, the expression "0 2 * * *" means "at 2:00 AM every day," while "*/15 * * * *" means "every 15 minutes around the clock." Though cron syntax appears cryptic at first, it's remarkably powerful once understood—capable of expressing anything from "run once a year" to "run every 30 minutes except weekends." The cron builder eliminates the need to memorize syntax by providing a visual interface where you select fields from dropdowns and get a human-readable description in real-time.

Cron expressions power automation across the entire tech stack. Linux servers use cron for scheduled maintenance tasks. CI/CD platforms like GitHub Actions, GitLab CI, and Jenkins use cron syntax to trigger pipeline runs on schedules. Cloud platforms (AWS EventBridge, Google Cloud Scheduler, Azure Scheduler) use cron for serverless function triggers. Monitoring and observability tools schedule alert evaluations and report generation. Whether you're scheduling database backups, periodic data syncs, cleanup jobs, or automated reports, understanding cron is fundamental to DevOps and infrastructure automation.

Common Use Cases

  • Scheduling database backups: Run database snapshots daily at 2 AM with cron expression "0 2 * * *" to ensure data resilience without impacting daytime performance.
  • Setting up daily report emails: Generate and email summary reports every weekday morning (e.g., "0 8 * * 1-5" for Monday–Friday at 8 AM).
  • Configuring CI pipeline triggers: Run integration tests nightly or on schedule rather than per-commit to save compute resources while maintaining quality gates.
  • Periodic cache clearing and cleanup jobs: Execute data purges, temp file cleanup, and session invalidation on a regular interval to maintain system health.

How to Use This Tool

  1. Edit the fields: Modify minute, hour, day of month, month, and day of week fields directly or use the dropdown/range helpers to set specific values.
  2. Read the description: The tool converts your expression into a human-readable sentence (e.g., "At 02:00 on every day") so you verify it matches your intent.
  3. Preview next runs: View the next scheduled execution times (up to 10 occurrences) to confirm the schedule is correct before deploying.

Features

Visual Field Editor

Edit each cron field with text inputs and range selectors. No need to memorize special character syntax—the tool handles field validation and formatting.

Human-Readable Descriptions

Instant conversion of cron expressions to English descriptions like "Every 15 minutes" or "At 3:00 AM on every Monday" for easy verification.

Next Execution Preview

Display the next 10 scheduled execution times based on your expression so you can verify the schedule is correct before deployment.

Common Presets

One-click templates for frequently-used schedules (@daily, @weekly, @monthly, @hourly, @twice-daily) to accelerate configuration.

Frequently Asked Questions

What do the 5 cron fields represent?

The fields are (in order): minute (0-59), hour (0-23 in 24-hour format), day of month (1-31), month (1-12), and day of week (0-7 where 0 and 7 = Sunday). Each field can be a specific value, a range (1-5), a list (1,3,5), or wildcards (* = any value, */n = every n units).

How do I run a job every 15 minutes?

Use the expression "*/15 * * * *"—the */15 in the minute field means "every 15 minutes." The remaining asterisks mean "any hour, any day, any month, any day of week," so the job runs every 15 minutes around the clock.

What is the difference between day-of-month and day-of-week?

Day-of-month (field 3) specifies dates (1-31), so "15" means the 15th of every month. Day-of-week (field 5) specifies weekdays (0-7), so "1" means every Monday. If both are specified (neither is *), the job runs when either condition matches (OR logic).

How do I schedule a job on the last day of the month?

Standard cron doesn't have a built-in "last day" operator. Instead, most job schedulers (Kubernetes CronJob, AWS Lambda) support a workaround: run the job on day 28 or 29 (which exist in all months), then in your script, check if tomorrow is the 1st (indicating today is the last day). Alternatively, use platform-specific extensions if available.