grafana/dashboard-linter

A tool to lint Grafana dashboards

345

stars

383

commits

Go

primary language

Aug 25, 2026

updated

README

Grafana Dashboard Linter

This tool is a command-line application to lint Grafana dashboards for common mistakes, and suggest best practices.

Install

Download a release archive from the releases page and extract the dashboard-linter binary onto your PATH. Example for Linux on amd64:

VERSION=v0.1.0
curl -sSfL "https://github.com/grafana/dashboard-linter/releases/download/${VERSION}/dashboard-linter_${VERSION}_linux_amd64.tar.gz" \
  | tar -xz -C /usr/local/bin dashboard-linter
dashboard-linter lint dashboard.json

Each release also publishes a checksums.txt you can verify against.

From source

go install github.com/grafana/dashboard-linter@<version> does not currently work because go.mod contains a replace directive — Go refuses to install a module with replaces. Build from a checkout instead:

$ git clone https://github.com/grafana/dashboard-linter.git
$ cd dashboard-linter
$ go build -o dashboard-linter .
$ ./dashboard-linter lint dashboard.json

The prebuilt binaries above are the supported path for CI.

This tool is a work in progress and it's still very early days. The current capabilities are focused exclusively on dashboards that use a Prometheus data source.

See the docs for more detail.

Contributors

tomwilkie

108 commits

rgeyer

99 commits

dependabot[bot]

62 commits

zeitlinger

20 commits

grafana/dashboard-linter

A tool to lint Grafana dashboards

345

stars

383

commits

Go

primary language

Aug 25, 2026

updated

README

Grafana Dashboard Linter

This tool is a command-line application to lint Grafana dashboards for common mistakes, and suggest best practices.

Install

Download a release archive from the releases page and extract the dashboard-linter binary onto your PATH. Example for Linux on amd64:

VERSION=v0.1.0
curl -sSfL "https://github.com/grafana/dashboard-linter/releases/download/${VERSION}/dashboard-linter_${VERSION}_linux_amd64.tar.gz" \
  | tar -xz -C /usr/local/bin dashboard-linter
dashboard-linter lint dashboard.json

Each release also publishes a checksums.txt you can verify against.

From source

go install github.com/grafana/dashboard-linter@<version> does not currently work because go.mod contains a replace directive — Go refuses to install a module with replaces. Build from a checkout instead:

$ git clone https://github.com/grafana/dashboard-linter.git
$ cd dashboard-linter
$ go build -o dashboard-linter .
$ ./dashboard-linter lint dashboard.json

The prebuilt binaries above are the supported path for CI.

This tool is a work in progress and it's still very early days. The current capabilities are focused exclusively on dashboards that use a Prometheus data source.

See the docs for more detail.

Contributors

tomwilkie

108 commits

rgeyer

99 commits

dependabot[bot]

62 commits

zeitlinger

20 commits

Languages

Go

99.2%