Getting Started

Hi there! thank you for trying out Pyroscope! In this guide you'll learn everything you need to know to start using Pyroscope to find bottlenecks in your code. If you have any questions or if something doesn't work reach out to us in our slack group or email us at

You can also schedule a call with an engineer if that's easier for you. We would love to learn about your use-case and help you get started.

Install Pyroscope Server

We provide a few different ways for you to install Pyroscope server:

  • if you're on a Mac, we recommend using homebrew
  • if you're on Linux, we recommend using our rpm or deb packages
  • we also have a docker image that you can use anywhere

To find out about other ways of installing Pyroscope, or to find packages for other CPU architectures (e.g ARM) visit our Downloads page.

brew install pyroscope-io/brew/pyroscope

Verify the installation

After installing Pyroscope, verify that the installation worked by opening a new terminal session and running the command pyroscope.


You should see something like this:

_ __ _ _ _ __ ___ ___ ___ ___ _ __ ___
| '_ \| | | | '__/ _ \/ __|/ __/ _ \| '_ \ / _ \
| |_) | |_| | | | (_) \__ \ (_| (_) | |_) | __/
| .__/ \__, |_| \___/|___/\___\___/| .__/ \___|
| | __/ | | |
|_| |___/ |_|
pyroscope [flags] <subcommand>

If something doesn't work, reach out to us in our slack group or email us at

Start the server

To start pyroscope server run pyroscope server command:

pyroscope server

Pyroscope server is the database where all the profiling information is stored. It also has a web UI (by default available on port :4040)

After you start the server you should be able to open http://localhost:4040/ and see that pyroscope server is profiling itself (pyroscope.server.cpu application).

Profile your applications

Now that you have pyroscope server running you can start continuously profiling your own applications.

We currently support 3 platforms:

  • Ruby
  • Python
  • Go

We'll be adding more platforms soon, if you want us to prioritize one particular platform, reach out to us in our slack group or email us at

To start profiling a Ruby application, add pyroscope exec before the command. For example, if you're working with a Rails application, here's how you profile it:

pyroscope exec rails server

If you're running your app inside a Docker container, see our Docker Guide. We also have examples.

This will make pyroscope agent send profiling data over to pyroscope server. Open http://localhost:4040/ in your browser to explore the incoming profiling data.


Pyroscope can be configured with command line arguments, environment variables and config files. See Configuration for more info on this topic.

Deploy Pyroscope in production

If you're installing pyroscope in production environment, read Deployment Guide.