If your needs exceed what is available here, we can easily spin up additional sizes for you. Just reach out and let us know. We also support sharding on Vitess clusters.

Network-attached storage

Network-attached storage databases come with autoscaling storage and have varying levels of compute power.
ProcessorMemoryTransactions*
PS-101/8 vCPU1 GB RAM70
PS-201/4 vCPU2 GB RAM75
PS-401/2 vCPU4 GB RAM75
PS-801 vCPU8 GB RAM110
PS-1602 vCPUs16 GB RAM158
PS-3204 vCPUs32 GB RAM211
PS-4008 vCPUs32 GB RAM211
PS-6408 vCPUs64 GB RAM281
PS-70016 vCPUs32 GB RAM211
PS-90016 vCPUs64 GB RAM281
PS-128016 vCPUs128 GB RAM375
PS-140032 vCPUs64 GB RAM281
PS-180032 vCPUs128 GB RAM375
PS-210048 vCPUs96 GB RAM328
PS-256032 vCPUs256 GB RAM500
PS-270048 vCPUs128 GB RAM438
PS-280064 vCPUs128 GB RAM375
* Transactions refers to the number of simultaneous transactions your database can process, which is different than simultaneous connections. This is also known as the transaction pool.

Metal

Metal databases are backed by locally-attached NVMe drives for storage, unlocking incredible performance and cost-efficiencies. Because the drives are locally-attached, you need to choose both your compute and storage resources when you create your database. The storage options vary by cloud provided, so we break out the options into AWS and GCP sections.

Metal options on AWS

ProcessorMemoryNVMe Storage optionsTransactions*
M-1602 vCPUs16 GB RAM110 GB158
M-1602 vCPUs16 GB RAM460 GB158
M-1602 vCPUs16 GB RAM1,241 GB158
M-3204 vCPUs32 GB RAM229 GB211
M-3204 vCPUs32 GB RAM929 GB211
M-3204 vCPUs32 GB RAM2,490 GB211
M-6408 vCPUs64 GB RAM466 GB281
M-6408 vCPUs64 GB RAM1,866 GB281
M-6408 vCPUs64 GB RAM4,992 GB281
M-128016 vCPUs128 GB RAM942 GB375
M-128016 vCPUs128 GB RAM3,739 GB375
M-256032 vCPUs256 GB RAM1,891 GB500
M-256032 vCPUs256 GB RAM7,492 GB500

Metal options on GCP

ProcessorMemoryNVMe Storage optionsTransactions*
M-1602 vCPUs16 GB RAM367 GB158
M-1602 vCPUs16 GB RAM742 GB158
M-1602 vCPUs16 GB RAM1,492 GB158
M-1602 vCPUs16 GB RAM2,992 GB158
M-1602 vCPUs16 GB RAM5,992 GB158
M-1602 vCPUs16 GB RAM8,992 GB158
M-3204 vCPUs32 GB RAM367 GB211
M-3204 vCPUs32 GB RAM742 GB211
M-3204 vCPUs32 GB RAM1,492 GB211
M-3204 vCPUs32 GB RAM2,992 GB211
M-3204 vCPUs32 GB RAM5,992 GB211
M-3204 vCPUs32 GB RAM8,992 GB211
M-6408 vCPUs64 GB RAM367 GB281
M-6408 vCPUs64 GB RAM742 GB281
M-6408 vCPUs64 GB RAM1,492 GB281
M-6408 vCPUs64 GB RAM2,992 GB281
M-6408 vCPUs64 GB RAM5,992 GB281
M-6408 vCPUs64 GB RAM8,992 GB281
M-128016 vCPUs128 GB RAM742 GB375
M-128016 vCPUs128 GB RAM1,492 GB375
M-128016 vCPUs128 GB RAM2,992 GB375
M-128016 vCPUs128 GB RAM5,992 GB375
M-128016 vCPUs128 GB RAM8,992 GB375
M-256032 vCPUs256 GB RAM1,492 GB500
M-256032 vCPUs256 GB RAM2,992 GB500
M-256032 vCPUs256 GB RAM5,992 GB500
M-256032 vCPUs256 GB RAM8,992 GB500

Selecting a cluster size

Selecting the correct cluster size for your database can have a dramatic impact on how it performs and how much it costs. A good rule of thumb is when you notice CPU usage is consistently at or close to 100% for an extended period of time, you may benefit from upsizing your cluster. Conversely, if your CPU usage is consistently below 50%, you may be able to downsize. You can monitor your CPU usage by clicking on your database, clicking “Primary” in your architecture diagram, and referencing the chart under “Metrics and performance”. There are also special cases where you may want to temporarily upsize out of caution if you’re anticipating a large spike in traffic, such as during a launch or event. In these cases, you can easily upsize ahead of your event, and then downsize after. Changing cluster sizes is a seamless operation that requires no downtime. If you are migrating from an existing cloud provider with resource-based pricing, be sure to compare your currently selected instance with our available cluster sizes. Keep in mind, each database comes with a production branch with two replicas, as well as 1,440 hours worth of development branches (for Vitess databases). The development branches essentially equate to two extra “always on” databases. In many cases, you can deprecate your dev/staging databases that you pay extra for with other providers in favor of the development branches. In the end, this usually results in significant cost savings. Databases in PlanetScale also come with additional beneficial infrastructure that is not easily configured or available in other hosted database solutions. For more information on what is provisioned with each database, read our Vitess architecture and Postgres architecture docs. If you are unsure which plan or cluster size is right for your application, contact us to get further assistance. Our self-serve plans are flexible enough to handle the majority of customers. However, there are several use cases where you may need a more custom plan. This is where our Enterprise offerings shine.

Upsizing and downsizing clusters

As your application scales, upgrading or downgrading your cluster is a seamless operation that does not involve any downtime. To change cluster sizes, go to your PlanetScale dashboard, click on your database, click the gear icon that specifies your current cluster size, select the new cluster size, and click “Update”. The time it takes to change sizes depends on the size and region of your database. Larger databases may take 20 minutes to upsize/downsize. However, this is all done online, so you will not experience any downtime. Keep in mind, once you update your cluster size, you cannot change sizes again until the first size change completes. When you choose to change cluster size, we upgrade each of your replicas one by one: delete the tablet container, create a new tablet container of the new size, attach the persistent volume, start it up, and connect it to the primary. Once that’s complete, we fail the primary over to one of those new replicas, and do the same thing to the old primary.

Need help?

Get help from the PlanetScale Support team, or join our GitHub discussion board to see how others are using PlanetScale.