Table Of Contents
Definition: Amazon RDS Instances (Instance Classes And Sizes) What Does An Amazon RDS Instance Do? RDS Instance Classes Explained What Are The Different RDS Instance Types? What Are The Different Amazon RDS Instance Sizes? How To Choose The Right Amazon RDS Instances For Your Workload Amazon RDS Instances FAQs

Amazon’s Relational Database Service (Amazon RDS) offers dozens of instance types, sizes, and families — and choosing the wrong one can quietly drive up costs, limit performance, or create scaling risk over time. What looks like a simple infrastructure decision often turns into a FinOps challenge, where teams overprovision “just in case,” undersize critical workloads, or struggle to explain rising database spend.

In this guide, we break down AWS RDS instance types in practical terms: what they are, how classes and sizes differ, and how those choices affect performance, scalability, and cost efficiency in 2026 and beyond. You’ll learn how RDS instances work, how to compare options, and how to think about instance selection through a price-performance and visibility lens, not just raw specs.

Let’s start by defining what Amazon RDS instances are and what they do:

Definition: Amazon RDS Instances (Instance Classes And Sizes)

An Amazon RDS instance is a managed database environment with defined compute, memory, and networking capacity. What many teams call an “RDS instance type” is actually a combination of a DB instance class (such as db.m6g or db.r6g) and an instance size (such as large or 4xlarge), which together determine database performance, scalability limits, and cost.

Note: AWS officially calls these resources DB instances. In this guide, we use RDS instance types to reflect how most teams refer to RDS instance classes and sizes in practice.

The Cloud Cost Playbook

What Does An Amazon RDS Instance Do?

Amazon RDS is a Database-as-a-Service (DaaS) platform. RDS instances are virtual servers that provide the computing power to set up, run, and maintain databases in the AWS public cloud.

AWS refers to the specific instances that power Amazon RDS as database instances (DB instances).

DB instances provide an isolated environment in which to create and host one or more relational databases. Yet, you can access those databases just like a regular stand-alone database.

RDS DB instances (virtual hardware) run a kind of operating system (software) known as a relational database engine (DB engine).

Amazon RDS currently supports six DB engine types:

  • Amazon Aurora
  • MariaDB
  • MySQL
  • PostgreSQL
  • Oracle
  • Microsoft SQL Server

There are different versions of these engines, each with different features. The one thing they all have in common is that they run on RDS database instances.

How do those database instances work?

RDS Instance Classes Explained

RDS instance classes group instance types by how they balance CPU, memory, and networking performance. While AWS exposes many instance families and sizes, most RDS instance types fall into a few predictable performance patterns.

Understanding these patterns is more useful than memorizing specs. From a FinOps perspective, instance class selection directly affects:

  • Cost stability under load
  • Scaling behavior during traffic spikes
  • How much idle capacity you pay for over time

The table below summarizes the most common RDS instance class categories and when to use them.

Amazon RDS Instance ClassUse caseNo. of vCPUs supportedAmount of Memory Supported in GiBNetworking I/O
Standard performanceWorkloads with light in-memory functionsUp to 641.7 to 2560.45Gbps to 10Gbps
BurstableperformanceWhere you may need instances capable of handling sudden spikes in heavy load as needed (bursts).Up to 12817.1 to 39040.50Gbps to 14Gbps
Memory optimizedWorkloads with many in-memory functions, such as big data analysisUp to 81 to 32Low to Moderate I/O

Each RDS instance class includes both an instance type and size. An instance class can have several instance types. Then, each RDS instance type offers several instance sizes to choose from.

To avoid confusion, it helps to separate how AWS structures RDS instance options:

  • Instance class describes the performance category (for example, burstable, general purpose, or memory optimized).
  • Instance family identifies the hardware generation within that class (such as T3, M5, or R6g).
  • Instance size determines the scale of resources, like vCPUs and memory (for example, large or 4xlarge).

What many teams casually call an “RDS instance type” is usually a combination of an instance family and size, such as db.m6g.4xlarge.

This flexibility gives you the freedom to choose the perfect database instance for your needs. It can also help achieve a healthy price-performance ratio. Yet, managing all those options often adds to the complexity of managing Amazon RDS.

What Are The Different RDS Instance Types?

While AWS exposes dozens of RDS instance families, they generally map to two broader performance profiles: general-purpose and memory-optimized. These profiles help narrow choices quickly before you compare specific families and sizes.

The table below shows how RDS instance classes, families, and types relate to each other, along with the workloads they’re best suited for.

Amazon RDS Database Instance ClassesDatabase Instance TypeAmazon RDS instance familiesAmazon RDS instance typesUse case
Standard performanceGeneral-purposeTMdb.t2db.m1, db.m2, db.m3, db.m4, db.m5, db.m5d, db.m6gBaseline level of CPU performanceBalanced CPU, memory, and networking capacity for various types of workloads, but especially suitable for CPU-intensive workloads
Burstable performanceGeneral purposeTdb.t2 (Unlimited Mode)db.t3db.t4gBalanced CPU, memory, and networking capacity for various types of workloads, but able to scale up performance during unexpected increases in workload for as long as needed
Memory-optimizedMemory-optimizedRXZdb.r3, db.r4, db.r5d, db.r5b, db.r5, db.r6gdb.x1, db.x1e, db.x2gdb.z1dBoost performance of processes that handle a lot of data sets in memoryDesigned for high performance in enterprise-grade and heavy in-memory usesCombines the highest compute and memory performance of any instance type

What Are The Different Amazon RDS Instance Sizes?

RDS instance sizes determine how much CPU, memory, and networking capacity an instance provides. As instance sizes increase, costs rise non-linearly, especially when higher memory and networking tiers are involved.

Rather than scanning every size option, most teams should focus on:

  • Whether the workload is CPU-bound or memory-bound
  • Peak versus average utilization
  • How often instance sizes change over time

The tables below outline the available instance sizes and their resource profiles so you can compare options efficiently.

Database instance typeDatabase instance sizesvCPUMemory in GiBNetworking performance in Gbps
T2db.t2.microdb.t2.smalldb.t2.mediumdb.t2.largedb.t2.xlargedb.t2.2xlarge11224812481632Low to moderateLow to moderateLow to moderateLow to moderateModerateModerate
T3db.t3.microdb.t3.smalldb.t3.mediumdb.t3.largedb.t3.xlargedb.t3.2xlarge22224812481632Up to 5GbpsUp to 5GbpsUp to 5GbpsUp to 5GbpsUp to 5GbpsUp to 5Gbps
T4gdb.t4g.microdb.t4g.smalldb.t4g.mediumdb.t4g.largedb.t4g.xlargedb.t4g.2xlarge22224812481632Up to 5GbpsUp to 5GbpsUp to 5GbpsUp to 5GbpsUp to 5GbpsUp to 5Gbps
M4db.m4.largedb.m4.xlargedb.m4.2xlargedb.m4.4xlargedb.m4.10xlargedb.m4.16xlarge2481640648163264160256ModerateHighHighHigh10Gbps25Gbps
M5ddb.m5d.largedb.m5d.xlargedb.m5d.2xlargedb.m5d.4xlargedb.m5d.8x.largedb.m5d.12xlargedb.m5d.16xlargedb.m5d.24xlarge24816324864968163264128192256384Up to 10 GbpsUp to 10GbpsUp to 10GbpsUp to 10Gbps10Gbps12Gbps20Gbps25Gbps
M5db.m5.largedb.m5.xlargedb.m5.2xlargedb.m5.4xlargedb.m5.8xlargedb.m5.16xlargedb.m5.12xlargedb.m5.24xlarge24816324864968163264128192256384Up to 10GbpsUp to 10GbpsUp to 10GbpsUp to 10Gbps10Gbps12Gbps20Gbps25Gbps
M6gdb.m6g.largedb.m6g.xlargedb.m6g.2xlargedb.m6g.4xlargedb.m6g.8xlargedb.m6g.12xlargedb.m6g.16xlarge248163248648163264128192256Up to 10GbpsUp to 10GbpsUp to 10 GbpsUp to 10Gbps12Gbps20Gbps25Gbps
R4db.r4.largedb.r4.xlargedb.r4.2xlargedb.r4.4xlargedb.r4.8xlargedb.r4.16xlarge24816326415.2530.561122244488Up to 10GbpsUp to 10GbpsUp to 10GbpsUp to 10Gbps10Gbps25Gbps
R5ddb.r5d.largedb.r5d.xlargedb.r5d.2xlargedb.r5d.4xlargedb.r5d.8xlargedb.r5d.12xlargedb.r5d.16xlargedb.r5d.24xlarge2481632486496163264128256384512768Up to 10GbpsUp to 10GbpsUp to 10GbpsUp to 10Gbps10Gbps10Gbps20Gbps25Gbps
R5bdb.r5b.largedb.r5g.xlargedb.r5g.2xlargedb.r5g.4xlargedb.r5g.8xlargedb.r5g.12xlargedb.r5g.16xlargedb.r5g.24xlarge2481632486496163264128256384512768Up to 10 GbpsUp to 10 GbpsUp to 10GbpsUp to 10Gbps10Gbps10Gbps20Gbps25Gbps
R5*   
R6gdb.r6g.largedb.r6g.xlargedb.r6g.2xlargedb.r6g.4xlargedb.r6g.8xlargedb.r6g.12xlargedb.r6g.16xlarge24816324864163264128256384512Up to 10GbpsUp to 10GbpsUp to 10GbpsUp to 10Gbps10Gbps20Gbps25Gbps
X1db.x16xlargedb.x1.32xlarge64 (32 cores)128 (64 cores)976195210Gbps25 Gbps
X1edb.x1e.xlargedb.x1e.2xlargedb.x1e.4xlargedb.x1e.8xlargedb.x1e.16xlargedb.x1e.32xlarge4816326412812224448897619523904Up to 10GbpsUp to 10GbpsUp to 10GbpsUp to 10Gbps10Gbps25Gbps
X2gdb.x2g.mediumdb.x2g.largedb.x2g.xlargedb.x2g.2xlargedb.x2g.4xlargedb.x2g.8xlargedb.x2g.12xlargedb.x2g.16xlarge1248163248641632641282565127681024Up to 10GbpsUp to 10GbpsUp to 10GbpsUp to 10GbpsUp to 10Gbps12Gbps20Gbps25Gbps
Z1ddb.z1d.largedb.z1d.xlargedb.z1d.2xlargedb.z1d.3xlargedb.z1d.6xlargedb.z1d.12xlarge24812244816326496192384Up to 10,000MbpsUp to 10,000MbpsUp to 10,000MbpsUp to 10,000Mbps10,000Mbps25,000Mbps

From a FinOps standpoint, RDS instance size selection is one of the most common sources of cloud waste. Teams often provision for peak load, then pay for unused capacity during normal operation.

Common cost drivers include:

  • Oversized instances running at low utilization
  • Burstable instances operating continuously above baseline
  • Memory-optimized instances used for workloads that don’t require large in-memory datasets

Because database workloads evolve, instance sizing should be revisited regularly, not treated as a one-time decision.

Other variables to consider when configuring RDS instances include whether they support enhanced networking, if they are EBS-optimized, and which database storage option to pair with them.

Now, it’s not uncommon to feel overwhelmed by the number of RDS instance classes, families, and types available. Right-sizing database instances can be challenging for many teams. So, how do you do it?

Related reads

How To Choose The Right Amazon RDS Instances For Your Workload

Choosing the right RDS instance type is rarely a one-and-done decision. Workloads change, usage patterns shift, and small configuration updates can significantly affect database costs over time.

Many teams start by manually testing different instance types and sizes. While this can work, it often leads to long trial-and-error cycles, inconsistent decisions, and unexpected cost increases as environments scale.

There’s a second option. Consider automating the process with a tool if you’re having trouble choosing the right RDS instance.

Using CloudZero Advisor, you can choose the most suitable Amazon RDS instances based on a combination of factors, like your DB engine, Amazon region, pricing, as well as your desired network, disk, CPU, and memory performance.

Check this out:

Moreover, CloudZero empowers you to collect, analyze, and understand your Amazon RDS costs in relation to your overall AWS spend. You can also zoom in to see your costs in a way that most cloud cost optimization tools never show you, like this:

With CloudZero, you can easily identify who, when, and where your cloud budget is going by viewing your:

Tagging Amazon RDS resources is also a big challenge since AWS tags are fragile and incomplete for cost ownership. RDS supports tags on instances and clusters. But those tags only appear in cost data if they’re activated as cost allocation tags, applied consistently at creation, and maintained over time. Even then, tags don’t reliably cover all RDS-related costs, which creates untaggable spend, charges that appear in billing but can’t be tied to a team, environment, or service using tags alone.

CloudZero improves this by first ingesting and validating activated AWS tags for RDS, then filling the gaps tags leave behind. It allocates both taggable and untaggable RDS spend using account structure, service relationships, and usage context, so database costs are still mapped to owners, environments, and business units even when tagging breaks down like this:

Useful resources:

RDS costs can also spike when instance sizes are changed, multi-AZ is enabled, read replicas are added, or storage auto-scales after a workload change. CloudZero detects these anomalies in real time and links each spike directly to the affected RDS resource, team, and change window. This enables teams to catch unexpected database cost increases early, before a single configuration change becomes a month-long billing surprise.

Ambitious brands such as Drift, Duolingo, Skyscanner, and more use CloudZero to reduce their AWS costs and save millions of dollars. By combining cost visibility, allocation, and change awareness, CloudZero helps teams make RDS instance decisions based on real usage and business impact — not guesswork.

Schedule a demo today to get started!

Amazon RDS Instances FAQs

The following are answers to the most frequently asked questions about Amazon RDS.

How much do Amazon RDS instances cost?

RDS costs depend on several factors, which we’ve detailed in our Amazon RDS pricing guide here.

What is the difference between RDS and EC2 instances?

The Amazon RDS service provides database instances, while the Amazon EC2 service provides compute instances.

How do I change my RDS instance type?

Use the AWS Command-Line Interface (AWS CLI), the AWS Management Console, or the Amazon RDS API to create or change your database instances.

Does changing my RDS instance type cause downtime?

RDS reboots your databases to apply changes, which can sometimes cause downtime. Be sure to plan your workload in advance to avoid disruptions to your service.

How long does it take to change an Amazon RDS instance?

You can either apply instance changes immediately or schedule them to apply in the next maintenance window.

Can I downgrade an RDS instance size?

You can change the size of your RDS instance depending on your workload.

Why are Amazon RDS instances more expensive than Amazon EC2 instances?

Amazon RDS is a fully managed AWS service that eliminates the need to set up, run, and maintain your own database infrastructure on AWS. This time-saving feature is reflected in RDS’ higher pricing.

The Cloud Cost Playbook

The step-by-step guide to cost maturity

The Cloud Cost Playbook cover