Skip to content
News

n8n 2.45: what's new and should you upgrade

What's new in n8n 2.45: the durable scheduler on by default with new timing for minute schedules, automatic Cron migration for 3.0, and which version to run.

By then8nblog Editors7 min read
Illustration of the n8n 2.45 release roundup: the durable scheduler on by default with new timing for minute schedules, automatic Cron migration, Kafka v2 and Monday.com V2, and stable 2.44.6 and beta 2.45.2 as of October 22, 2026

n8n 2.45.0 was released on October 20, 2026, on the beta track, and the current beta is 2.45.2. The change that affects the most self-hosters: the durable scheduler is now on by default, so "every N seconds" and "every N minutes" schedules no longer fire on clock boundaries. 2.45 also adds automatic migration for Cron nodes in the Migration Report ahead of n8n 3.0. For production, run the current stable release, 2.44.6.

The short version

  • Which version to run: on October 22, 2026, npm's stable tag points to 2.44.6 and beta to 2.45.2. Both were published October 22.
  • Durable scheduler on by default: Schedule Trigger runs are now stored in the database, so a restart no longer drops a run that was due.
  • Action needed: if a workflow relies on "every N seconds" or "every N minutes" schedules firing at :00 and :30, test it. In our upgrade, a 30-second schedule moved from :00/:30 to :19/:49.
  • Getting ready for 3.0: the Migration Report can now replace Cron nodes with Schedule Trigger nodes for you. Republish the workflow afterwards, or the published version keeps the old node.
  • Also new: Kafka node version 2 as the default, a Monday.com node V2, opt-in confidence scores in the Text Classifier node, and an Idempotency-Key header for the public API.

Should you upgrade?

Stable is, in the words of n8n's release tracks page, "a later, more proven patch of a release, cut after it's spent time on the Beta track." 2.44 moved to stable this week, so production instances can now take it.

  • Production instances: move to 2.44.6. Our n8n 2.44 roundup covers what changes from 2.43.
  • Test or staging instances: try 2.45.2, and check your Schedule Trigger workflows while you're there.

Pin the exact version in Docker Compose rather than using a moving tag:

services:
  n8n:
    image: docker.n8n.io/n8nio/n8n:2.44.6

If you run an external task runner, give n8nio/runners the same tag. Before you upgrade, take a backup; our guide on how to update self-hosted n8n safely has the steps.

The durable scheduler is on by default

Per n8n's changelog, Schedule Trigger nodes now run on the durable scheduler "on every instance, with no environment variable to set." The durable scheduler docs explain the difference: the old in-memory scheduler held its timers in the main process, so "restarts lose pending runs," while the durable scheduler records each upcoming run in the database before it's due. In a multi-main setup, every main shares the queue and one of them claims each run.

What changes for you:

  • Fixed intervals instead of clock alignment. "Every N seconds" and "every N minutes" schedules now run "a steady N apart, counted from when you published the workflow." Hourly, daily, weekly, monthly and cron-expression schedules fire as before, except for rare leap-year, 53rd-week and daylight-saving edge cases, which the durable scheduler handles correctly.
  • Missed runs follow a misfire policy. A run that comes due while n8n is down still fires late if it's within its grace period (one minute by default, N8N_SCHEDULER_MISFIRE_GRACE). Beyond that, the trigger's If Execution Is Missed option decides whether n8n skips it or runs one catch-up run.
  • Existing workflows switch over on upgrade, without republishing.

What we saw when we upgraded

We ran a workflow with a Schedule Trigger set to every 30 seconds, then upgraded the same Postgres-backed instance from 2.44.6 to 2.45.2:

VersionRun start times (UTC)
2.44.622:00:30, 22:01:00, 22:01:30, 22:02:00
2.45.2 after the upgrade22:02:49, 22:03:19, 22:03:49
2.45.2 after a restart between 22:04:10 and 22:04:2022:04:21.655 (the 22:04:19 run, 2 seconds late), then 22:04:49, 22:05:19

On 2.44.6 the schedule fired on the half-minute. On 2.45.2 it fired 30 seconds apart at :19 and :49, measured from when the upgraded instance took over the schedule, not from the minute boundary. When we restarted n8n just as a run came due, the run wasn't lost: it fired 2 seconds late, and the schedule kept its :19/:49 rhythm.

How to keep the old behavior

Both switches are deprecated, and n8n logs a warning at startup if you set them:

  • N8N_SCHEDULER_TRIGGER_NODE_MODE=legacy keeps clock-aligned timing on the durable scheduler.
  • N8N_SCHEDULER_ENABLED=false returns the whole instance to the in-memory scheduler. In a multi-main setup, set the same value on every main.

2.45 also removes the Skip Durable Scheduler node setting and N8N_ENV_FEAT_SKIP_DURABLE_SCHEDULER, and the changelog lists the unused N8N_SCHEDULER_MIN_INTERVAL setting as removed. Poll triggers, such as the Google Sheets Trigger, stay on the in-memory scheduler unless you opt them in with N8N_SCHEDULER_POLL_TRIGGERS_ENABLED.

Getting ready for n8n 3.0: automatic migrations

n8n 3.0 removes more than 35 legacy nodes, and the Migration Report (Settings > Migration Report) lists the workflows that use them. The 2.45 changelog adds "automated migrations for removed nodes." We tested which ones it covers on 2.45.2, with the same workflows we used in our n8n 3.0 nightly test:

Rule in the 3.0 reportAutomatically migratable on 2.45.2
Cron node removedYes
Function node removedNo (also no on 2.43.7)
Deprecated AI Agent modes removedNo (also no on 2.43.7)

The automatic migration replaced our Cron node, set to every minute, with a Schedule Trigger node (version 1.4) set to an interval of 1 minute, and kept the node's name and its connection to the next node.

One catch: the migration changes the draft, not the published version. After it ran, the workflow's published version still used the Cron node, and the response said the workflow was republishable. The Migration Report already stopped listing the workflow, so don't treat a clean report as done: open each migrated workflow, check the new trigger and republish it.

Other Migration Report changes in 2.45:

  • Notify owners: admins can email a workflow's owner from a rule's list of affected workflows, one at a time or in bulk. This needs SMTP configured, and notified workflows still count as unresolved.
  • Workflow editors can triage the migration findings for their own workflows (2.45.1).
  • CSV export of the report (2.45.1).

Our n8n 3.0 guide explains each removed node and its replacement.

Nodes and AI

  • Monday.com node V2: the new default for added nodes, with 39 operations across boards, groups, columns, items and updates, and resource locators for IDs. Existing workflows stay on V1.
  • Kafka node version 2 by default: new Kafka and Kafka Trigger nodes use version 2, which runs on librdkafka instead of the unmaintained kafkajs library. Per the Kafka docs, compression becomes a choice of GZIP, LZ4, Snappy, Zstd or None, and with Acks on, version 2 waits for all in-sync replicas rather than the leader only. A version 1 Kafka Trigger can't decode LZ4, Snappy or Zstd, so keep GZIP or None while old triggers read the topic. Existing nodes keep their version.
  • Text Classifier confidence scores: a new opt-in Include Confidence Scores option adds each item's category, the model's confidence and a score for every category.
  • "Answered by" in AI logs: the AI log view shows which model actually answered, useful behind model routers such as Microsoft Foundry.
  • Microsoft Foundry credentials gain an optional Project field.
  • Agents: the budget panel updates after each turn, publishing now warns about and blocks unpublished workflow tools, and the changelog lists an overhaul of MCP tool permissions for agents.

API and administration

  • Idempotent API calls: POST requests to the public API accept an Idempotency-Key header. Per the idempotency docs, a retry with the same key within 12 hours returns the first successful response instead of running the request again. The key must be 1 to 128 visible ASCII characters, and the feature works on all self-hosted editions.
  • Workflow read endpoints in the public API now return the parent folder.
  • Node type policies: instance and project rules for which nodes users can add, publish and run, managed through the public API. The docs mark it Enterprise-only and in Preview, available from 2.45.0, while the changelog dates it to 2.44.
  • A new look: the changelog lists "Update UI with n8n rebrand," and the 2.45.1 and 2.45.2 patches update logos in OAuth screens and instance emails and correct the new styles.

Patch releases

These come from the commits between the release tags on GitHub, since n8n's docs don't list patch-level changes:

  • 2.45.1 (October 21): the Migration Report CSV export and editor triage, a Postgres node fix that stops it overwriting global type parsers, Microsoft Teams Trigger subscription renewal, and a queue mode fix that claims an idle worker's next job and its lock in one step.
  • 2.45.2 (October 22): brand style corrections and updated Node.js base images. The 2.45.2 and 2.44.6 images run Node.js 26.12.1; 2.43.7 ran 26.7.0.
  • 2.44.4 to 2.44.6 (October 19 to 22): the same Postgres node fix, queue job outcomes keyed by job when workers resume after shutdown, OpenTelemetry expression spans off by default, and credential types loading on startup.
  • 2.43.8 (October 19): expression spans off by default.

n8n 3.0: still not released

As of October 22, 2026, npm lists no 3.x version and the n8n repository has no 3.x tag. Our n8n 3.0 nightly test shows what breaks in the preview builds, and the 3.0 breaking changes guide has the checklist. For all release coverage, see the releases tag.

Sources

  1. n8n release notes, 2.45 (n8n docs)
  2. n8n changelog, durable scheduler on by default (n8n docs)
  3. n8n changelog, 2.45.0 (GitHub)
  4. Durable scheduler (n8n docs)
  5. Kafka node, version 2 (n8n docs)
  6. API idempotency (n8n docs)
  7. Control node availability with node type policies (n8n docs)
  8. n8n 2.45.x and 2.44.x patch commits (n8n on GitHub)
  9. n8n package versions and dist-tags (npm)

then8nblog Editors

Editorial team

The then8nblog editorial team researches every article from n8n's release notes, documentation and source code, states the n8n version each guide was tested on, and has every post reviewed by a human editor before it goes live.

News

n8n 2.44: what's new and should you upgrade

What's new in n8n 2.44: a SharePoint Trigger node, a WhatsApp channel for Agents, Microsoft Foundry renames, and which n8n version to run today.

8 min read