Skip to content
JustDevTools
  • JSON formatter and validator
    Format, minify and validate JSON, with the exact line and column of any syntax error.
  • JWT decoder
    Read a JWT's header and payload, with issued-at and expiry times shown as real dates.
  • Base64 encoder and decoder
    Encode and decode Base64 and Base64URL, with full Unicode support.
  • JSON to TypeScript, Zod and Java
    Paste a JSON response and get TypeScript interfaces, a Zod schema or Java classes with Jackson annotations.
  • YAML to JSON converter
    Convert YAML to JSON and JSON to YAML, with the exact line of any syntax error. Handles multi-document files.
  • Regex tester
    Test JavaScript regular expressions with live match highlighting, capture groups and replace preview.
  • URL encoder and decoder
    Percent-encode and decode URLs and query values, and break a URL into its parts and parameters.
  • Unix timestamp converter
    Convert Unix timestamps in seconds or milliseconds to dates, and dates back to timestamps.
  • Cron expression explainer
    See what a cron expression means in plain English, what each field does and the next times it will run.
  • JSON to CSV converter
    Turn a JSON array into CSV for Excel or Google Sheets, or a CSV file into JSON. Nested objects become columns.
  • UUID generator and inspector
    Generate UUID v4 and time-ordered v7 in bulk, or paste a UUID to see its version and timestamp.
  • Text diff checker
    Compare two texts line by line and see exactly what was added, removed or changed.
  • Hash and HMAC generator
    SHA-256, SHA-1, SHA-384 and SHA-512 hashes and HMAC signatures of text, in hex or Base64.
  • Markdown previewer
    Write Markdown on the left and see it rendered live on the right, with GitHub-style tables and task lists.

Cron expression explainer

See what a cron expression means in plain English, what each field does and the next times it will run.

Runs locally. Nothing you paste leaves this tab.

Examples:

This runs

Every 15 minutes, between 09:00 AM and 05:59 PM, Monday through Friday

Fields

FieldValueAllowed
Minute*/150–59
Hour9-170–23
Day of month*1–31
Month*1–12 or JAN–DEC
Day of week1-50–7 or SUN–SAT (0 and 7 are Sunday)

Next 5 runs (your time zone)

Calculating…

Read any cron expression

Type or paste a cron expression and see what it means in plain English, what each field does and the next five times it will run. Switch between your own time zone and UTC, because servers usually run cron in UTC while you think in local time.

The five fields

A standard cron expression has five fields separated by spaces, read from left to right:

┌───────────── 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)
│ │ │ │ │
* * * * *

Some systems, such as Spring, Quartz and many Node.js schedulers, add a sixth field for seconds at the start. This tool accepts both forms.

Special characters

  • * means every value: every minute, every hour and so on.
  • , lists values: 1,15 in the day field means the 1st and the 15th.
  • - is a range: 1-5 in the day-of-week field means Monday to Friday.
  • / is a step: */15 in the minute field means every 15 minutes.

Shortcuts

Many cron implementations accept shortcuts: @hourly, @daily (also @midnight), @weekly, @monthly and @yearly (also @annually).

Common mistakes

Day of month and day of week together

When both are restricted, classic cron runs the job when either matches, not both. 0 9 13 * 5 runs at 9:00 on every 13th and on every Friday, not only on Friday the 13th.

Forgetting the minute

* 9 * * * does not run once at 9 o'clock. It runs every minute from 9:00 to 9:59, which is 60 times. Use 0 9 * * * to run once.

Time zones and daylight saving

Cron uses the time zone of the machine or service that runs it, which is often UTC. In regions with daylight saving time, a job scheduled during the hour that is skipped or repeated may not run, or may run twice.