Blog
Wild & Free Tools

Azure Functions Timer Trigger Cron Expressions — NCRONTAB Format

Last updated: April 2026 6 min read

Table of Contents

  1. NCRONTAB Format — 6 Fields
  2. Common Azure Timer Trigger Patterns
  3. Azure Functions Timezone Configuration
  4. Converting from Standard Cron to Azure NCRONTAB
  5. Frequently Asked Questions

Azure Functions timer triggers use NCRONTAB — a 6-field extension of standard cron that adds a seconds field at the start, identical in structure to Spring Boot's @Scheduled format. Use our free cron generator to build the 5-field base, prepend a 0 for seconds, and you have a valid Azure timer trigger expression.

All Azure Functions run in UTC by default. This guide covers the format, timezone configuration, and the differences between NCRONTAB and standard cron.

NCRONTAB Format for Azure Functions

+------------- Seconds (0-59)
|  +----------- Minutes (0-59)
|  |  +--------- Hours (0-23)
|  |  |  +------- Day of month (1-31)
|  |  |  |  +----- Month (1-12)
|  |  |  |  |  +--- Day of week (0-6, 0=Sunday)
|  |  |  |  |  |
0  */5 *  *  *  *

In a C# Azure Function:

[FunctionName("TimerFunction")]
public static void Run(
    [TimerTrigger("0 */5 * * * *")] TimerInfo timer,
    ILogger log)
{
    log.LogInformation("Timer fired at: " + DateTime.Now);
}

In a Python Azure Function (function.json):

{
  "scriptFile": "__init__.py",
  "bindings": [
    {
      "name": "mytimer",
      "type": "timerTrigger",
      "direction": "in",
      "schedule": "0 0 9 * * 1-5"
    }
  ]
}

Key differences from standard cron: The seconds field is first (like Spring Boot). Day-of-week uses 0-6 (same as standard cron, 0=Sunday). No ? character — Azure NCRONTAB does not require it.

Common Azure Functions Timer Trigger Expressions

GoalNCRONTAB ExpressionStandard cron equivalent
Every 5 minutes0 */5 * * * **/5 * * * *
Every hour at :000 0 * * * *0 * * * *
Every day at 9 AM UTC0 0 9 * * *0 9 * * *
Weekdays at 9 AM UTC0 0 9 * * 1-50 9 * * 1-5
Every 30 seconds*/30 * * * * *Not possible (no seconds field)
Every 30 minutes0 */30 * * * **/30 * * * *
First of month midnight0 0 0 1 * *0 0 1 * *
Weekly Sunday 2 AM0 0 2 * * 00 2 * * 0

Build the standard 5-field expression with the cron generator, then prepend 0 (zero space) to get the Azure NCRONTAB equivalent. That's the full conversion for 99% of schedules.

Sell Custom Apparel — We Handle Printing & Free Shipping

Setting Timezone for Azure Functions Timer Triggers

Azure Functions run in UTC by default. To schedule in a local timezone, set an app setting in the Function App configuration:

Windows-based Function Apps: Set the WEBSITE_TIME_ZONE app setting to a Windows timezone name:

WEBSITE_TIME_ZONE = Eastern Standard Time
WEBSITE_TIME_ZONE = Central Standard Time
WEBSITE_TIME_ZONE = Pacific Standard Time

Linux-based Function Apps: Set the TZ app setting to an IANA timezone name:

TZ = America/New_York
TZ = America/Chicago
TZ = Europe/London

With the timezone app setting configured, write your NCRONTAB expression in local time — Azure handles DST automatically. Without it, your expression must be in UTC.

Warning: Windows timezone names (e.g., "Eastern Standard Time") and IANA names (e.g., "America/New_York") are different strings. Using a Windows name on a Linux app (or vice versa) will silently fall back to UTC — a common source of confusion when migrating Function Apps between OS types.

Converting Standard Cron to Azure NCRONTAB

The conversion is simple for the vast majority of cases:

  1. Build the 5-field standard expression in the cron generator.
  2. Prepend 0 (seconds field = 0) to the expression.
  3. Verify the 6-field result in the visualizer by dropping the leading 0 back out — the remaining 5 fields show the correct schedule.

Examples:

Standard cronAzure NCRONTAB
0 9 * * *0 0 9 * * *
*/15 * * * *0 */15 * * * *
0 9 * * 1-50 0 9 * * 1-5
0 0 1 * *0 0 0 1 * *

The only case that doesn't convert simply: sub-minute intervals (e.g., every 30 seconds: */30 * * * * *). These have no standard 5-field cron equivalent — Azure NCRONTAB's seconds field enables scheduling granularity that standard cron doesn't support.

Try It Free — No Signup Required

Runs 100% in your browser. No account, no install, no limits.

Open Free Cron Generator

Frequently Asked Questions

What is the NCRONTAB format used by Azure Functions?

NCRONTAB is a 6-field cron format that adds a seconds field at the beginning of the standard 5-field cron expression. The fields are: {seconds} {minutes} {hours} {day-of-month} {month} {day-of-week}. The seconds field enables sub-minute scheduling (e.g., "*/30 * * * * *" for every 30 seconds). For minute-level scheduling, set seconds to 0: "0 0 9 * * *" means every day at 9:00:00 AM.

How do I make an Azure Functions timer trigger run at 9 AM Eastern time?

Set the WEBSITE_TIME_ZONE app setting to "Eastern Standard Time" (Windows) or the TZ setting to "America/New_York" (Linux), then write the expression in Eastern time: "0 0 9 * * 1-5" for weekdays at 9 AM. Without this setting, the function runs in UTC — you would need "0 0 14 * * 1-5" in winter (UTC-5) or "0 0 13 * * 1-5" in summer (UTC-4).

Can Azure Functions run more frequently than once per minute?

Yes — this is one of NCRONTAB's advantages over standard cron. The seconds field enables sub-minute intervals: "*/30 * * * * *" fires every 30 seconds, "*/10 * * * * *" every 10 seconds. There is no documented minimum interval, but very frequent triggers (every second) will incur significant execution costs and may hit consumption plan limits.

Launch Your Own Clothing Brand — No Inventory, No Risk