Best fit for each plan

Which database plan to choose

The database plan defines the CPU and memory of each instance. For databases, memory matters even more than for applications: the more data and indexes fit in memory, the less the database depends on disk and the faster it responds.

This page explains the focus of each plan. Prices per instance, engines and storage rules are in Database Plans.

Quick summary: PostgreSQL, MariaDB and Valkey Key-Value

PlanvCPURAMFocusTypical examples
db-free0.1128 MBDevelopment and learning, at no costPrototype database, college project, test environment
db-starter0.3256 MBFirst production databaseSmall site or API, early-stage SaaS, internal application with few users
db-basic11 GBProduction with steady trafficAPI with thousands of users, small e-commerce, WordPress
db-premium22 GBLarger databases, with metricsGrowing SaaS, many concurrent queries, reports
db-enterprise88 GBHigh load and large volumesPlatforms with many users, tens of GB of frequently used data

db-free

Focus: learning, prototyping and testing at no cost.

db-free is a PostgreSQL with 1 instance and 1 GB of fixed storage. It is great to get started, but it has little memory and CPU: it handles few connections and simple queries well.

  • Good for: local development pointing to a cloud database, study projects, prototypes and demos, test environments.
  • Tip: set the application's connection pool to a few connections (for example, 2 to 5) and avoid keeping idle connections open.
  • Not ideal for: production. The plan has no replicas, its storage does not grow and performance drops quickly with more traffic. When the project gets users, move to db-starter or higher.

Each organization can have 1 PostgreSQL db-free. MariaDB and Valkey Key-Value have no free plan for new organizations.

db-starter

Focus: the first production database, at low cost.

With 0.3 vCPU and 256 MB, db-starter serves small applications that already have real users. PostgreSQL can have 1 to 3 instances, and MariaDB and Valkey always use one primary and two replicas.

  • Good for: sites and APIs with a few thousand visits a day, early-stage SaaS, internal applications, the database of a Basic HTTP project.

db-basic

Focus: production with steady traffic.

With 1 vCPU and 1 GB, db-basic keeps more data and indexes in memory and handles more complex queries well.

  • Good for: APIs with thousands of users, small and medium e-commerce stores, WordPress with MariaDB, mobile app back ends.

db-premium

Focus: larger databases and performance visibility.

With 2 vCPU and 2 GB, db-premium is the first plan with database metrics: CPU, memory, storage, connections, read cache, locks, latency and replication.

  • Good for: growing SaaS, applications with many concurrent queries, databases also used by reports and BI tools such as Metabase.

db-enterprise

Focus: high load and large volumes of frequently used data.

With 8 vCPU and 8 GB per instance, db-enterprise serves platforms with many concurrent users and large databases that need plenty of memory to keep performing.

Analytics plans

The Analytics plans are for analytical queries over large volumes of data, such as events, logs and product metrics. They do not replace the application's main database.

PlanResourcesFocus
analytics-sandbox1 vCPU, 2 GiB, 1 instanceTests, learning and prototypes; up to 2 concurrent queries and queries of up to 5 minutes
analytics-starter4 vCPU, 16 GiB, 1 instanceFirst real analytical workloads, without high availability
analytics-production2 vCPU and 8 GiB per instance, 3 instancesProduction analytics with high availability
analytics-enterprise4 vCPU and 16 GiB per instance, 3 instancesLarge volumes and many concurrent queries

How to tell whether the plan is right

SignWhat to do
The application gets "too many connections" errorsReduce the connection pool or move up a plan
Queries that used to be fast get slow as data growsReview indexes; if it continues, move to a plan with more memory
Memory or CPU usage always high in the metricsMove up a plan before the database slows down at peak times

Frequently asked questions

Can I start on db-free and move later?

Yes. Create a database on the plan you want and migrate the data with pg_dump and pg_restore. See Migration.

Does the database plan have to match the application plan?

No. A Basic application can use a db-basic database, for example. Size each one by what it does: the application by its traffic and the database by its data and query volume.

Next steps

Last updated on

On this page