# n8n Problems & Issues 2026 - Webhooks, Memory Crashes & Self-Hosting

Source: https://www.tryorbye.com/products/n8n
Last analyzed: 2026-10-21
Try or Bye score: 64/100

## Verdict: Try with caution

n8n works for some teams, but users report recurring problems (score 64/100). Most reported issues: n8n is too hard for non-technical users; Critical n8n security vulnerabilities on self-hosted instances; n8n runs out of memory on large data and files. Not a good fit for: Non-technical marketers and ops staff; Teams without anyone to maintain servers. Users most often switch to Zapier, Activepieces, Pipedream.

## What it is

n8n is a node-based workflow automation platform for connecting apps, APIs and AI models, with a visual editor plus JavaScript/Python Code nodes. It can be self-hosted for free (Community Edition) or used as a paid cloud service billed per workflow execution. It is aimed at technical teams, developers and automation agencies who want more control than Zapier or Make offer.

## Common errors & fixes

### n8n Out of Memory (JavaScript Heap Out of Memory)

n8n crashes with 'Execution stopped at this node (n8n may have run out of memory)' when a workflow loads too much data at once. Process items in batches, move heavy work into sub-workflows, and on self-hosted instances raise the Node.js heap limit.

1. **Process data in smaller batches** — Add a Loop Over Items (formerly Split in Batches) node before heavy steps Set a batch size such as 200 instead of processing thousands of items at once
2. **Move heavy processing into a sub-workflow** — Create a sub-workflow that does the heavy processing Call it with the Execute Workflow node Return only a small result to the parent so memory is freed after each batch
3. **Raise the Node.js heap limit (self-hosted)** — Set NODE_OPTIONS=--max-old-space-size=4096 (choose a value that fits your host RAM) Restart the container Make sure no wrapper start script overrides NODE_OPTIONS
4. **Store binary data on disk, not in memory** — Set N8N_DEFAULT_BINARY_DATA_MODE=filesystem (or s3) In-memory binary mode was removed in n8n 2.0
5. **Avoid manual runs and Code nodes for big data** — Test with a small sample, then run large jobs via the active workflow Replace Code nodes with built-in nodes where possible On n8n Cloud, upgrade to a larger plan for more memory

Full guide: https://www.tryorbye.com/products/n8n/issues/out-of-memory

### n8n Connection Lost Error

'Connection lost' in the n8n editor usually means the browser's push connection (WebSocket) is blocked by a reverse proxy or rejected for an origin mismatch. Add WebSocket upgrade headers to your proxy and set the public URL and proxy hop variables.

1. **Check the push connection in DevTools** — Open browser DevTools > Network and find the /rest/push request If it doesn't return status 101, your proxy is blocking the WebSocket upgrade If it connects and then drops, check the push backend and proxy timeouts
2. **Add WebSocket headers to nginx** — In the n8n location block add proxy_http_version 1.1 Add proxy_set_header Upgrade $http_upgrade and proxy_set_header Connection "upgrade" Add proxy_buffering off and a longer proxy_read_timeout Reload nginx
3. **Set the public URL and proxy variables** — Set N8N_EDITOR_BASE_URL and WEBHOOK_URL to your https domain Set N8N_PROTOCOL=https Set N8N_PROXY_HOPS to the real number of proxies (usually 1) Redeploy
4. **Try the SSE push backend** — Set N8N_PUSH_BACKEND=sse Restart n8n If you then see invalid-origin errors on Traefik, enable WSS in the proxy instead

Full guide: https://www.tryorbye.com/products/n8n/issues/connection-lost

### n8n Workflows Broken After 2.0 Update

n8n 2.0 introduced many breaking changes: Code nodes run on task runners and can't read env vars by default, Execute Command is disabled, the Start node and Pyodide Python are gone, and Activate became Publish. Check the official breaking-changes list and re-enable or rewrite what you need.

1. **Restore env var access or move secrets to credentials** — Preferably store secrets in n8n credentials Or set N8N_BLOCK_ENV_ACCESS_IN_NODE=false and restart
2. **Re-enable Execute Command / Local File Trigger** — Set NODES_EXCLUDE="[]" (or list only nodes you want excluded) Restart n8n
3. **Fix Code node expressions** — Rewrite $evaluateExpression() logic in plain JavaScript Or evaluate the expression in an Edit Fields (Set) node before the Code node
4. **Replace removed nodes and storage** — Replace Start nodes with Manual Trigger or Execute Workflow Trigger Move Python Code nodes to native Python with external task runners (n8nio/runners image) Migrate MySQL/MariaDB storage to PostgreSQL or SQLite before upgrading Switch binary data mode to filesystem, database or s3
5. **Pin versions and test before upgrading** — Pin a specific image tag instead of latest (latest is now 'stable') Test upgrades on a staging copy first Read docs.n8n.io breaking changes before each major upgrade

Full guide: https://www.tryorbye.com/products/n8n/issues/workflows-broken-after-2-0-update

### n8n Webhook URL Shows localhost

On self-hosted n8n, webhook and OAuth URLs show http://localhost:5678 when n8n doesn't know its public address. Set WEBHOOK_URL (and N8N_HOST/N8N_PROTOCOL) to your public domain and restart.

1. **Set the public URL environment variables** — Set WEBHOOK_URL=https://your-domain.com/ Set N8N_HOST=your-domain.com and N8N_PROTOCOL=https Optionally set N8N_EDITOR_BASE_URL to the same domain Redeploy or restart the container
2. **Remove development tunnel settings** — Delete WEBHOOK_TUNNEL_URL from production config Restart n8n and re-open the Webhook node to confirm the new URL
3. **Tell n8n about your reverse proxy** — Set N8N_PROXY_HOPS=1 if one reverse proxy sits in front of n8n Match the value to the actual number of proxies in the chain

Full guide: https://www.tryorbye.com/products/n8n/issues/webhook-url-localhost

### n8n Webhook Not Registered (404 Error)

The 404 'webhook is not registered' error almost always means you're calling the test URL when no test is listening, or the production URL while the workflow isn't active/published. Use the /webhook/ production URL and activate the workflow.

1. **Switch to the production webhook URL** — Open the Webhook node and select the Production URL tab Copy the URL containing /webhook/ (not /webhook-test/) Update the calling service to use that URL
2. **Activate or publish the workflow** — Save the workflow Turn on the Active toggle at the top right (in n8n 2.0+, publish the workflow) Call the production URL again
3. **Re-arm the test URL when testing** — Click 'Execute workflow' or 'Listen for test event' on the canvas Send the request immediately, before the listener times out Repeat for each test call; the test URL only accepts one call per listen
4. **Check method, path and executions** — Confirm the HTTP method (GET/POST) in the Webhook node matches the caller Make sure the path matches exactly Open the Executions tab to see whether any call arrived If an active n8n Cloud workflow still 404s, contact n8n support

Full guide: https://www.tryorbye.com/products/n8n/issues/webhook-not-registered

### n8n Executions Stuck in Queued / Starting Soon

Executions stuck in 'Queued / Starting soon' mean no worker is picking them up. On self-hosted setups, fix mismatched queue-mode settings or restart workers; on n8n Cloud, restart the workspace or contact support.

1. **Use one execution mode consistently (self-hosted)** — Either run a single container in regular mode, or Set EXECUTIONS_MODE=queue on both the main instance and every worker Make sure main and workers run the same n8n version
2. **Restart the workers** — Restart the worker service(s) Check worker logs for errors or memory warnings Confirm Redis is reachable from main and workers
3. **Free up concurrency** — Open Executions and stop runs stuck in Running or Waiting Reduce trigger frequency if executions spike
4. **Restart the n8n Cloud workspace** — Open the n8n Cloud admin dashboard as the workspace owner Restart the workspace If executions still don't start, contact n8n support with the workspace name

Full guide: https://www.tryorbye.com/products/n8n/issues/executions-stuck-queued

### n8n Google OAuth redirect_uri_mismatch Error

Google rejects the connection when the redirect URI n8n sends doesn't exactly match the one in your Google Cloud OAuth client. Copy the redirect URL from the n8n credential into Google Cloud, set your public URL on self-hosted instances, and update n8n if you're on an affected version.

1. **Copy the exact redirect URL into Google Cloud** — Open the credential in n8n and copy the OAuth Redirect URL In Google Cloud Console go to APIs & Services > Credentials > your OAuth client Paste it under Authorized redirect URIs and save Wait a few minutes and reconnect
2. **Set the public URL on self-hosted n8n** — Set N8N_HOST, N8N_PROTOCOL=https and WEBHOOK_URL (or N8N_EDITOR_BASE_URL) to your public domain Set N8N_PROXY_HOPS=1 if behind a reverse proxy Restart, then copy the new redirect URL into Google Cloud
3. **Update n8n** — Users reported the n8n Cloud mismatch was fixed in version 2.1.4 Update to the latest version (Cloud admin dashboard or new Docker image) Recreate the credential

Full guide: https://www.tryorbye.com/products/n8n/issues/google-oauth-redirect-uri-mismatch

### n8n Schedule Trigger Running at the Wrong Time

n8n schedules use n8n's own timezone setting, not the server clock, and default to America/New_York. Set GENERIC_TIMEZONE for the instance and check each workflow's timezone setting, which overrides it.

1. **Set GENERIC_TIMEZONE (self-hosted)** — Add GENERIC_TIMEZONE=Europe/Berlin (your IANA timezone) to docker-compose or docker run Optionally also set TZ to the same value for logs Restart n8n
2. **Check the workflow's timezone** — Open the workflow and go to Workflow Settings Set Timezone to your timezone (it overrides the instance default) Save and re-activate the workflow
3. **Verify after daylight saving changes** — Check the next run time in the Executions list after DST starts or ends Use named timezones rather than fixed UTC offsets

Full guide: https://www.tryorbye.com/products/n8n/issues/schedule-trigger-wrong-time

### n8n 'Cannot Read Properties of Undefined' Error

This error means a node or Code node tried to read a field from data that doesn't exist, often because a previous node returned nothing or a different shape. Inspect the input data, guard against empty items, and make sure workers run the same version.

1. **Inspect the input data** — Open the failing node and check the Input panel Confirm the field you reference actually exists Run the previous node alone to see its real output
2. **Guard against missing data in Code nodes** — Use optional chaining, e.g. $input.first()?.json Check items.length before accessing items Return an empty array or default value when data is missing
3. **Handle API errors before parsing** — Verify credentials and model or endpoint names Add retries on the API node (Settings > Retry On Fail) Add an IF node to skip empty responses
4. **Align versions in queue mode** — Make sure the main instance and all workers run the same n8n version Update n8n to the latest stable release

Full guide: https://www.tryorbye.com/products/n8n/issues/cannot-read-properties-of-undefined

### n8n Cloud Workspace Offline (503 Error)

A 503 'Workspace offline' page means your n8n Cloud instance is down or restarting, often after running out of memory or during an incident. Restart the workspace from the Cloud dashboard and contact support if it doesn't come back.

1. **Restart the workspace** — Log in to the n8n Cloud admin dashboard as the workspace owner Restart the instance and wait a few minutes
2. **Reduce memory pressure** — Deactivate the workflow that was running when it crashed Batch large data with Loop Over Items or upgrade the plan for more memory
3. **Escalate to support** — Email n8n support with your workspace name and when it went offline Post in the n8n community forum Cloud category for visibility Keep critical workflows exported as JSON so you can run them elsewhere

Full guide: https://www.tryorbye.com/products/n8n/issues/cloud-workspace-offline

## Common problems

- **n8n is too hard for non-technical users** (onboarding): The most common complaint on G2 is a steep learning curve, especially for people unfamiliar with APIs, JSON and branching logic. Advanced workflows often need JavaScript in the Code node, which undercuts the no-code pitch.
- **Critical n8n security vulnerabilities on self-hosted instances** (security): Six critical CVEs were disclosed between January and March 2026, including CVE-2026-21858 (unauthenticated remote code execution on internet-exposed instances), and an October 2026 bulletin covered eight more, five rated High. Self-hosters must patch quickly and keep instances behind a reverse proxy.
- **n8n runs out of memory on large data and files** (performance): Big JSON payloads, binary files, Code nodes and manual test runs can exhaust memory, producing 'Execution stopped at this node (n8n may have run out of memory)' or 'JavaScript heap out of memory'. n8n's own docs recommend batching, sub-workflows and more RAM.
- **n8n webhook not working in production** (reliability): Many users hit 404 'webhook is not registered' errors because n8n has separate test and production webhook URLs and the production one only works while the workflow is active/published. Self-hosted instances behind a proxy also show localhost URLs until WEBHOOK_URL is set.
- **n8n support is slow and hard to reach** (support): Trustpilot 1-star reviews (37% of 49) mostly cite email-only support, slow replies and account lockouts with no recovery path. Community forum threads describe cloud workspaces offline for days with no ETA. Self-hosters on the free edition get forum support only.
- **n8n 2.0 update broke existing workflows** (reliability): Version 2.0 removed the Start node, Pyodide Python Code node, MySQL storage and in-memory binary mode, blocks env var access in Code nodes, disables Execute Command by default and replaces Activate with Publish. Self-hosters who updated without reading the breaking-changes list saw workflows fail.
- **Self-hosting n8n is more work than expected** (onboarding): Free self-hosting means you handle reverse proxies, WebSockets, backups, Postgres, upgrades, monitoring and your own OAuth apps for Google or Slack. Losing the encryption key makes stored credentials unusable.
- **n8n Cloud executions stuck in 'Queued / Starting soon'** (reliability): Several community threads describe Cloud executions stuck in the queue for hours or days, often after an execution spike, while the UI shows no active executions. Fixes usually require a workspace restart or contacting support.
- **n8n error messages don't explain what went wrong** (usability): Users report blank errors and generic messages such as 'Cannot read properties of undefined' or 'Connection lost' that don't point to the cause. G2 reviewers ask for better debugging tools.
- **n8n Google OAuth redirect_uri_mismatch errors** (integrations): Connecting Google Drive, Gmail or Sheets often fails with redirect_uri_mismatch, both on self-hosted instances using localhost URLs and on n8n Cloud, where users reported a mismatch between the displayed and sent redirect URL that was fixed in a later release.
- **Why is n8n Business so expensive?** (pricing): Cloud Starter and Pro are cheap, but SSO, Git version control, multiple environments and queue mode sit in the self-hosted Business plan at about €667/month billed annually, with overage buckets of €4,000 per 300k executions. Starter caps executions at 5 minutes and keeps 7 days of logs.
- **Large n8n workflows become hard to manage** (usability): Reviewers say the canvas gets unwieldy as workflows grow, and G2 users mention slowness compared with other apps. Splitting logic into sub-workflows is the usual workaround.

## What users like

- **Free self-hosted Community Edition with unlimited executions**: The Community Edition costs nothing beyond your server, which makes high-volume automation far cheaper than Zapier or Make.
- **Billing per workflow execution, not per step**: One execution is a full workflow run regardless of how many nodes it has, so complex multi-step workflows cost the same as simple ones.
- **Code nodes and HTTP Request for anything without a connector**: JavaScript and Python Code nodes plus a generic HTTP Request node let developers integrate almost any API.
- **Strong AI agent and LLM workflow support**: AI agent, MCP and LLM nodes are included on every plan, making n8n a popular choice for building AI automations.
- **Data stays on your own servers when self-hosted**: Self-hosting keeps credentials and workflow data in your own infrastructure, important for privacy-sensitive teams.
- **Highly rated by users who get past the learning curve**: n8n averages 4.7/5 from about 295 G2 reviews, with users praising flexibility and reliability once set up.

## Pricing

- **Community Edition (self-hosted)**: $0 (free) — hidden costs: Server hosting, maintenance time, backups and security patching are on you; OAuth apps for Google/Slack must be set up yourself.
- **Starter (Cloud)**: $24 (monthly) — hidden costs: €20/month if billed annually. Executions are capped at 5 minutes each.
- **Pro (Cloud)**: $60 (monthly) — hidden costs: €50/month if billed annually. Larger execution volumes require higher tiers.
- **Business (self-hosted)**: $667 (monthly) — hidden costs: Billed annually. Overage buckets cost €4,000 per extra 300,000 executions, invoiced 45 days later if you don't upgrade. Requires a license key that pings n8n's license server daily with production execution counts. You still pay for hosting.
- **Enterprise**: yearly — hidden costs: Contact sales; overage terms negotiated.

## Who should and shouldn't use it

- **Developers and technical teams** — Good fit: Code nodes, HTTP requests and self-hosting give full control at low cost.
- **Automation agencies and freelancers** — Good fit: Per-execution pricing and self-hosting make client automations cheap to run at scale.
- **Teams building AI agents** — Good fit: Native AI agent, LLM and MCP nodes are included on every plan.
- **Privacy-sensitive organizations** — Good fit: Self-hosting keeps data on your own infrastructure, but you must patch security releases promptly.
- **Small businesses with some technical help** — Depends: Cloud Starter is affordable, but expect a learning curve and slow support when something breaks.
- **Non-technical marketers and ops staff** — Avoid: JSON, expressions and Code nodes are hard without API knowledge; Zapier is easier.
- **Teams without anyone to maintain servers** — Avoid: Self-hosting requires proxies, backups, upgrades and security patching; use n8n Cloud or a managed tool instead.

## Alternatives

- **Zapier** (https://www.tryorbye.com/products/zapier): Much easier for non-technical users and has the largest app library; trade-off is far higher cost at volume, linear workflows and no self-hosting.
- **Activepieces**: Open-source, self-hostable and simpler than n8n for business users; trade-off is a smaller integration library.
- **Pipedream**: Code-first automation for developers with managed hosting, so no servers to maintain; trade-off is less visual editing.
- **Microsoft Power Automate**: Best fit for teams already on Microsoft 365; trade-off is weaker support for non-Microsoft apps and complex licensing.
- **Make** (https://www.tryorbye.com/products/make): Visual scenario builder that is friendlier than n8n with good value pricing; trade-off is cloud-only and a credits model since 2025.

## FAQ

### Is n8n worth it?

Yes for technical teams: the self-hosted edition is free with unlimited executions and the cloud bills per workflow run rather than per step. It is less worth it for non-technical users, who face a steep learning curve, or teams without anyone to maintain and patch a server.

### Is n8n free?

The self-hosted Community Edition is free with unlimited executions; you only pay for your server. n8n Cloud starts at about €24/month (€20/month billed annually) for 2,500 executions.

### How much does n8n cost?

Cloud Starter is about €24/month (€20 annually) for 2,500 executions, Pro about €60/month (€50 annually) for 10,000 executions, self-hosted Business about €667/month billed annually for 40,000 executions, and Enterprise is custom.

### Is n8n hard to learn?

For many users, yes. The most common G2 complaint is the learning curve, especially if you don't know APIs, JSON or JavaScript. Templates help, but advanced workflows usually need the Code node.

### Is n8n safe to self-host?

It can be, but you are responsible for patching. Six critical CVEs were disclosed in early 2026, including an unauthenticated remote code execution bug, plus another eight in October 2026. Keep n8n updated, behind a reverse proxy, and back up your encryption key.

### Why is my n8n webhook not working?

Usually because you're calling the test URL (/webhook-test/) instead of the production URL (/webhook/), or the workflow isn't active/published. On self-hosted instances, set WEBHOOK_URL to your public domain so n8n doesn't generate localhost URLs.

### n8n vs Zapier: which is better?

Zapier is easier and has more apps; n8n is much cheaper at volume, bills per workflow run instead of per task, supports custom code and can be self-hosted. Choose n8n if you have technical skills, Zapier if you don't.

### n8n vs Make: which should I choose?

Make is more beginner-friendly and cloud-only; n8n is better for developers, AI agents and self-hosting. A common rule from comparisons: pick n8n if you have a developer, Make if you don't.

### What happens if I exceed my n8n execution limit?

According to n8n's pricing page, exceeding the quota does not stop workflows. On the Business plan overages are billed in €4,000 buckets of 300,000 executions, invoiced 45 days later if you don't upgrade.

### Why does n8n keep running out of memory?

Large JSON or binary data, Code nodes and manual test runs use lots of memory. Process data in batches with Loop Over Items, move heavy steps into sub-workflows, and on self-hosted instances raise NODE_OPTIONS=--max-old-space-size.

### What broke in n8n 2.0?

n8n 2.0 removed the Start node, the Pyodide Python Code node, MySQL/MariaDB storage and in-memory binary mode, blocks env var access in Code nodes by default, disables Execute Command and Local File Trigger, and replaces Activate with Publish.

### Does n8n have good customer support?

Not on lower tiers. Free and Starter users rely on the community forum, and Trustpilot reviews (3.0/5) frequently complain about slow email-only support and account lockouts. Dedicated SLA support is Enterprise-only.

---
Try or Bye aggregates problem patterns from user reviews, forums, and app stores. Methodology: https://www.tryorbye.com/methodology