n8n Now Speaks OpenTelemetry: Production Tracing for Workflows
n8n ·2026-06-04 ·1 min read
Summary written by us from the video's transcript. The video, and everything in it, is n8n's work.
Learn how to enable OpenTelemetry tracing for n8n workflows, configure it with environment variables, and add custom telemetry tags.
Takeaways
- OpenTelemetry support is built into n8n 2.22 and requires only two environment variables to activate.
- Workflows become parent spans and each node becomes a child span, providing full request‑level visibility.
- Custom telemetry tags can be added per node via the new settings panel and appear in trace visualizations.
- Sampling rate and node‑span generation are configurable, letting you balance detail against overhead.
- n8n propagates W3C trace context to downstream services, but those services must emit their own traces for full end‑to‑end tracing.
OpenTelemetry support in n8n 2.22
n8n version 2.22 introduces built‑in OpenTelemetry (OTEL) support for workflow traces. Previously, calls to external services like AI classification were opaque; now the platform automatically records workflow and node executions as spans.
The implementation follows the W3C trace‑context propagation standard, so it integrates with any existing tracing collector you already use.
Enabling tracing with environment variables
Add two environment variables to your n8n configuration (the exact names are shown in the docs) and tracing is enabled without code changes.
Once enabled, each workflow appears as a parent span and every node execution becomes a child span, giving you a full end‑to‑end view of request latency and errors.
Custom telemetry tags
In the node settings panel a new "Telemetry Tags" section lets you attach arbitrary key/value data to a node’s span.
These tags appear in the waterfall chart of your tracing UI, so you can surface custom execution data or parameters alongside standard timing information.
Configurable sampling and node‑span toggles
n8n provides knobs for production use: you can set a sample rate to limit trace volume, and you can disable node spans entirely if you only need workflow‑level visibility.
Both settings are configurable via the same environment variables used to enable tracing.
Integrating with downstream services
When n8n makes outbound HTTP requests it injects the current trace ID into the request headers, allowing W3C‑compatible downstream services to create child spans automatically.
The downstream service must itself emit traces to the collector; n8n only propagates the IDs—it does not generate traces for other tools.
Getting started quickly
If you have no tracing infrastructure yet, start with n8n’s quick‑start guide that uses Jaeger and a provided Docker Compose file.
The setup gives you a trace collector and visualizer in minutes, letting you experiment even on the free community plan or a home lab.