AWSAmazon RDSDatabase

aws_db_option_group cost estimation

A container of optional features (like SQL Server native backup, Oracle OEM, or TDE) for an RDS instance. Option groups are free. The RDS instance bills per hour, and some options carry licensing or storage cost.

The aws_db_option_group resource groups optional engine features and attaches them to an RDS instance. Option groups apply to engines like Oracle, SQL Server, MySQL, and MariaDB (Postgres uses parameter groups instead). The option group itself is free. AWS does not bill for creating one or attaching options.

The cost sits in the RDS instance the group is attached to. RDS bills per instance-hour by class and engine, plus storage and I/O. A db.r6g.large running MySQL is around $0.24/hour on-demand (roughly $175/month); the same class running SQL Server Standard is far more because of the bundled license, often 2 to 4 times the MySQL rate. Storage adds $0.115/GB-month for gp3, and Multi-AZ roughly doubles both instance and storage cost. The option group does not change these base rates, but it can change which of them you incur.

Several options are cost-adjacent. SQLSERVER_BACKUP_RESTORE lets SQL Server back up natively to S3, so you pay S3 storage ($0.023/GB-month) for those backups on top of RDS automated backup storage. Options that enable Transparent Data Encryption (TDE) on Oracle or SQL Server generally require a license-included instance or a customer-provided license, which affects instance pricing. Oracle options like OEM (Enterprise Manager) or the various Oracle features can require the more expensive editions. S3 integration options (SQLSERVER_BACKUP_RESTORE, S3_INTEGRATION) drive S3 request and storage charges. The option group is the free switch, but flipping some switches turns on billed capacity elsewhere.

A gotcha: option groups are engine and major-version specific, and you cannot remove certain persistent or permanent options once added without recreating the instance. Also, moving from a bring-your-own-license model to license-included (or vice versa) is a meaningful cost decision that options and instance class together determine. For SQL Server and Oracle, license cost frequently dwarfs the compute cost, so the licensing implications of an option matter more than the compute line.

c3x flags aws_db_option_group as free and attributes instance, license, storage, and backup cost to the RDS instance and the services its options enable.

Terraform example

A minimal but realistic configuration that C3X can estimate.

resource "aws_db_option_group" "sqlserver" {
  name                     = "sqlserver-se-backup"
  engine_name              = "sqlserver-se"
  major_engine_version     = "15.00"
  option_group_description = "SQL Server native backup to S3"

  option {
    option_name = "SQLSERVER_BACKUP_RESTORE"

    option_settings {
      name  = "IAM_ROLE_ARN"
      value = aws_iam_role.rds_backup.arn
    }
  }
}

resource "aws_db_instance" "mssql" {
  identifier           = "app-mssql"
  engine               = "sqlserver-se"
  engine_version       = "15.00"
  instance_class       = "db.r6g.large"
  allocated_storage    = 100
  storage_type         = "gp3"
  option_group_name    = aws_db_option_group.sqlserver.name
  username             = "admin"
  manage_master_user_password = true
  skip_final_snapshot  = false
}

Pricing dimensions

What you actually pay for when you provision aws_db_option_group.

DimensionUnitWhat's being charged
Option groupfreeCreating an option group and attaching options carries no AWS charge.
$0 (free)
RDS instance (license-included example)per hourThe attached instance bills per hour by class and engine. Commercial engines bundle license cost into the hourly rate.
SQL Server SE on db.r6g.large runs several times the MySQL rate
Native backup storage in S3per GB-monthOptions like SQLSERVER_BACKUP_RESTORE write backups to your S3 bucket, billed as S3 storage.
$0.023/GB-month S3 Standard
RDS instance storageper GB-monthGeneral purpose gp3 storage for the instance, doubled under Multi-AZ.
$0.115/GB-month gp3 in us-east-1

Optimization tips

Common ways to reduce aws_db_option_group cost without changing the workload.

Weigh license-included versus bring-your-own-license

Frequently 40 to 60 percent of instance cost

For SQL Server and Oracle, the license often costs more than the compute. If you already own licenses, a BYOL model with the matching option and instance class can cut the hourly rate substantially versus license-included.

Only add options you actually use

Some options require a pricier engine edition or a license-included instance. Adding OEM, TDE, or advanced Oracle options can force a more expensive instance tier, so enable them only when a workload needs them.

Lifecycle native backups in S3

SQLSERVER_BACKUP_RESTORE and S3 integration options write to your bucket and keep billing as S3 storage. Add S3 lifecycle rules to expire or tier old native backups so they do not accumulate indefinitely.

Prefer open-source engines when options are not required

SQL Server can cost 2 to 4x the MySQL rate

If a workload does not need SQL Server or Oracle specific options, MySQL, MariaDB, or Postgres on the same instance class costs a fraction of the license-included rate. The option group requirement is often the only thing tying you to a commercial engine.

FAQ

Do RDS option groups cost anything?

No. The option group is free. Cost comes from the RDS instance it is attached to (per-hour compute plus bundled license), the storage the instance uses, and any billed services an option enables, such as S3 storage for native backups.

Which options actually increase my bill?

Options that write data elsewhere or require a specific edition. SQLSERVER_BACKUP_RESTORE and S3 integration drive S3 storage and request charges. TDE and some Oracle options can require a license-included or higher-edition instance, which raises the hourly rate.

Why is my SQL Server RDS instance so much more expensive than MySQL?

The commercial engine bundles a license into the hourly rate. SQL Server Standard on the same instance class typically costs 2 to 4 times the MySQL rate, and Enterprise edition more still. If the workload does not need SQL Server specific options, an open-source engine is dramatically cheaper.

Can I remove an option later to cut cost?

Not always cleanly. Some options are persistent or permanent and cannot be removed without recreating the instance. Plan the option set before launch, since undoing a licensing-linked option can require a migration rather than a simple change.

Related resources

Estimate this resource in your own Terraform

Free, open source, no API key. C3X parses your Terraform and shows line-item cost for every resource, including aws_db_option_group.