Grafana VPS Requirements: RAM, CPU & Storage Guide
Grafanaโs server is usually smaller than the systems that hold the metrics, logs, and traces it displays. That boundary matters when sizing a VPS. Grafana Labs publishes requirements for the Grafana process, but Prometheus, Loki, Tempo, MySQL, PostgreSQL, and other data sources need their own capacity plan.
The official installation guide lists 512 MB of memory and one CPU core as the minimum. Treat that as an evaluation floor, not a default production plan. A useful VPS choice starts with the number of active viewers, dashboard panels, data source queries, alert rules, and refresh intervals.
Official Grafana sizing tiers
Grafanaโs current guidance separates the bare minimum from three deployment tiers:
| Deployment | CPU | Memory | Database disk | Instances |
|---|---|---|---|---|
| Evaluation floor | 1 core | 512 MB | Size for the local database and logs | 1 |
| Small | 2 cores | 2 to 4 GB | 10 to 20 GB SSD | 1 |
| Medium | 4 to 8 cores | 8 to 16 GB | 20 to 50 GB SSD | 2, load-balanced |
| Large | 8 to 16 or more cores per instance | 16 to 32 GB or more per instance | 50 GB or more, high IOPS | 3 or more, load-balanced |
These are starting points for the Grafana server process. The official guidance explicitly excludes the capacity used by data stores such as Prometheus, Mimir, Loki, and Tempo. If those services share the VPS, add their measured requirements instead of assuming the Grafana tier covers the whole observability stack.
For a home lab or a small internal team, the small tier is a practical first production estimate. Validate it with the dashboards, alert rules, plugins, and refresh rates you will actually use. A one-core, 512 MB instance can prove that Grafana starts, but it leaves little room for concurrent queries, alerts, upgrades, or an image renderer.
What drives CPU and memory use
Four workload dimensions should decide whether you stay on the small tier or move up:
- Concurrent viewers: An open dashboard issues data source queries and renders panels. More active viewers increase CPU and memory demand. Idle users generally contribute much less load unless their dashboards auto-refresh.
- Alert evaluation: Grafana OSS evaluates alerts in the same process as the web interface and data source proxy. Many rules or short evaluation intervals can compete with interactive dashboards for CPU.
- Data source queries: Backend data source plugins and proxied SQL queries consume server connections and processing time. The type and cost of a query matter more than the number of configured data sources alone.
- Panels and refresh intervals: A dashboard with many panels can issue many queries on every refresh. Longer intervals and narrower time ranges reduce avoidable work.
Do not respond to a slow dashboard by upgrading the VPS before checking the query path. Grafanaโs own troubleshooting guide recommends reducing long time ranges, limiting the number of series, and avoiding refresh intervals that are shorter than the data changes justify.
Storage: separate Grafana from the data it visualizes
Grafana stores users, dashboards, configuration state, and other application data in its database. It normally queries metrics, logs, and traces from separate data sources. A large Prometheus retention window therefore grows Prometheus storage, not Grafanaโs database disk.
The default embedded database is SQLite. It is convenient for local development and small evaluation instances, but Grafana does not recommend it for production. Use MySQL or PostgreSQL when you need better reliability or more than one Grafana instance. Two or more Grafana servers also require a shared database for high availability.
Your disk plan should cover:
- the Grafana database or the external database host;
- installed plugins and provisioning files;
- application logs and temporary files;
- backups of configuration, plugin data, and the database;
- image-rendering output if you enable reporting or rendered panels.
Grafanaโs backup guide covers the configuration, plugin data, and database separately. For a SQLite backup, stop Grafana before copying the database file so the copy is consistent. Database-native backup tools are the safer path for MySQL and PostgreSQL.
Pick the VPS for the stack you will run
Use the small Grafana tier when the VPS runs Grafana alone for a small team and queries remote data sources. Add capacity if the same machine also runs Prometheus, Loki, a production database, or other applications. Those components have different growth drivers, so there is no honest universal RAM-per-dashboard formula.
Before ordering, choose the path that matches your decision:
- Compare VPS options built around Grafana workloads.
- Review the lower-cost Grafana VPS shortlist.
- Follow the Grafana VPS installation guide.
VPS Comparisons for Grafana Hosting
The provider figures below are the siteโs existing comparison snapshot. Verify the current checkout total, taxes, and plan availability before purchase. Use the sizing tiers above to decide whether a listed plan fits Grafana alone or a larger monitoring stack.
| Provider | Starting Price | RAM | CPU | Storage Notes |
|---|---|---|---|---|
| Contabo VPS | โฌ5.99/month | 4 GB | 1 vCPU | SSD available for extra cost |
| Hetzner Cloud | โฌ5.49/month | 4 GB | 2 vCPUs | SSD included |
| DigitalOcean | $6/month | 2 GB | 1 vCPU | SSD included |
| Vultr | $6/month | 2 GB | 1 vCPU | SSD included |
| Linode (Akamai) | $5/month | 4 GB | 2 vCPUs | SSD included |
For the broader provider list, use the full VPS comparison. This requirements page does not rank providers because the right choice depends on whether Grafana, its database, and its data sources share one server.
FAQs
-
What is the minimum RAM needed for Grafana? Grafana Labs lists 512 MB as the minimum for the Grafana server. Its small deployment tier starts at 2 to 4 GB. The lower value is an evaluation floor; use the tier and a workload test for a production decision.
-
Can Grafana run on a VPS with 1 vCPU? Yes. One core meets the official minimum, but the small deployment tier starts at two cores. Active viewers, alert rules, backend data source queries, panel count, and refresh intervals decide how quickly one core becomes a bottleneck.
-
Does Grafana store all metrics and logs on its own disk? Usually not. Grafana queries data sources such as Prometheus, Loki, Tempo, or SQL systems. Grafanaโs disk holds its own database, plugins, logs, temporary files, and backups. Capacity for the data sources must be planned separately.
-
When should I stop using SQLite? SQLite is suitable for local development and small evaluation instances. Grafana recommends MySQL or PostgreSQL for production, and a shared MySQL or PostgreSQL database is required for a multi-instance high-availability setup.
-
What should I check before upgrading the VPS? Check expensive data source queries, the number of series, dashboard time ranges, panel count, alert evaluation intervals, and auto-refresh settings. Then observe CPU, memory, database latency, and query duration under a representative workload.