Grafana dashboards
Updated
NetBird ships ready-to-use Grafana dashboards for the Management, Signal, and Relay services and for the client, plus an extended Management dashboard for Enterprise Commercial License deployments. They are maintained in the netbirdio/netbird repository under infrastructure_files/observability/grafana/dashboards and import directly into Grafana.
Available dashboards
| Service | Dashboard JSON |
|---|---|
| Management | management.json |
| Management (Enterprise) | management-enterprise.json |
| Signal | signal.json |
| Relay | relay.json |
| Client | client.json |
Management
Covers peer-update fan-out, store latency, gRPC Sync / Login / GetServerKey rates and latencies, HTTP API request rates and latencies by endpoint and method, IdP request rates, network-map object counts, and update-channel queue length and operation durations.
Management (Enterprise)
An extended Management dashboard for Enterprise Commercial License deployments, adding NATS, per-account latency debugging, network map, and browser client panels. It has its own prerequisites and variables — see the Enterprise Grafana Dashboard page.
Signal
Covers active peers, peer connection durations, message forwarding throughput and latency, message-forward failures, registration / deregistration rates and failure rates, and gRPC RPC rates and latencies for the Signal service.
Relay
Covers connected peers (total / active / idle), peer authentication latency, peer store latency, and inbound/outbound relay traffic bandwidth.
Client
Covers management and signal connectivity, known and connected peers split by connection type, per-peer latency, peer connection establishment stages, and sync and login durations. Unlike the service dashboards it reads from the NetBird client itself, which exposes these metrics through an opt-in local endpoint — see Local Metrics Endpoint for enabling it and for the metric reference.
Importing a dashboard
- In Grafana, go to Dashboards → New → Import.
- Upload the JSON file (or paste its contents) and click Load.
- Select your Prometheus datasource and complete the import.
Dashboard variables
The Management, Signal, and Relay dashboards expose these template variables:
| Variable | Purpose |
|---|---|
datasource | Selects the Prometheus datasource. |
cluster | Filters NetBird instances by cluster. |
environment | Filters by environment (dev, staging, uat, prod). |
job | Selects a specific NetBird instance when multiple are running. |
host | Filters metrics by host. |
Your deployment may use only a subset of these variables; unused ones can be left at the default All. The Enterprise dashboard uses a different variable set — see its variables table.
The Client dashboard uses datasource, job, and instance, where instance selects the client to look at.
The Management dashboard expects HTTP request metrics to carry an exported_endpoint label rather than endpoint. If your Prometheus relabeling drops or renames this label, edit the dashboard panel queries accordingly.
Scraping for the dashboards
The dashboards assume a Prometheus scrape configuration that reaches the /metrics endpoint of each NetBird service. See Service endpoints for defaults and per-service overrides.
The Client dashboard scrapes the clients themselves rather than a server component. Its endpoint is off by default and binds to localhost when enabled, so it needs a scraper on each client host — see Local Metrics Endpoint.

