Skip to main content
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.
ProcessorMemory
PS-101/8 vCPU1 GB RAM
PS-201/4 vCPU2 GB RAM
PS-401/2 vCPU4 GB RAM
PS-801 vCPU8 GB RAM
PS-1602 vCPUs16 GB RAM
PS-3204 vCPUs32 GB RAM
PS-4008 vCPUs32 GB RAM
PS-6408 vCPUs64 GB RAM
PS-70016 vCPUs32 GB RAM
PS-90016 vCPUs64 GB RAM
PS-128016 vCPUs128 GB RAM
PS-140032 vCPUs64 GB RAM
PS-180032 vCPUs128 GB RAM
PS-210048 vCPUs96 GB RAM
PS-256032 vCPUs256 GB RAM
PS-270048 vCPUs128 GB RAM
PS-280064 vCPUs128 GB RAM

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 optionsNotes
M-101/8 vCPU1 GB RAMconfigurablePostgres only
M-201/4 vCPU2 GB RAMconfigurablePostgres only
M-401/2 vCPU4 GB RAMconfigurablePostgres only
M-801 vCPU8 GB RAMconfigurablePostgres only
M-1602 vCPUs16 GB RAMconfigurable
M-3204 vCPUs32 GB RAM229 GB
M-3204 vCPUs32 GB RAM929 GB
M-3204 vCPUs32 GB RAM2,490 GB
M-6408 vCPUs64 GB RAM466 GB
M-6408 vCPUs64 GB RAM1,866 GB
M-6408 vCPUs64 GB RAM4,992 GB
M-128016 vCPUs128 GB RAM942 GB
M-128016 vCPUs128 GB RAM3,739 GB
M-256032 vCPUs256 GB RAM1,891 GB
M-256032 vCPUs256 GB RAM7,492 GB

Metal options on GCP

ProcessorMemoryNVMe Storage options
M-1602 vCPUs16 GB RAM367 GB
M-1602 vCPUs16 GB RAM742 GB
M-1602 vCPUs16 GB RAM1,492 GB
M-1602 vCPUs16 GB RAM2,992 GB
M-1602 vCPUs16 GB RAM5,992 GB
M-1602 vCPUs16 GB RAM8,992 GB
M-3204 vCPUs32 GB RAM367 GB
M-3204 vCPUs32 GB RAM742 GB
M-3204 vCPUs32 GB RAM1,492 GB
M-3204 vCPUs32 GB RAM2,992 GB
M-3204 vCPUs32 GB RAM5,992 GB
M-3204 vCPUs32 GB RAM8,992 GB
M-6408 vCPUs64 GB RAM367 GB
M-6408 vCPUs64 GB RAM742 GB
M-6408 vCPUs64 GB RAM1,492 GB
M-6408 vCPUs64 GB RAM2,992 GB
M-6408 vCPUs64 GB RAM5,992 GB
M-6408 vCPUs64 GB RAM8,992 GB
M-128016 vCPUs128 GB RAM742 GB
M-128016 vCPUs128 GB RAM1,492 GB
M-128016 vCPUs128 GB RAM2,992 GB
M-128016 vCPUs128 GB RAM5,992 GB
M-128016 vCPUs128 GB RAM8,992 GB
M-256032 vCPUs256 GB RAM1,492 GB
M-256032 vCPUs256 GB RAM2,992 GB
M-256032 vCPUs256 GB RAM5,992 GB
M-256032 vCPUs256 GB RAM8,992 GB

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.

Transaction pools (Vitess)

Each Vitess database has a predefined limit on the number of simultaneous transactions it supports. This is also known as the transaction pool. These limits are put in place as a protection mechanism for your database. The limits for each size are shown in the table below:
Transaction Pool*
PS-10 and M-1070
PS-20 and M-2075
PS-40 and M-4075
PS-80 and M-80110
PS-160 and M-160158
PS-320 and M-320211
PS-400211
PS-640 and M-640281
PS-700211
PS-900281
PS-1280 and M-1280375
PS-1400281
PS-1800375
PS-2100328
PS-2560 and M-2560500
PS-2700438
PS-2800375

Need help?

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