Skip to content
Mako - A performance testing library and service
C++ Go Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
go/quickstore Begin reworking our directory structure by moving Quickstore into the… Aug 21, 2019
spec Internal change Aug 21, 2019
testing/cxx Internal change Aug 14, 2019
BUILD Internal change Aug 14, 2019
LICENSE Rename 'mako_examples' to 'examples' Aug 21, 2019
WORKSPACE Internal change Aug 14, 2019
go.mod Internal change Aug 14, 2019
pcre.BUILD Internal change Aug 14, 2019
swig.BUILD Internal change Aug 14, 2019

Mako - A performance testing library and service


Mako is a set of tools for pre-production performance testing. It offers:

  • data storage
  • charting
  • statistical aggregation
  • automated regression analysis
  • workflows for triaging potential regressions

Mako is narrowly focused on meeting the performance testing needs of Google open source projects. At this time, Mako is not intended to be used by projects outside this limited scope.

Using Mako

Performance tests that use Mako

Mako client libraries are designed to be called from a client project’s performance test code. See the client project’s documentation for how to run their performance tests.

Since Mako performance tests upload data to, they require access rights to run. Please see

Mako Dashboard

Results from performance tests that use Mako are visible to the world. Visit to browse the results. Find dashboard documentation at

Mako Command-line Tool

The Mako command-line tool can be used to gain programmatic access to the same Mako data that’s available on the dashboard. This tool is used by benchmark owners to manage their benchmarks and runs.

To learn about how to use the Mako command-line tool, please read

Writing a new performance test using Mako

If you’re writing a new performance test that will use a Mako client to store results in and to guard against performance regressions, please read

There are example performance tests in the examples/ folder.

Accessing Mako data with the storage libaries

The most common programmatic use of Mako is to create a new run from performance test data, and for that use case we recommend Quickstore. But if you need different kinds of access to the data (e.g. updating or deleting existing data), you’ll want to use the C++ or Go storage library.

You can’t perform that action at this time.