Explanation
Why the waste happens and who it affects.
Many of these databases never use an Enterprise-only feature. Enterprise is significantly more expensive than Standard whether the license is included in the EC2 hourly rate or brought by the customer; in an AWS Prescriptive Guidance comparison of license-included r6i.xlarge instances in us-east-1, the Standard SQL Server license cost 68 percent less than Enterprise. Every such instance pays that premium for capability it does not use.
The gap persists because feature use is invisible from the infrastructure side: the instance looks healthy and correctly sized. AWS Compute Optimizer addresses this directly with commercial software license recommendations for SQL Server on EC2, which flag Enterprise licenses whose features are not in use and recommend downgrading to Standard, or to Developer edition for non-production workloads.
Billing model
The pricing dimensions that drive this cost.
- License-included instance
- The EC2 hourly rate for Windows with SQL Server includes the SQL Server license, which is bound to the AMI's billing code; Enterprise is billed at a higher rate than Standard on the same instance type
- Bring your own license
- The customer supplies SQL Server licenses, so an Enterprise instance consumes the more expensive Enterprise licenses
- Developer edition
- Free of SQL Server license cost but only eligible for non-production, development and test workloads
How to detect
6 checks to find it in your estate.
- Enable AWS Compute Optimizer license recommendations for SQL Server: it discovers SQL Server instances by inferred workload type and, once CloudWatch Application Insights is set up with read-only database credentials, analyzes the mssql_enterprise_features_used metric
- Review Compute Optimizer license findings: Not optimized with the reason LicenseOverprovisioned means none of the paid Enterprise features were used; Insufficient metrics means Application Insights is not configured and the instance has not been evaluated
- Inventory SQL Server instances by edition and licensing model (license-included AMIs versus BYOL), and prioritize Enterprise instances in non-production environments
- Use the AMI billing codes (billing product) on each instance to confirm which SQL Server edition is actually being billed, since changing the edition inside the operating system does not change license-included billing
- Run SELECT feature_name FROM sys.dm_db_persisted_sku_features in each database to list persisted Enterprise features, and manually check features that do not show there, such as online index rebuilds in maintenance jobs
- Check the in-place downgrade constraints AWS lists for each candidate: fewer than 48 vCPUs and 128 GiB of memory, and no use of database-level Enterprise features, Always On availability groups, online index operations, Resource Governor, peer-to-peer or Oracle replication, R or Python extensions, or memory-optimized tempdb metadata
How to fix
5 ways to remove the waste.
- For BYOL Enterprise instances that meet the requirements, perform an in-place edition downgrade to Standard (or Developer for non-production); AWS publishes a Systems Manager document and evaluation script for this
- For license-included Enterprise instances, which are not eligible for an in-place downgrade and whose billing is bound to the AMI, migrate the databases to a new instance launched from a SQL Server Standard license-included AMI and retire the Enterprise instance
- If an instance exceeds the Standard edition resource limits only because it is oversized, rightsize it first so that it qualifies for Standard
- Validate less common Enterprise features against the Microsoft edition comparison for the SQL Server version in use before downgrading, and test on a copy of the database
- Set Standard (or Developer for non-production) as the default edition in AMI catalogs and provisioning templates so new instances do not start on Enterprise
Documentation
Vendor references for pricing and configuration.
- Viewing commercial software license recommendationsdocs.aws.amazon.com
- Optimize SQL Server licensing by using Compute Optimizerdocs.aws.amazon.com
- Evaluate if you can downgrade your Microsoft SQL Server editiondocs.aws.amazon.com
- Compare SQL Server editionsdocs.aws.amazon.com
- Amazon EC2 On-Demand Pricingaws.amazon.com