Azure Functions
Azure Functions NCRONTAB Timer Builder
Build and validate TimerTrigger expressions for Azure Functions. Azure uses NCRONTAB — a 6-field format with seconds first: sec min hr dom mon dow. No @-aliases. No ?.
Every 5 minutes
Valid
- 1Thu, Apr 9, 2026, 12:55 AM
- 2Thu, Apr 9, 2026, 1:00 AM
- 3Thu, Apr 9, 2026, 1:05 AM
- 4Thu, Apr 9, 2026, 1:10 AM
- 5Thu, Apr 9, 2026, 1:15 AM
- 6Thu, Apr 9, 2026, 1:20 AM
- 7Thu, Apr 9, 2026, 1:25 AM
- 8Thu, Apr 9, 2026, 1:30 AM
- 9Thu, Apr 9, 2026, 1:35 AM
- 10Thu, Apr 9, 2026, 1:40 AM
Use in Azure Functions
[Function("MyTimer")]
public void Run([TimerTrigger("0 */5 * * * *")] TimerInfo timer) { }NCRONTAB vs Standard Cron
| Format | Fields | Order | Example: weekdays 9am |
|---|---|---|---|
| Standard Unix | 5 | min hr dom mon dow | 0 9 * * 1-5 |
| Azure NCRONTAB | 6 | sec min hr dom mon dow | 0 0 9 * * 1-5 |
| AWS EventBridge | 6 | min hr dom mon dow yr | 0 9 ? * MON-FRI * |
NCRONTAB Field Reference
| Field | Values | Special chars |
|---|---|---|
| Second | 0–59 | * / - , |
| Minute | 0–59 | * / - , |
| Hour | 0–23 | * / - , |
| Day of month | 1–31 | * / - , |
| Month | 1–12 | * / - , |
| Day of week | 0–6 (0 = Sunday) | * / - , |
Note: Azure does not support ?, L, W, or # modifiers. Only * - , / are supported.
Common Patterns
| Expression | Meaning |
|---|---|
0 */5 * * * * | Every 5 minutes |
0 0 * * * * | Every hour at :00:00 |
0 0 9 * * 1-5 | Weekdays at 9:00 AM UTC |
0 0 2 * * * | Every day at 2:00 AM UTC |
0 0 0 1 * * | 1st of every month at midnight |
*/30 * * * * * | Every 30 seconds (sub-minute — Azure only) |
*/10 * * * * * | Every 10 seconds |
Azure Functions Timer Trigger FAQ
How is Azure NCRONTAB different from standard Unix cron?
Azure NCRONTAB adds a seconds field at position 1, making it a 6-field format:
{second} {minute} {hour} {day} {month} {day-of-week}. Standard Unix cron has 5 fields starting with minute. This means Azure can schedule sub-minute triggers — for example, */30 * * * * * fires every 30 seconds. Azure also does not support @-aliases like @daily.What's the difference between Azure NCRONTAB and AWS EventBridge cron?
Two key differences: (1) Field order — Azure adds a seconds field at the start (
sec min hr dom mon dow), while AWS adds a year field at the end (min hr dom mon dow yr). (2) The ? wildcard — AWS requires exactly one of dom/dow to be ?; Azure does not support ? at all — use * instead. Additionally, Azure uses 0=Sunday day-of-week numbering (same as Unix), while AWS uses 1=Sunday.Can I use @daily or other @-aliases in an Azure Function timer trigger?
No. Azure NCRONTAB does not support @-aliases. You must use a full 6-field expression. The equivalent of
@daily in Azure is 0 0 0 * * * (fire at second 0, minute 0, hour 0, every day).Why is my Azure Function firing at the wrong time?
Azure Functions use UTC by default. To change the timezone, set the
WEBSITE_TIME_ZONE application setting in your Function App configuration. Use a standard IANA timezone name like America/New_York or Africa/Lagos. Note: on the Consumption plan, the time zone setting may be delayed by up to a minute during cold starts.How do I run an Azure Function every 5 seconds?
Use
*/5 * * * * *. The seconds field (position 1) makes sub-minute scheduling possible in Azure — this is unique to NCRONTAB and not supported on any other major platform. Every 30 seconds: */30 * * * * *. Every 10 seconds: */10 * * * * *.