Performance measurement, storage, and analysis.

Clone this repo:


  1. d343f63 cmd/benchseries: remove repeated definite articles by cui fliter · 6 weeks ago master
  2. f7320a6 cmd/benchfilter: use correct doc link anchor by Michael Pratt · 3 months ago
  3. aebcfb6 all: fix some comments by cui fliter · 4 months ago
  4. 801c7ef cmd/benchfilter: new command for filtering and tidying benchmark results by Austin Clements · 2 years, 5 months ago
  5. 02c5517 cmd/benchstat: new version of benchstat by Austin Clements · 2 years, 5 months ago

Go benchmark analysis tools

Go Reference

This subrepository holds tools and packages for analyzing Go benchmark results, such as the output of testing package benchmarks.


This subrepository contains command-line tools for analyzing benchmark result data.

cmd/benchstat computes statistical summaries and A/B comparisons of Go benchmarks.

cmd/benchfilter filters the contents of benchmark result files.

cmd/benchsave publishes benchmark results to

To install all of these commands, run go install You can also git clone and run go install ./cmd/... in the checkout.


Underlying the above tools are several packages for working with benchmark data. These are designed to work together, but can also be used independently.

benchfmt reads and writes the Go benchmark format.

benchunit manipulates benchmark units and formats numbers in those units.

benchproc provides tools for filtering, grouping, and sorting benchmark results.

benchmath provides tools for computing statistics over distributions of benchmark measurements.

Deprecated packages

The following packages are deprecated and no longer supported:

storage contains a deprecated version of the benchmark result storage system. These packages have moved to

analysis contains a deprecated version of the benchmark result analysis system. These packages have moved to

Report Issues / Send Patches

This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see

The main issue tracker for the perf repository is located at Prefix your issue with “x/perf:” in the subject line, so it is easy to find.