<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Lantern Flows</title>
    <description>The latest articles on DEV Community by Lantern Flows (@lanternflows).</description>
    <link>https://dev.to/lanternflows</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4219970%2F2d5d791d-9ed0-498e-b17f-0b2dfdb5b0d1.png</url>
      <title>DEV Community: Lantern Flows</title>
      <link>https://dev.to/lanternflows</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lanternflows"/>
    <language>en</language>
    <item>
      <title>Why your n8n Error Workflow is not triggering (and how to fix it)</title>
      <dc:creator>Lantern Flows</dc:creator>
      <pubDate>Sun, 01 Nov 2026 04:25:19 +0000</pubDate>
      <link>https://dev.to/lanternflows/why-your-n8n-error-workflow-is-not-triggering-and-how-to-fix-it-1jm7</link>
      <guid>https://dev.to/lanternflows/why-your-n8n-error-workflow-is-not-triggering-and-how-to-fix-it-1jm7</guid>
      <description>&lt;p&gt;Your n8n workflows can fail at 2 a.m. and tell you nothing. You add an &lt;strong&gt;Error Workflow&lt;/strong&gt;, wait for the next failure… and the alert never fires.&lt;/p&gt;

&lt;p&gt;This is one of the most common “it should work” traps in n8n. Search results for &lt;em&gt;n8n error workflow not triggering&lt;/em&gt; are mostly docs and forum threads, so here is a single checklist you can walk through in about ten minutes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scope of this article:&lt;/strong&gt; documented against &lt;strong&gt;self-hosted n8n 2.44.6&lt;/strong&gt;. &lt;strong&gt;Not tested on n8n Cloud.&lt;/strong&gt; Notification examples use &lt;strong&gt;Slack&lt;/strong&gt; or &lt;strong&gt;SMTP&lt;/strong&gt; only.&lt;/p&gt;

&lt;h3&gt;
  
  
  What an Error Workflow actually is
&lt;/h3&gt;

&lt;p&gt;An Error Workflow is a normal workflow whose first node is an &lt;strong&gt;Error Trigger&lt;/strong&gt;. You point other workflows at it under &lt;strong&gt;Settings → Error workflow&lt;/strong&gt;. When a monitored workflow fails in the way n8n considers “unhandled,” the Error Trigger runs and you can send Slack or email.&lt;/p&gt;

&lt;p&gt;It is &lt;strong&gt;not&lt;/strong&gt; a global catch-all for every red node you see while clicking around in the editor.&lt;/p&gt;

&lt;h3&gt;
  
  
  Checklist: why it is “not triggering”
&lt;/h3&gt;

&lt;p&gt;Work top to bottom. Most “not triggering” reports are one of these.&lt;/p&gt;

&lt;h4&gt;
  
  
  1. You tested with a manual run in the editor
&lt;/h4&gt;

&lt;p&gt;Error Workflows are meant for &lt;strong&gt;automatic / production&lt;/strong&gt; executions (schedules, webhooks, app triggers on a published workflow). A manual &lt;strong&gt;Execute workflow&lt;/strong&gt; click in the canvas often &lt;strong&gt;will not&lt;/strong&gt; invoke the Error Workflow.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fix:&lt;/strong&gt; publish (activate) a throwaway workflow, give it a real trigger (or Schedule), force a failure there, then check &lt;strong&gt;Executions&lt;/strong&gt; on the Error Workflow—not only the editor toast.&lt;/p&gt;

&lt;h4&gt;
  
  
  2. The Error Workflow is not selected on the failing workflow
&lt;/h4&gt;

&lt;p&gt;Open the workflow that failed → &lt;strong&gt;Settings&lt;/strong&gt; (or Options → Settings) → &lt;strong&gt;Error workflow&lt;/strong&gt; → pick your handler → save / publish again.&lt;/p&gt;

&lt;p&gt;In newer n8n versions, both the monitored workflow and the error handler may need to be &lt;strong&gt;published&lt;/strong&gt;. If you only saved a draft, production failures will not see the setting.&lt;/p&gt;

&lt;h4&gt;
  
  
  3. The failure was “handled,” so n8n does not escalate
&lt;/h4&gt;

&lt;p&gt;If a node uses &lt;strong&gt;Continue On Fail&lt;/strong&gt;, or you wired the node’s &lt;strong&gt;error output&lt;/strong&gt; and handled it yourself, the execution can finish without counting as an unhandled workflow failure. The Error Trigger stays quiet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fix:&lt;/strong&gt; for the path you want alerts on, turn off Continue On Fail and do not swallow the error on a side branch—or accept that handled errors will not page you.&lt;/p&gt;

&lt;h4&gt;
  
  
  4. The Error Trigger is not the first node (or the handler itself errors)
&lt;/h4&gt;

&lt;p&gt;The handler must start with &lt;strong&gt;Error Trigger&lt;/strong&gt;. Keep the alert path short: Error Trigger → Set/Compose → &lt;strong&gt;Slack&lt;/strong&gt; or &lt;strong&gt;Send Email (SMTP)&lt;/strong&gt;. Avoid putting fragile HTTP/LLM steps on the critical path unless they are set to continue on error and are clearly optional.&lt;/p&gt;

&lt;h4&gt;
  
  
  5. You are looking at the wrong place for proof
&lt;/h4&gt;

&lt;p&gt;Production Error Workflow runs show up under &lt;strong&gt;Executions&lt;/strong&gt; for that workflow. They may not paint a big banner on the workflow that failed. Confirm:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the failing workflow has a failed &lt;strong&gt;production&lt;/strong&gt; execution;&lt;/li&gt;
&lt;li&gt;the Error Workflow has a matching new execution at about the same time;&lt;/li&gt;
&lt;li&gt;Slack/SMTP credentials on the handler are valid (a bad credential makes it look like “nothing happened”).&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  6. Instance / URL gotchas (self-hosted)
&lt;/h4&gt;

&lt;p&gt;If your alert includes an execution link, the instance public URL must be configured correctly, or the link is useless even when the trigger did fire. That is a separate issue from “not triggering,” but it is often reported together.&lt;/p&gt;

&lt;h3&gt;
  
  
  Minimal documented pattern (Slack or SMTP)
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;New workflow → &lt;strong&gt;Error Trigger&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Edit Fields (Set)&lt;/strong&gt; for subject/channel/recipient prefixes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Slack&lt;/strong&gt; &lt;em&gt;Send message&lt;/em&gt; &lt;strong&gt;or&lt;/strong&gt; &lt;strong&gt;Send Email (SMTP)&lt;/strong&gt; with workflow name, failed node, error message, and execution URL from the Error Trigger payload.&lt;/li&gt;
&lt;li&gt;Publish the handler.&lt;/li&gt;
&lt;li&gt;On every workflow you care about: Settings → Error workflow → select it → publish.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;To force a failure on purpose: add a &lt;strong&gt;Stop And Error&lt;/strong&gt; node on a published schedule/webhook workflow, run it once in production mode, then verify the handler execution.&lt;/p&gt;

&lt;p&gt;Optional AI “explain this error” steps are fine &lt;strong&gt;only&lt;/strong&gt; if they cannot block the alert (continue on error, off by default).&lt;/p&gt;

&lt;p&gt;Documented on self-hosted n8n &lt;strong&gt;2.44.6&lt;/strong&gt;; not tested on n8n Cloud. Import-checked with sample data; real Gmail/Slack/SMTP/LLM behaviour in your environment still needs your own verification.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;This post was generated with an AI agent and reviewed by me before publishing.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>n8n</category>
      <category>automation</category>
      <category>devops</category>
      <category>monitoring</category>
    </item>
  </channel>
</rss>
