Amazon Aurora is a modern relational database service. It offers unparalleled high performance and high availability at global scale with fully open-source MySQL- and PostgreSQL-compatible editions and a range of developer tools for building serverless and machine learning (ML)-driven applications.
Choose the Aurora pricing that is right for your business needs, with predictable, pay-as-you-go, On-Demand, or Reserved Instance pricing. Aurora charges for database instances, storage, and I/O based on database cluster configuration, along with any optional features you choose to enable.
Aurora cluster configuration
With Aurora, you can configure your database clusters to run cost effectively, regardless of the scaling needs or evolving data access patterns of your applications. You have the flexibility to choose between the Amazon Aurora Standard and Amazon Aurora I/O-Optimized configuration options to best match the price-performance and price-predictability requirements of your unique workload characteristics. Your database instance, storage, and I/O charges will vary based on the option you choose. To learn more, visit Amazon Aurora storage and reliability.
Aurora Standard offers cost-effective pricing for the vast majority of applications running on Aurora with typical data access patterns and low to moderate I/O usage. With Aurora Standard, you pay for your database instances, storage, and pay-per-request I/O.
Aurora I/O-Optimized delivers improved price performance for I/O-intensive applications. If your I/O spend exceeds 25% of your total Aurora database spend, you can save up to 40% on costs for I/O-intensive workloads with Aurora I/O-Optimized. With Aurora I/O-Optimized, you only pay for your database instances and storage usage, and there are zero charges for read and write I/O operations. Aurora I/O-Optimized offers predictable pricing for all applications regardless of evolving data access patterns or I/O usage. Aurora I/O-Optimized eliminates variability in I/O spend.
Pricing by database instances
With Aurora, you can choose Amazon Aurora Serverless, which automatically starts up, shuts down, and scales capacity up or down based on your application's needs. You pay only for capacity consumed.
Amazon Aurora PostgreSQL Limitless Database provides automated horizontal scaling to process millions of write transactions per second and manages petabytes of data while maintaining the simplicity of operating inside a single database.
Alternatively, you can choose Provisioned On-Demand Instances and pay for your database per DB instance-hour consumed with no long-term commitments or upfront fees, or choose Provisioned Reserved Instances for additional savings.
Instance charges apply to both Aurora primary instances and Replicas. The charges will vary based on the database cluster configuration you choose to best match the price-performance and price-predictability needs of your application. All instances in a database cluster will either be charged the price for the Aurora Standard or Aurora I/O-Optimized configuration.
Optimized Reads instances for Aurora PostgreSQL
Optimized Reads instances available for Amazon Aurora PostgreSQL-Compatible Edition use local NVMe-based SSD block-level storage to improve query latency of applications with data-sets exceeding the memory capacity of a database instance. It includes two features: tiered caching and temporary objects.
Tiered caching delivers up to 8x improved query latency and up to 30% cost savings for read-heavy, I/O-intensive applications, such as operational dashboards, anomaly detection, and vector-based similarity searches. Tiered caching automatically stores data evicted from the in-memory database buffer cache onto local storage to speed up subsequent data accesses. Tiered caching is available for Aurora PostgreSQL with the Aurora I/O-Optimized configuration.
Temporary objects achieve faster query processing by placing temporary tables on local storage, improving the performance of queries involving sorts, hash aggregations, high-load joins, and other data-intensive operations. Temporary objects are available for Aurora PostgreSQL with the Aurora I/O-Optimized and Aurora Standard configurations. To learn more, visit Aurora Optimized Reads.
Select Aurora MySQL-Compatible Edition or Aurora PostgreSQL-Compatible Edition to view database instance pricing.
-
Aurora MySQL-Compatible Edition
Select to see details about MySQL-Compatible pricing options-
Serverless
-
Provisioned On-Demand Instance
-
Provisioned Reserved Instance
-
Serverless
-
Amazon Aurora Serverless is an on-demand, auto scaling configuration that automatically adjusts database capacity based on application needs. With Aurora Serverless, your database capacity automatically scales up or down to meet your application workload needs and shuts down during periods of inactivity, saving you money and administration time. Aurora Serverless measures database capacity in Aurora Capacity Units (ACUs) billed per second. 1 ACU has approximately 2 GiB of memory with corresponding CPU and networking, similar to that used in Aurora provisioned instances.
Aurora Serverless v2
Amazon Aurora Serverless v2 instantly scales databases to support hundreds of thousands of transactions per second and supports all features of Aurora, including Multi-AZ deployments, Read Replicas, and Global Database. In addition to gaining access to v2 features, most Aurora Serverless customers can lower costs by moving to v2 due to a lower starting capacity of 0.5 ACUs (compared to 2 ACUs in v1), capacity increments of as small as 0.5 ACUs (compared to doubling in v1), and up to 15x faster scale down in capacity compared to Amazon Aurora Serverless v1.
You can choose to configure all the instances in your database cluster to use the Aurora Standard or Aurora I/O-Optimized configuration based on the price-performance and price-predictability needs of your application.
Read the detailed Aurora Serverless v2 pricing example.
Scale up latency
Instant scaling to hundreds-of-thousands of transactions per second
Scale down latency
Up to 15X faster
Starting capacity
0 ACU
Capacity granularity
Fine-grained, with increments as small as 0.5 ACU
Read Replicas
Up to 15 Aurora Replicas for read scalability
Multi-AZ and SLA
Distribute read replicas in separate AZs for high availability. Refer Amazon Aurora SLA for details.
Aurora Global Database
Sub-Second Data Access in Any Region and Cross-Region Disaster Recovery. Refer Aurora Global Database for details.
Aurora Serverless v1 pricing
Aurora Serverless v1 is a cost-effective option for infrequent, intermittent, or unpredictable workloads. With Aurora Serverless v1, you will need to configure your database cluster to use the Aurora Standard configuration.
Read the detailed Aurora Serverless v1 pricing example.
Scale up latency
5 to 50 seconds
Scale down latency
Up to 15 minutes
Starting capacity
1 ACU
Capacity granularity
Doubles capacity with each increment
-
Provisioned On-Demand Instance
-
On-Demand Instances let you pay for your database by the hour with no long-term commitments or upfront fees.
Pricing is per instance-hour consumed, from the time a database instance is launched until it is stopped or deleted. Partial instance-hours are billed in 1-second increments with a 10-minute minimum charge following a billable status change such as creating, starting, or modifying the database instance.
You can choose to configure all the instances in your database cluster to use the Aurora Standard or Aurora I/O-Optimized configuration based on the price-performance and price-predictability needs of your application.
Provisioned On-Demand Instance pricing for Aurora
T4g and T3 CPU Credits
Amazon RDS T4g and T3 DB instances run in Unlimited mode, which means that you will be charged if your average CPU utilization over a rolling 24-hour period exceeds the baseline of the instance. CPU Credits are charged at $0.09 per vCPU-Hour for Aurora Standard and $0.12 per vCPU-Hour for Aurora I/O-Optimized cluster configuration. The CPU Credit pricing is the same for all T4g and T3 instance sizes across all regions and is not covered by Reserved Instances.
-
Provisioned Reserved Instance
-
Reserved Instances are appropriate for steady-state database workloads and offer significant savings over On-Demand Instances. 1-year Reserved Instances provide discounts up to 45% and 3-year Reserved Instances provide discounts of up to 66% over On-Demand Instances. Reserved Instances provide flexibility across instance sizes and cluster configuration options.
Your Reserved Instances discounted rate is automatically applied to usage of any size in the same instance family (such as T3 and R5) across Aurora Standard and Aurora I/O-Optimized configurations. You commit to the entire duration of the Reserved Instance term and pay a discounted hourly rate as shown in the following table.
Although these rates apply to Aurora Standard, when using Reserved Instances with Aurora I/O-Optimized, Aurora automatically accounts for the price difference between these options for your usage. To fully utilize the benefits of your RI discounts with Aurora I/O-Optimized, you can purchase 30% additional RIs similar to your current RIs. See pricing example for more information. You will be billed for each hour of the term regardless of whether any usage has occurred.
You purchase a Reserved Instance for each database instance you plan to use. You may designate database instances as Reserved Instances by calling the Purchasing API or selecting the Reserved Instance option in the AWS console. When you designate a database instance as a Reserved Instance, you must designate an AWS Region, instance type, and quantity for the applicable Reserved Instances. The Reserved Instances may only be used in the designated Region.
Reserved Instance prices do not cover storage costs. Read and write I/O costs are only covered when your database cluster is configured to Aurora I/O-Optimized. In addition to being subject to Reserved Instance pricing, Reserved Instances are subject to all data transfer and other fees applicable under the AWS Customer Agreement or other agreement with AWS governing your use of AWS services. AWS may terminate the Reserved Instance pricing program at any time.
Read the detailed Reserved Instance pricing example.
Provisioned Reserved Instance pricing for Aurora
* This is the average monthly payment over the course of the Reserved Instance term. For each month, the actual monthly payment will equal the actual number of hours in that month multiplied by the hourly usage rate or number of seconds in that month multiplied by the hourly usage rate divided by 3600, depending on the Aurora instance type you run. The hourly usage rate is equivalent to the total average monthly payments over the term of the Reserved Instance divided by the total number of hours (based on a 365 day year) over the term of the Reserved Instance.
** Effective hourly pricing helps you calculate the amount of money a Reserved Instance will save you over On-Demand pricing. When you purchase a Reserved Instance, you are billed for every hour during the entire Reserved Instance term you select, regardless of whether the instance is running. The effective hourly price shows the amortized hourly instance cost. This takes the total cost of the Reserved Instance over the entire term, including any upfront payment, and spreads it out over each hour of the Reserved Instance term.
-
-
Aurora PostgreSQL-Compatible Edition
Select to see details about PostgreSQL-Compatible pricing options-
Serverless
-
Provisioned On-Demand Instance
-
Provisioned Reserved Instance
-
Limitless Database
-
Serverless
-
Amazon Aurora Serverless is an on-demand, auto scaling configuration that automatically adjusts database capacity based on application needs. With Aurora Serverless, your database capacity automatically scales up or down to meet your application workload needs and shuts down during periods of inactivity, saving you money and administration time. Aurora Serverless measures database capacity in Aurora Capacity Units (ACUs) billed per second. 1 ACU has approximately 2 GiB of memory with corresponding CPU and networking, similar to that used in Aurora provisioned instances.
Aurora Serverless v2
Amazon Aurora Serverless v2 instantly scales databases to support hundreds of thousands of transactions per second and supports all features of Aurora, including Multi-AZ deployments, Read Replicas, and Global Database. In addition to gaining access to v2 features, most Aurora Serverless customers can lower costs by moving to v2 due to a lower starting capacity of 0.5 ACUs (compared to 2 ACUs in v1), capacity increments of as small as 0.5 ACUs (compared to doubling in v1), and up to 15x faster scale down in capacity compared to Amazon Aurora Serverless v1.
You can choose to configure all the instances in your database cluster to use the Aurora Standard or Aurora I/O-Optimized configuration based on the price-performance and price-predictability needs of your application.
Read the detailed Aurora Serverless v2 pricing example.
Scale up latency
Instant scaling to hundreds-of-thousands of transactions per second
Scale down latency
Up to 15X faster
Starting capacity
0 ACU
Capacity granularity
Fine-grained, with increments as small as 0.5 ACU
Read Replicas
Up to 15 Aurora Replicas for read scalability
Multi-AZ and SLA
Distribute read replicas in separate AZs for high availability. Refer Amazon Aurora SLA for details.
Aurora Global Database
Sub-Second Data Access in Any Region and Cross-Region Disaster Recovery. Refer Aurora Global Database for details.
Aurora Serverless v1 pricing
Aurora Serverless v1 is a cost-effective option for infrequent, intermittent, or unpredictable workloads. With Aurora Serverless v1, you will need to configure your database cluster to use the Aurora Standard configuration.
Read the detailed Aurora Serverless v1 pricing example.
Scale up latency
5 to 50 seconds
Scale down latency
Up to 15 minutes
Starting capacity
2 ACU
Capacity granularity
Doubles capacity with each increment
-
Provisioned On-Demand Instance
-
On-Demand Instances let you pay for your database by the hour with no long-term commitments or upfront fees.
Pricing is per instance-hour consumed, from the time a database instance is launched until it is stopped or deleted. Partial instance-hours are billed in 1-second increments with a 10-minute minimum charge following a billable status change such as creating, starting, or modifying the database instance.
You can choose to configure all the instances in your database cluster to use the Aurora Standard or Aurora I/O-Optimized configuration based on the price-performance and price-predictability needs of your application.
Provisioned On-Demand Instance pricing for Aurora
T4g and T3 CPU Credits
Amazon RDS T4g and T3 DB instances run in Unlimited mode, which means that you will be charged if your average CPU utilization over a rolling 24-hour period exceeds the baseline of the instance. CPU Credits are charged at $0.09 per vCPU-Hour for Aurora Standard and $0.12 per vCPU-Hour for Aurora I/O-Optimized cluster configuration. The CPU Credit pricing is the same for all T4g and T3 instance sizes across all regions and is not covered by Reserved Instances.
-
Provisioned Reserved Instance
-
Reserved Instances are appropriate for steady-state database workloads and offer significant savings over On-Demand Instances. 1-year Reserved Instances provide discounts up to 45% and 3-year Reserved Instances provide discounts of up to 66% over On-Demand Instances. Reserved Instances provide flexibility across instance sizes and cluster configuration options.
Your Reserved Instances discounted rate is automatically applied to usage of any size in the same instance family (such as T3 and R5) across Aurora Standard and Aurora I/O-Optimized configurations. You commit to the entire duration of the Reserved Instance term and pay a discounted hourly rate as shown in the following table.
Although these rates apply to Aurora Standard, when using Reserved Instances with Aurora I/O-Optimized, Aurora automatically accounts for the price difference between these options for your usage. To fully utilize the benefits of your RI discounts with Aurora I/O-Optimized, you can purchase 30% additional RIs similar to your current RIs. See pricing example for more information. You will be billed for each hour of the term regardless of whether any usage has occurred.
You purchase a Reserved Instance for each database instance you plan to use. You may designate database instances as Reserved Instances by calling the Purchasing API or selecting the Reserved Instance option in the AWS console. When you designate a database instance as a Reserved Instance, you must designate an AWS Region, instance type, and quantity for the applicable Reserved Instances. The Reserved Instances may only be used in the designated Region.
Reserved Instance prices do not cover storage costs. Read and write I/O costs are only covered when your database cluster is configured to Aurora I/O-Optimized. In addition to being subject to Reserved Instance pricing, Reserved Instances are subject to all data transfer and other fees applicable under the AWS Customer Agreement or other agreement with AWS governing your use of AWS services. AWS may terminate the Reserved Instance pricing program at any time.
Read the detailed Reserved Instance pricing example.
Provisioned Reserved Instance pricing for Aurora
* This is the average monthly payment over the course of the Reserved Instance term. For each month, the actual monthly payment will equal the actual number of hours in that month multiplied by the hourly usage rate or number of seconds in that month multiplied by the hourly usage rate divided by 3600, depending on the Aurora instance type you run. The hourly usage rate is equivalent to the total average monthly payments over the term of the Reserved Instance divided by the total number of hours (based on a 365 day year) over the term of the Reserved Instance.
** Effective hourly pricing helps you calculate the amount of money a Reserved Instance will save you over On-Demand pricing. When you purchase a Reserved Instance, you are billed for every hour during the entire Reserved Instance term you select, regardless of whether the instance is running. The effective hourly price shows the amortized hourly instance cost. This takes the total cost of the Reserved Instance over the entire term, including any upfront payment, and spreads it out over each hour of the Reserved Instance term.
-
Limitless Database
-
Amazon Aurora PostgreSQL Limitless Database is an automated horizontal scaling capability of Aurora that seamlessly scales beyond the write throughput and storage limits of a single instance. It distributes the workload over multiple Aurora writer instances while maintaining the ease of operating inside a single database. Aurora PostgreSQL Limitless Database offers capabilities such as distributed query planning and transaction management, so you can scale your workloads without needing to create custom application logic or manage multiple databases. It adds additional compute resources while remaining within your specified budget, so there is no need to provision for peak, and compute automatically scales down when demand is low. Aurora PostgreSQL Limitless Database measures capacity in Aurora Capacity Units (ACUs) billed per second. One ACU has approximately 2GiB of memory with corresponding CPU and networking.
Amazon GuardDuty login monitoring will automatically begin processing login events once you set up and run Aurora PostgreSQL Limitless Database if you already have Amazon GuardDuty RDS Protection enabled for the same account, impacting your GuardDuty RDS Protection spend. For more details, visit the Amazon GuardDuty pricing page.
-
Pricing by database storage and I/Os
With Aurora, you do not need to provision either storage or I/O operations in advance, and both scale automatically. The fault-tolerant distributed storage of Aurora automatically makes your data durable across three Availability Zones in a Region. You only pay for one copy of the data.
Aurora storage is billed in per GB-month increments at the rates shown in the following table for the Aurora Standard and Aurora I/O-Optimized configurations. With Aurora Standard, you pay for the storage and I/O operations that your Aurora database consumes. I/O charges may vary significantly depending on workload and database engine. To learn more about I/O operations, visit the Aurora FAQ, “Q: What are I/O operations in Aurora and how are they calculated?” With Aurora I/O-Optimized, you are not charged for read and write I/O operations.
Read the detailed database storage and I/O operations pricing example.
AWS Pricing Calculator
Calculate your Amazon Aurora and architecture cost in a single estimate.
Aurora Global Database costs
Amazon Aurora Global Database is designed for globally distributed applications, allowing a single Aurora database to span multiple Regions. It replicates your data with no impact on database performance, enables fast local reads with low latency in each Region, and provides disaster recovery from Region-wide outages.
With Aurora Global Database, you pay for replicated write I/O operations between the primary Region and each secondary Region. The number of replicated write I/O operations to each secondary Region is the same as the number of in-Region write I/O operations performed by the primary Region. You pay for replicated write I/O operations with both Aurora Standard and Aurora I/O-Optimized configuration options. Apart from replicated write I/Os, you pay for instances, storage, and I/O usage in the primary and secondary Regions based on the cluster configuration you choose, along with cross-Region data transfer, backup storage, and other billable Aurora features.
Read the detailed Aurora Global Database pricing example.
Backup storage costs
Backup storage for Aurora is the storage associated with your automated database backups and any customer-initiated database cluster snapshots.
You are not charged for the backup storage of up to 100% of the size of your database cluster. There is also no charge for database snapshots created within the backup retention period. For all other backups and snapshots (including those from deleted clusters), usage is metered per GB-month at the following rates:
Backtrack costs
Backtrack lets you quickly move an Aurora database to a prior point in time without needing to restore data from a backup. This lets you quickly recover from user errors, such as dropping the wrong table or deleting the wrong row. This feature is currently available for the MySQL-compatible edition of Aurora.
Specify how far in the past you want to be able to backtrack (for example, up to 24 hours). Aurora will retain logs, called change records, for the specified backtrack duration. You pay an hourly rate for storing change records.
Read the detailed backtrack pricing example.
Data API costs
Data API is an easy-to-use, secure HTTPS API for executing SQL queries against Aurora databases that accelerates modern application development. Data API eliminates network and application configuration tasks needed to securely connect to an Aurora database, which makes accessing Aurora as simple as making an API call.
With Data API, you only pay when your API is in use. There are no minimum fees or upfront commitments. You pay only for the API and data requests your applications make. Data API request data payloads are metered at 32KB per request for data sent to the API or received from the API. If your API request data payload size is larger than 32KB, then for each 32KB increment there is a charge of one additional API request. So, if your payload is 35KB for example, you would be charged for two API requests.
Data API free tier includes one million API requests per month, aggregated across AWS Regions, for the first year.
Customers will also incur charges for AWS Secrets Manager and may also incur additional charges for AWS CloudTrail, if activated.
Data transfer costs
The pricing below is based on data transferred “in” and “out” of Aurora.
- As part of the AWS Free Tier, AWS customers receive 100 GB of free data transferred out to the internet for free each month, aggregated across all AWS services and Regions (except China (Beijing), China (Ningxia), and GovCloud (US)).
- Data transferred between Aurora and Amazon Elastic Compute Cloud (Amazon EC2) instances in the same Availability Zone is free.
- Data transferred between Availability Zones for DB cluster replication is free.
- For data transferred between an Amazon EC2 instance and Aurora DB instance in different Availability Zones of the same Region, Amazon EC2 Regional Data Transfer charges apply.
AWS customers receive 100GB of data transfer out to the internet free each month, aggregated across all AWS Services and Regions (except China and GovCloud). The 100 GB free tier for data transfer out to the internet is global and does not apply separately or individually to AWS Regions.
Except as otherwise noted, prices are exclusive of applicable taxes and duties, including VAT and applicable sales tax. For customers with a billing address in Japan, use of AWS is subject to Japanese Consumption Tax.
Amazon RDS Extended Support costs
Amazon RDS Extended Support allows you to continue use Aurora MySQL-Compatible and PostgreSQL-Compatible Edition major versions after the community end-of-life. During this time, AWS provides fixes for critical security issues and bugs through patch releases, giving you more time, up to three years, to upgrade to a new major version to help you meet your business requirements.
For provisioned instances on Amazon Aurora, RDS Extended Support is priced per vCPU per hour. For Aurora Serverless v2, RDS Extended Support is priced per Aurora Capacity Unit (ACU) per hour consumed by your database. RDS Extended Support pricing is also dependent on AWS Region and the calendar date. Aurora MySQL-Compatible Edition customers have at least a year to migrate to a standard support version after community end of life before RDS Extended Support charges begin. Refer to the Amazon Aurora documentation for calendar details.
-
RDS Extended Support pricing per hour
Select to see details on Amazon RDS Extended Support costsThe RDS Extended Support price you are charged depends on the engine version, AWS Region, and the number of calendar years since standard support expired for that version. To learn more about when year 1 and 2 or year 3 pricing begins for a specific engine major version, go to the Amazon Aurora documentation.
Partial hours are billed in one-second increments with a 10-minute minimum charge following a billable status change such as creating, starting, or modifying.
*Amazon RDS Extended Support year 3 pricing is only available for Amazon Aurora PostgreSQL-Compatible Edition.
RDS Extended Support pricing example
If you have an instance on Aurora PostgreSQL-Compatible 12, this version reaches end of standard support on February 28, 2025. If you deploy in US East (Ohio), you will be charged $0.100 per vCPU-hr between March 1, 2025 to February 28, 2027. Starting March 1, 2027, you will be charged $0.200 per vCPU-hr.
Snapshot or cluster export costs
Snapshot export provides an automated method to export data within an Aurora snapshot to Amazon Simple Storage Service (Amazon S3) in Parquet format. Cluster export provides an automated method to export data from an Aurora database cluster to Amazon S3 in Parquet format. The Parquet format is up to 2x faster to unload and consumes up to 6x less storage in Amazon S3 compared to text formats. You can analyze the exported data using AWS services such as Amazon Athena, Amazon EMR, and Amazon SageMaker.
For all snapshots and cluster exports, usage is metered per gigabyte of snapshot data. Subsequent exports of data from the same snapshot are not incremental. Read the detailed snapshot or cluster export pricing example.
Additional charges apply for encrypting or decrypting data with AWS Key Management Service (AWS KMS). Find more about these charges on the AWS KMS pricing page. Charges also apply for storing exported data in Amazon S3 and for PUT requests made against your S3 bucket. Find more about these charges on the Amazon S3 pricing page.
Feature availability and support varies across specific versions of each database engine and across AWS Regions. For more information on version and Region availability of exporting DB cluster snapshot data to S3, see Exporting snapshot data to Amazon S3.
Zero-ETL integration costs
Amazon Aurora zero-ETL integration with Amazon Redshift enables near real-time analytics and ML using Amazon Redshift on petabytes of transactional data from Aurora. Zero-ETL integration removes the need to build and maintain complex data pipelines that perform extract, transform, and load (ETL) operations.
AWS does not charge an additional fee for the zero-ETL integration. You pay for existing Amazon Aurora and Amazon Redshift resources used to create and process the change data created as part of a zero-ETL integration. These resources could include additional I/O and storage used by enabling enhanced binlog, Snapshot export costs for the initial data export to seed your Amazon Redshift databases, additional Amazon Redshift storage for storing replicated data and compute for processing data replication, and cross-AZ data transfer costs for moving data from source to target. Ongoing processing of data changes by zero-ETL integration is offered at no additional charge.
Aurora pricing examples
The following examples demonstrate how Aurora costs are calculated for resources and features available for Aurora.
Examples using Aurora Serverless:
Consider a workload that needs 5 ACUs and runs for 30 minutes. We want to calculate the compute costs of running this workload on Aurora Serverless v1 and v2 with the database cluster configured as Aurora Standard and Aurora I/O-Optimized in US East (N. Virginia).
With Aurora Serverless v2, the minimum database capacity you can set is 0.5 ACUs. The database scales instantly from 0.5 ACUs to 5 ACUs, runs for 30 minutes, and scales down to the minimum capacity of 0.5 ACUs. Since v2 scales down up to 15x faster, the database goes from 5 ACUs to 0.5 ACUs in approximately 3 minutes. Therefore, the following is the compute cost for running this workload.
Example 1: Aurora Serverless v2 pricing with Aurora Standard
Usage | Calculation | Cost |
Scale from 0.5 ACUs to 5 ACUs instantly |
||
Run at 5 ACUs for 30 minutes | 5 ACUs * $0.12 per ACU-hour * 30/60 hour | $0.30 |
Scale down from 5 ACUs to 0.5 ACUs in 3 minutes | 5 ACUs * $0.12 per ACU-hour * 3/60 hour | $0.03 |
Compute cost with Aurora Serverless v2 (Aurora Standard) |
$0.33 |
Example 2: Aurora Serverless v2 pricing with Aurora I/O-Optimized
Usage | Calculation | Cost |
Scale from 0.5 ACUs to 5 ACUs instantly |
||
Run at 5 ACUs for 30 minutes | 5 ACUs * $0.156 per ACU-hour * 30/60 hour | $0.39 |
Scale down from 5 ACUs to 0.5 ACUs in 3 minutes | 5 ACUs * $0.156 per ACU-hour * 3/60 hour | $0.04 |
Compute cost with Aurora Serverless v2 (Aurora I/O-Optimized) |
$0.43 |
With Aurora Serverless v1, the minimum capacity you can set is 1 ACU. The amount of time Aurora Serverless v1 takes to scale capacity depends on the workload. Assuming that Aurora Serverless v1 is able to double capacity every minute, the database would scale to 8 ACUs in 3 minutes. The database then runs for 30 minutes at 8 ACUs. Finally, the database scales down from 8 ACUs to 1 ACU by halving capacity every 15 minutes. Therefore, the following is the compute cost for running this workload.
Example 3: Aurora Serverless v1 pricing
Usage | Calculation | Cost |
Scale from 1 ACU to 2 ACUs in 1 minute |
1 ACU * $0.06 per ACU-hour * 1/60 hour | $0.001 |
Scale from 2 ACUs to 4 ACUs in 1 minute | 2 ACUs * $0.06 per ACU-hour * 1/60 hour | $0.002 |
Scale from 4 ACUs to 8 ACUs in 1 minute | 4 ACUs * $0.06 per ACU-hour * 1/60 hour | $0.004 |
Run at 8 ACUs for 30 minutes | 8 ACUs * $0.06 per ACU-hour * 30/60 hour | $0.240 |
Scale down from 8 ACUs to 4 ACUs in 15 minutes | 8 ACUs * $0.06 per ACU-hour * 15/60 hour | $0.120 |
Scale down from 4 ACUs to 2 ACUs in 15 minutes | 4 ACUs * $0.06 per ACU-hour * 15/60 hour | $0.060 |
Scale down from 2 ACUs to 1 ACU in 15 minutes | 2 ACUs * $0.06 per ACU-hour * 15/60 hour | $0.030 |
Compute cost with Aurora Serverless v1 | $0.457 |
Examples of using Aurora Standard Reserved Instances with Aurora I/O-Optimized
You can reuse your existing Aurora Standard Reserved Instances (RI) with Aurora I/O-Optimized. To fully utilize the benefits of your RI discounts with Aurora I/O-Optimized, you can purchase 30% additional RIs similar to your current RIs. The table below shows examples of how to estimate additional RIs when using Aurora I/O-Optimized. If the required RIs are a fraction, you can take advantage of the size flexibility available with RIs to get to a whole number as shown below. In the examples below, current RIs refer to the Aurora Standard RIs you have today and additional RIs refer to the number of Aurora Standard RIs you must purchase to maintain your current RI discounts when using Aurora I/O-Optimized. If you choose not to purchase additional RIs, On-Demand rates will apply.
Instance type | Quantity of current RIs | Required RI quantity for Aurora I/O-Optimized |
Additional RIs | Additional RIs (with size flexibility) |
db.r6g.large | 10 | 10 * 1.3 = 13 | 3 db.r6g.large | 3 db.r6g.large RIs |
db.r6g.4xlarge | 20 | 20 * 1.3 = 26 | 6 db.r6g.4xlarge | 6 db.r6g.4xlarge RIs |
db.r6i.24xlarge | 15 | 15 * 1.3 = 19.5 | 4.5 db.r6i.24xlarge | 4 db.r6i.24xlarge RIs + 1 db.r6i.12xlarge RI (0.5 db.r6i.24xlarge = 1 db.r6i.12xlarge) |
db.r6g.12xlarge | 5 | 5 * 1.3 = 6.5 | 1.5 db.r6g.12xlarge | 1 db.r6g.12xlarge RIs + 1 db.r6g.4xlarge RI + 1 db.r6g.2xlarge RI (0.5 db.r6g.12xlarge = 1 db.r6g.4xlarge + 1 db.r6g.2xlarge) |
Examples using database storage and I/O operations:
Let’s assume you have an Aurora database and you start with a 1,000 GB database at the beginning of the month (30-day period) that is growing 2% or 20 GB daily. Let’s also assume the same database reads 350 data pages from storage per second to satisfy the queries running on it. Finally, let’s assume your application makes changes to the database affecting an average of 100 data pages per second. We want to calculate the storage and I/O cost of running this workload with Aurora Standard and Aurora I/O-Optimized storage in US East (N. Virginia).
Example 1: Pricing with Aurora Standard
Usage | Calculation | Cost |
Storage for 1,000 GB growing 2% daily for 30 days |
(1,000 GB * 30 days + 20 GB * 29 days + 20 GB * 28 days + …. + 20 GB * 1 day) * $0.10 per GB-month | $129.00 |
Read I/Os for 350 data pages per second for 30 days (assuming 16 KB page size) | (350 data pages * 30 days * 24 hours * 60 minutes * 60 seconds) * $0.20 per 1 million I/Os | $181.44 |
Write I/Os for 100 data pages per second for 30 days (assuming 4 KB page size) | (100 data pages * 30 days * 24 hours * 60 minutes * 60 seconds) * $0.20 per 1 million I/Os | $51.84 |
Storage and I/O cost with Aurora Standard |
$362.28 |
Example 2: Pricing with Aurora I/O-Optimized
Usage | Calculation | Cost |
Storage for 1,000 GB growing 2% daily for 30 days |
(1,000 GB * 30 days + 20 GB * 29 days + 20 GB * 28 days + …. + 20 GB * 1 day) * $0.225 per GB-month | $290.25 |
Read I/Os for 350 data pages per second for 30 days (assuming 16 KB page size) | (350 data pages * 30 days * 24 hours * 60 minutes * 60 seconds) * $0 for read I/Os | - |
Write I/Os for 100 data pages per second for 30 days (assuming 4 KB page size) | (100 data pages * 30 days * 24 hours * 60 minutes * 60 seconds) * $0 for write I/Os - | - |
Storage and I/O cost with Aurora I/O-Optimized |
$290.25 |
For this workload, you will get 19.8% storage cost savings with Aurora I/O-Optimized.
Examples using Aurora Global Database
Let’s assume you have an Aurora Global Database where the primary Region has two instances, consuming 80 GB of storage and performing 45 million write I/O operations and 5 million read I/O operations per month. Say the secondary Region has one instance serving 5 million read I/O operations per month. We want to calculate the cost of running a Global Database with US East (N. Virginia) as the primary Region and US West (Oregon) as the secondary Region.
Example 1: Pricing with Aurora Standard
Primary Region - US East (N. Virginia) | ||
Usage | Calculation | Cost |
Database instance |
2 * db.r6i.large (at $0.29 per hour) * 30 days * 24 hours | $417.60 |
Storage | 80 GB * $0.10 per GB-month (30 days) | $8.00 |
Replicated write I/Os | None | - |
Read and write I/Os |
50 million I/Os * $0.20 per 1 million I/Os | $10.00 |
Data transfers | 45 million write I/Os * 2.75 KB per I/O * $0.02 per GB | $2.48 |
Primary Region cost with Aurora Standard | $438.08 |
Secondary Region - US West (Oregon) | ||
Usage | Calculation | Cost |
Database instance |
1 * db.r6i.large (at $0.29 per hour) * 30 days * 24 hours | $208.80 |
Storage | 80 GB * $0.10 per GB-month (30 days) | $8.00 |
Replicated write I/Os | 45 million replicated write I/Os * $0.20 per 1 million I/Os | $9.00 |
Read and write I/Os |
50 million I/Os * $0.20 per 1 million I/Os | $10.00 |
Data transfers | None | - |
Secondary Region cost with Aurora Standard | 235.80 |
Example 2: Pricing with Aurora I/O-Optimized
Primary Region - US East (N. Virginia) | ||
Usage | Calculation | Cost |
Database instance |
2 * db.r6i.large (at $0.377 per hour) * 30 days * 24 hours | $542.88 |
Storage | 80 GB * $0.225 per GB-month (30 days) | $18.00 |
Replicated write I/Os | None | - |
Read and write I/Os |
50 million I/Os * $0 per 1 million I/Os | - |
Data transfers | 45 million write I/Os * 2.75 KB per I/O * $0.02 per GB | $2.48 |
Primary Region cost with Aurora I/O-Optimized | $563.36 |
Secondary Region - US West (Oregon) | ||
Usage | Calculation | Cost |
Database instance |
1 * db.r6i.large (at $0.377 per hour) * 30 days * 24 hours | $271.44 |
Storage | 80 GB * $0.225 per GB-month (30 days) | $18.00 |
Replicated write I/Os | 45 million replicated write I/Os * $0.20 per 1 million I/Os | $9.00 |
Read and write I/Os |
50 million I/Os * $0 per 1 million I/Os | - |
Data transfers | None | - |
Secondary Region cost with Aurora I/O-Optimized | $298.44 |
Example using Backtrack
Let’s assume your Aurora database is generating 10,000,000 change records per hour and you want to backtrack up to 10 hours in the past. We want to calculate the backtrack cost for this scenario in US East (N. Virginia).
Usage | Calculation | Cost |
10,000,000 change records per hour for 10 hours |
(10,000,000 change records * 10 hours) * $0.012 per 1 million change records | $1.20 |
Backtrack cost | $1.20 |
Examples using Data API
Example 1: Data API pricing with mixed INSERTS and read requests
Data API is called to query Aurora PostgreSQL-Compatible with the ExecuteStatement API call. There are 4.1 million API requests a month in total. 2.1 million of the of the 4.1M requests are inserts into Aurora. Each has data in an API payload size of 64 KB/request. 2 million of the 4.1M total requests read Aurora data. Of these, 1 million had a data returned payload of less than 32KB and 1 million had a payload size between 32.01KB up to 64KB.
Usage | Calculation | Cost |
2.1 million API requests/month with a payload of 64 KB/request, where each API requires 2 requests (64 KB requires 64 KB/32 KB, or 2 requests per API) |
2.1 million * 2 * $0.35/million | $1.47 |
2 million API requests/month where 1 million have a payload of 32 KB and 1 million with a payload between 32.01 KB to 64 KB that requires 2 requests (32.01 KB to 64 KB/32 KB, or 2 requests per API) | (1 million API * $0.35/million) + (1 million API * 2 * $0.35/million APIs) | $1.05 |
Free tier 1 million API requests for one year | -$0.35 for 1 million API requests for one year | -$0.35 |
Data API costs | $2.17 |
Example 2: Data API pricing with free tier
Data API is called to query Aurora PostgreSQL-Compatible with the ExecuteStatement API call. There are 300,000 API requests a month. All of the API requests return 64 KB of data payload so each request will be charged as 64 KB / 32 KB = 2 requests.
Usage | Calculation | Cost |
300,000 API requests with a payload of 64 KB where each API requires 2 requests (64 KB requires 64 KB / 32 KB, or 2 API requests) |
.3 million APIs * 2 * $0.35/million APIs | $0.21 |
Free tier 1 million API requests for one year | -$0.35 for 1 million API requests for one year | -$0.35 |
Data API costs | $0.00/month in first year |
Example 3: Data API pricing using all request types
Data API is called to query Aurora PostgreSQL-Compatible using all five API Calls (BeginTransaction. CommitTransaction, RollbackTransaction, ExecuteStatement, BatchExecuteStatement. There are 1.2 billion API requests a month. None of the requests return or send more than 32KB of data payload.
Usage | Calculation | Cost |
1 billion API requests/month with a payload less than 32 KB | 1 billion API requests * $0.35/million | $350 |
200 million API requests/month with a payload less than 32 KB | 200 million API requests * $0.20/million | $40 |
Free tier 1 million API requests for one year | -$0.35 for 1 million API requests for one year | -$0.35 |
Data API costs | $389.65/month in first year |
Example using snapshot or cluster export
Let’s assume you have a 100 GB snapshot and you use filtering to select a 10 GB table from this snapshot to export to Amazon S3.
Usage | Calculation | Cost |
Export 10 GB table from 100 GB snapshot (Subsequent exports of data from the same snapshot are not incremental) |
100 GB * $0.010 per GB | $1.00 |
Export cost | $1.00 |
Additional pricing resources
Easily calculate your monthly costs with AWS
Contact AWS specialists to get a personalized quote
Learn how to get started with Amazon Aurora