Azure Functions (NCRONTAB) Cron Expression Guide

Azure Functions uses NCRONTAB — a 6-field cron format with seconds prepended. The extra seconds field makes Azure expressions look different from standard 5-field cron but adds sub-minute precision.

Live Builder

Valid
MINMinute
0
HRHour
9
DOMDay of Month
*
MONMonth
*
DOWDay of Week
1-5

In plain English

At 09:00 AM, Monday through Friday

English → Cron

Try: "every 5 minutes", "every weekday at 9am", "every Monday at 3pm", "every month on the 1st"

Next 10 Executions

UTC
  1. 1Tue, Jul 7, 09:00 AM UTCin 15h
  2. 2Wed, Jul 8, 09:00 AM UTCin 2d
  3. 3Thu, Jul 9, 09:00 AM UTCin 3d
  4. 4Fri, Jul 10, 09:00 AM UTCin 4d
  5. 5Mon, Jul 13, 09:00 AM UTCin 7d
  6. 6Tue, Jul 14, 09:00 AM UTCin 8d
  7. 7Wed, Jul 15, 09:00 AM UTCin 9d
  8. 8Thu, Jul 16, 09:00 AM UTCin 10d
  9. 9Fri, Jul 17, 09:00 AM UTCin 11d
  10. 10Mon, Jul 20, 09:00 AM UTCin 14d
crontab entrybash
# Add to crontab with: crontab -e
0 9 * * 1-5    /path/to/your/script.sh

Syntax Overview

Field order

SEC

Second

MIN

Minute

HR

Hour

DOM

Day of Month

MON

Month

DOW

Day of Week

0 0 9 * * 1-5

Example: At 09:00 AM, Monday through Friday

⚠

Azure Functions uses a 6-field format with seconds as the first field.

Common Expressions

0 0 9 * * 1-5—Every weekday at 9am (seconds=0)
0 */5 * * * *—Every 5 minutes
0 0 0 * * *—Every day at midnight
0 30 8 * * 1—Every Monday at 8:30am
0 0 */6 * * *—Every 6 hours
0 0 0 1 * *—1st of every month at midnight

Frequently Asked Questions

Why does Azure Functions have 6 fields instead of 5? ▾
Azure Functions uses NCRONTAB, which prepends a seconds field. The format is: {second} {minute} {hour} {day} {month} {day-of-week}. Standard cron starts at minute; Azure starts at second.
Can I run an Azure Function every 30 seconds? ▾
Yes — "0,30 * * * * *" runs at the 0-second and 30-second mark of every minute. The seconds field enables sub-minute precision that standard 5-field cron cannot express.
Does Azure Functions timer trigger use UTC? ▾
By default, yes — Azure Functions runs in UTC. You can override this by setting the WEBSITE_TIME_ZONE application setting for Windows plans, or TZ for Linux. The cron expression is evaluated in the configured timezone.
What is the format for Azure Functions function.json timer binding? ▾
The timer binding in function.json uses the "schedule" property with an NCRONTAB expression: {"type": "timerTrigger", "direction": "in", "schedule": "0 */5 * * * *"}. The builder above generates this JSON automatically.
Why is my Azure timer function running more often than expected? ▾
Check whether the FUNCTIONS_WORKER_RUNTIME is set correctly and whether "runOnStartup" is true in your binding — if true, the function fires immediately when the host starts, in addition to the scheduled runs.
Built & maintained by Danny Vargas
Last updated January 2026·Parsing runs in your browser — no expression leaves your device