Easily build complex reports
Monitoring and efficiency metrics
Custom cost allocation tags
Network cost visibility
Organizational cost hierarchies
Budgeting and budget alerts
Discover active resources
Consumption-based insights
Alerts for unexpected charges
Automated AWS cost savings
Discover cost savings
Unified view of AWS discounts
COGS and business metrics
Model savings plans
Collaborate on cost initiatives
Create and manage your teams
Automate cloud infrastructure
Cloud cost issue tracking
Detect cost spikes
by Vantage Team
Contents
Note: This blog post has been done as an independent pricing evaluation for the benefit of Vantage users and the broader infrastructure community. While Vantage employees have met with both representatives of AWS and PlanetScale to confirm details, this is not a sponsored post and was not commissioned by either party.
PlanetScale is a recent entrant to the Database-as-a-Service (DBaaS) market and is capturing significant developer mindshare. The company is taking a developer experience focused approach to creating and managing databases with what’s advertised as a “serverless” database service. Their offering is powered by an open-source software named Vitess and is priced primarily on rows read, written and storage utilized.
Amazon Relational Database Service (RDS) is a service that has been available to customers since 2009. Similar to most AWS products, Amazon has focused on providing the bare primitives while much of the work is still contingent on you to manage and maintain. Amazon RDS is one of the top cost drivers for most organizations and is currently ranked as the #2 cost driving service on the Vantage Cost Leaderboard, behind Amazon EC2.
For this comparison, we’ll match PlanetScale against the following RDS configuration - with specific instance types mentioned further down:
The pricing employed by these two services aren’t easy to compare right off the bat. You’ll see later on how we take a few examples to compare a few different situations but before getting into that it is important to understand how these two services price as a primer. If you’re familiar with the pricing of these services, you can skip to the next section.
Amazon RDS charges based on an a-la-carte menu typical of AWS services. You’ll pay on the following metrics:
PlanetScale takes a different approach, simplifying pricing across all regions but changing the model to be more focused on usage:
Both Amazon RDS and PlanetScale offer free tiers. RDS offers 750 hours per month (basically a full month for a single running instance) with 20 GB of General Purpose (SSD) database storage for only a db.t2.micro instance which, for all intents and purposes, is an antiquated instance type as we head into 2022.
PlanetScale offers a free single database (it is unclear what underlying instance type this free tier runs on) that includes 5GB storage per month and 1 billion row reads per month and 10 million row writes per month.
These free tiers are roughly comparable from a resource perspective with a few call outs:
In comparing pricing beyond the free tier, we look to provide a few examples given the different pricing methodologies between these two service providers. We’ve profiled a random sampling of 1,000 Vantage users to see some of the more commonly used RDS instances and have selected four of the top instance types used across different instance families and CPU chipsets for the purposes of diversity in this blog post.
PlanetScale offers a “Scaler” plan that charges a monthly subscription of $29 per month with overages applied for additional rows read and written beyond their default allocations. Below is a table that shows an equivalent amount of usage you can get from using PlanetScale at equivalent overage charges.
The data backing this analysis can be found here.
Looking at the above, the tipping point for using PlanetScale from RDS is simply looking at your corresponding instance type and profiling the number of rows read vs rows written. Where the number of rows read and written is significantly below the allocation you can receive, moving to PlanetScale can make sense from a pure price perspective.
It’s also important to note we gave the maximum allocation for both rows read and written from the equivalent PlanetScale overage charges. As various customers reading this post will have different read/write patterns, we felt we should show the ceiling on both but in reality there is a trade-off between these in practice.
So given the above, at what point does it make financial sense to consider looking at PlanetScale vs RDS? We gave four popular RDS instance type configurations above but for users of RDS looking to understand the cost implications for their specific setup you can use the equation below to see the cost of using PlanetScale:
$29 monthly subscription + (millions of rows read for the month * 0.001) + (millions of rows written for the month * 1.50)
Whatever that number produces you can line up with the Amazon RDS multi-AZ price you’re currently paying Amazon. There are cases where PlanetScale could be considerably cheaper and cases where PlanetScale could be more expensive but ultimately this depends on your database usage patterns.
This blog post attempts to look at PlanetScale and RDS from a pure pricing comparison - there are likely a lot of other considerations you should keep in mind:
MongoDB Atlas is the cost-effective choice for production workloads where high-availability is a requirement.
Grafana is a strong competitor to the monitoring and observability features of Datadog for a fraction of the price.
AWS is implementing a policy update that will no longer allow Reserved Instances and Savings Plans to be shared across end customers.