I received a community license key from n8n via email on June 4, 2025. However, when trying to activate it on my self-hosted instance (v1.91.2), I get the following error:
Activation failed
Failed to activate license: Connection Error: fetch failed
In the logs I also see: [license SDK] cert is invalid because it has expired
I found older reports of this issue (e.g., March 2025 by @Ricardo_Braune), but the problem still persists. This is affecting features like debug in editor, execution history, and AI Agent workflows.
Could someone from the team please confirm:
Is there a fix coming?
Is there a way to activate the license manually or bypass this SDK error?
My instance is set up on a Linux environment running Node.js version recommended by n8n. The n8n service is running on the server with all necessary network ports open — we confirmed there are no firewall or proxy blocks.
I have already allocated 4GB of memory to the n8n process, but I am still facing several errors related to license and network communication. Here is a detailed description of the errors:
License renewal error:
“Failed to renew license: renewal failed because current cert is not initialized”
This indicates the current certificate is not initialized, blocking the renewal process.
Feature flags fetch error due to memory and network issues:
“Network error while fetching PostHog” caused by “Out of memory: wasm memory.”
It seems there is a memory problem executing WebAssembly code, which causes request failure.
License activation error due to connection failure:
“Failed to activate license: Connection Error: fetch failed.”
The license activation fails due to communication issues with the server.
We have verified that all ports and network settings are correctly open. Currently, I am working on environment adjustments to prevent these errors.
Any advice on further diagnostics or configuration would be appreciated!
Errors:
error Failed to renew license: renewal failed because current cert is not initialized { “stack”: “Error: renewal failed because current cert is not initialized\n at C._renew (/usr/lib/node_modules/n8n/node_modules/@n8n_io/license-sdk/src/LicenseManager.ts: 424: 13)\n at C.renew (/usr/lib/node_modules/n8n/node_modules/@n8n_io/license-sdk/src/LicenseManager.ts: 413: 17)\n at License.renew (/usr/lib/node_modules/n8n/src/license.ts: 194: 22)\n at LicenseService.renewLicense (/usr/lib/node_modules/n8n/src/license/license.service.ts: 117: 23)\n at LicenseController.renewLicense (/usr/lib/node_modules/n8n/src/license/license.controller.ts: 68: 29)\n at handler (/usr/lib/node_modules/n8n/src/controller.registry.ts: 73: 41)\n at /usr/lib/node_modules/n8n/src/response-helper.ts: 158: 23\n at Layer.handleRequest (/usr/lib/node_modules/n8n/node_modules/router/lib/layer.js: 152: 17)\n at next (/usr/lib/node_modules/n8n/node_modules/router/lib/route.js: 157: 13)\n at /usr/lib/node_modules/n8n/src/controller.registry.ts: 135: 4”, “file”: “license.service.js”, “function”: “mapErrorMessage” }
0|n8n | 12:03:52.754 error 400 Failed to renew license: renewal failed because current cert is not initialized { “file”: “response-helper.js”,“function”: “sendErrorResponse” }
0|n8n | 2025-06-05T15:03:54.154Z [Rudder] debug: in flush
0|n8n | 2025-06-05T15:03:54.155Z [Rudder] debug: cancelling existing flushTimer…
0|n8n | Error fetching feature flags Error [PostHogFetchNetworkError]: Network error while fetching PostHog
0|n8n | at new PostHogFetchNetworkError (/usr/lib/node_modules/n8n/node_modules/posthog-core/src/index.ts:41:5)
0|n8n | at PostHog. (/usr/lib/node_modules/n8n/node_modules/posthog-core/src/index.ts:546:17)
0|n8n | at step (/usr/lib/node_modules/n8n/node_modules/node_modules/tslib/tslib.es6.js:102:23)
0|n8n | at Object.throw (/usr/lib/node_modules/n8n/node_modules/node_modules/tslib/tslib.es6.js:83:53)
0|n8n | at rejected (/usr/lib/node_modules/n8n/node_modules/node_modules/tslib/tslib.es6.js:74:65) {
0|n8n | error: TypeError: fetch failed
0|n8n | at node:internal/deps/undici/undici:12637:11 {
0|n8n | cause: RangeError: WebAssembly.instantiate(): Out of memory: wasm memory
0|n8n | at lazyllhttp (node:internal/deps/undici/undici:8718:32)
0|n8n | },
0|n8n | [cause]: TypeError: fetch failed
0|n8n | at node:internal/deps/undici/undici:12637:11 {
0|n8n | cause: RangeError: WebAssembly.instantiate(): Out of memory: wasm memory
0|n8n | at lazyllhttp (node:internal/deps/undici/undici:8718:32)
0|n8n | }
0|n8n | }
0|n8n | 12:04:10.800 warn [license SDK] license activation failed: Connection Error: fetch failed { “scopes”: [“license”], “file”: “LicenseManager.js”, “function”: “log” }
0|n8n | 12:04:10.802 error Failed to activate license: Connection Error: fetch failed { “stack”: “Error: Connection Error: fetch failed\nat C.activate (/usr/lib/node_modules/n8n/node_modules/@n8n_io/license-sdk/src/LicenseManager.ts: 373: 13)\n at License.activate (/usr/lib/node_modules/n8n/src/license.ts: 177: 3)\n at LicenseService.activateLicense (/usr/lib/node_modules/n8n/src/license/license.service.ts: 108: 4)\n atLicenseController.activateLicense (/usr/lib/node_modules/n8n/src/license/license.controller.ts: 61: 3)\n at handler (/usr/lib/node_modules/n8n/src/controller.registry.ts: 73: 12)\n at /usr/lib/node_modules/n8n/src/response-helper.ts: 158: 17”, “file”: “license.service.js”, “function”: “mapErrorMessage” }
0|n8n | 12:04:10.802 error 400 Failed to activate license: Connection Error: fetch failed { “file”: “response-helper.js”, “function”: “sendErrorResponse” }