How many metrics? A guide to estimating the size of your system

Published: 24 Sep 2019

Grafana Cloud, our composable observability platform, is billed based on usage. A common question we get is “How much will it cost to monitor N servers?” We charge $49/month for the Pro plan, which includes up to 15,000 active series.

To help you understand what that translates to in terms of how much storage you need, here’s a rough guide to estimating the size of your system.

Graphite vs. Prometheus

The number of servers you can monitor for $49 with Grafana Cloud will depend on your choice of technology: Graphite or Prometheus.

Each 15,000 active series of Hosted Graphite is enough capacity to handle monitoring around 50 servers, assuming 300 series per server at up to 10-second resolution, when just looking at Linux-level performance metrics (CPU, memory, disk, and network).

Each 15,000 active series of Prometheus data is useful for ~20 servers; node_exporter can be set up to export ~700 active series per server, which at 15s scrape interval is 2,800 dpm.

Prometheus needs more series per server than Graphite, due to the use of more fine-grained metrics (per CPU, all CPU states, etc.) than the default collectd setup. This, however, can be tuned by the user.

node_exporter vs. collectd

Collectd is the de-facto standard agent for Linux system monitoring and Graphite. Collectd is going to produce around 300 series and 1,800 dpm by default on a server that has 8 cores, 8 partitions, and 8 network interfaces.

node_exporter is the standard agent for Linux system monitoring in the Prometheus ecosystem. A good estimate is ~700 series for a similar server with node_exporter.