SQL Server Migrations & Upgrades

How We Saved a Professional Services Firm $117,654 Annually by Right-Sizing Their SQL Server Infrastructure

Updated
10 min read
Written by
Mark Varnas
Reviewed by
Saulius Baskevicius

What is the Cost of Over-Provisioned Azure SQL Servers?

Summary TLDR: A professional services firm was paying $104,000 for SQL Server licenses they weren't using. Through performance analysis and Azure infrastructure optimization, we cut their CPU cores from 16 to 8 per server, upgraded storage from Standard SSD to Premium SSD, and saved $117,654 annually while improving query performance. The optimization took 8 weeks from assessment to implementation. Key finding: their servers averaged 10% CPU utilization but were bottlenecked by 500 IOPS storage, not compute capacity.

A professional services firm approached us with a common problem: their Azure SQL Server costs kept climbing, but they weren’t sure why. 

Their servers seemed to be running fine, applications were responsive, and everything appeared normal from an operational standpoint.

We ran our analysis.

What they didn’t realize? They were paying for 16 CPU cores worth of SQL Server Enterprise licenses they weren’t using. 

This single oversight was costing them over $100,000 annually.

If you’re unsure whether Enterprise Edition is actually required, check out our SQL Server Enterprise vs Standard Edition cost guide. It explains the $6,000-per-core price gap and when businesses can safely run Standard Edition without sacrificing performance.

We Discovered there was 90% Unused Compute Capacity

During our performance assessment of their two production SQL Servers, we analyzed historical performance counters and uncovered something striking:

Average CPU utilization: Under 10%

Both servers were running E16ds_v5 Azure instances with 16 vCPUs and 128GB of RAM.

The infrastructure was massively over-provisioned for their actual workload.

This happens more often than you’d think. 

Cloud providers and Microsoft don’t make it easy to understand what you’re really paying for. The more confusing the bill, the more money they make. 

When you get an Azure bill, it’s extremely difficult to understand what’s what.

The Challenge was Reducing Cores Without Sacrificing Performance

Cutting CPU cores in half sounds simple, but there’s a catch. 

When you reduce instance size on the same Azure series, you also reduce supported I/O throughput. 

This could tank SQL Server performance and leave you worse off than before.

Here’s where technical expertise matters. 

We identified that their servers were already experiencing high I/O latency. 

Their Standard SSD disks were maxing out at 500 IOPS per disk, creating a bottleneck that would only get worse if we simply downsized the instance.

If you’re planning an Azure SQL migration or considering a tier upgrade, you may want to see how real workload testing helped another client avoid a costly Hyperscale misstep and save $86,000 a year.

The Solution: Strategic Infrastructure Optimization

Our recommendation addressed both cost and performance:

Compute Changes

  • Downsize from E16ds_v5 to E8bds_v5 instances
  • Reduce from 16 vCPUs to 8 vCPUs per server
  • Maintain 64GB RAM (sufficient for workload)
  • E8bds_v5 series maintains comparable I/O throughput despite fewer cores

Storage Upgrade

  • Replace Standard SSD with Premium SSD
  • Increase storage throughput up to 10x
  • Address existing latency issues

Here’s the detailed breakdown:

Server 1 (PROD-SQL01):

  • 1,024GB disk: Standard SSD E30 (500 IOPS, 60 MBps) → Premium SSD P30 (5,000 IOPS, 200 MBps)
  • 256GB disk: Standard SSD E15 (500 IOPS, 60 MBps) → Premium SSD P15 (1,100 IOPS, 125 MBps)

Server 2 (PROD-SQL02):

  • 256GB disk: Standard SSD E15 (500 IOPS, 60 MBps) → Premium SSD P15 (1,100 IOPS, 125 MBps)
  • 128GB disk: Standard SSD E10 (500 IOPS, 60 MBps) → Premium SSD P10 (500 IOPS, 100 MBps)

The result? Better performance at lower cost.

The Financial Impact was $117,654 First-Year Savings

Infrastructure Cost Reduction

Monthly savings per server:

  • Compute cost reduction: $621.96/month per server
  • Storage cost increase: $53.05/month per server
  • Net monthly savings per server: $568.91
  • Total monthly savings (both servers): $1,137
  • Annual infrastructure savings: $13,653

SQL Server Licensing Savings

This is where the numbers get interesting.

By reducing from 16 cores to 8 cores per server (32 cores total down to 16 cores total), we released 16 SQL Server Enterprise license cores.

SQL Server Enterprise licensing on Azure runs approximately $6,500 per core (two-core packs cost around $13,000).

16 cores × $6,500 = $104,000 in released licensing value

Plus, ongoing Software Assurance costs have been eliminated.

Combined Savings

  • Infrastructure savings: $13,653/year
  • SQL Server licensing value: $104,000
  • Total first-year savings: $117,653

A couple of months of performance monitoring could save this firm over $100,000 annually.

Why This Problem Is So Common

Several factors contribute to widespread SQL Server over-provisioning:

Cloud Provider Incentives

Microsoft and AWS have zero incentive to help you optimize costs. Every dollar you overspend is revenue for them. Why would they proactively tell you that you’re paying for resources you don’t need?

Complex Billing

Azure bills are notoriously difficult to decipher. Computing power, storage, licensing, and data transfer costs are all jumbled together. Most IT teams don’t have time to forensically analyze their cloud spending.

Default Instance Sizing

When you set up SQL Server in Azure, the default recommendations tend toward over-provisioning. Microsoft’s sizing calculators err on the side of “better safe than sorry,” which translates to “better expensive than optimal.”

Licensing Complexity

SQL Server licensing is complicated. Per-core licensing, Software Assurance, Azure Hybrid Benefit, and different edition capabilities create a maze of options. Most organizations just accept whatever configuration their Azure setup wizard suggests.

Performance Improved While Costs Dropped

The counterintuitive outcome: the servers run faster after optimization.

By upgrading to Premium SSD, storage IOPS increased 2-10x depending on the disk:

  • Primary data disks: 500 IOPS → 5,000 IOPS (10x improvement)
  • Secondary data disks: 500 IOPS → 1,100 IOPS (2.2x improvement)

Combined read/write throughput increased from 600 MBps to 625 MBps despite having half the CPU cores.

The servers weren’t CPU-constrained. They were I/O-constrained. We fixed the actual bottleneck while reducing the over-provisioned resource.

How to Identify If You Have an Over-Provisioning Problem?

Your organization might be over-provisioned if:

  1. Low CPU utilization: Your SQL Servers consistently run under 20% CPU usage
  2. High storage latency: Queries are slow despite low CPU, but disk wait times are high
  3. Azure cost surprises: Your monthly Azure bill keeps growing but the workload hasn’t changed
  4. Legacy sizing: You sized your servers years ago and never revisited the configuration
  5. Migration from on-premises: You lifted-and-shifted your old server specs to Azure without optimization

The Broader Cost Optimization Opportunity

This case study represents just two servers. 

Most organizations run dozens or hundreds of SQL Server instances across production, development, QA, and UAT environments.

If you’re over-provisioned on production servers, you’re probably over-provisioned everywhere.

Common patterns we see:

  • 64 CPU Azure servers reduced to 32 or 16 CPUs
  • SQL Server Enterprise converted to Standard Edition (saves $6,000+ per core)
  • Storage tier optimization saves 25-50% of storage costs
  • These optimizations often reduce total SQL Server infrastructure costs by 50-75%

The Software Assurance Factor

Don’t overlook the Software Assurance costs associated with SQL Server Enterprise licensing.

Software Assurance typically adds 25-30% annually on top of the base license cost. 

For 16 cores of SQL Server Enterprise:

  • Base licensing value: ~$104,000
  • Software Assurance (annual): ~$26,000-$31,000

By releasing those 16 cores, the firm also eliminated ongoing Software Assurance expenses, adding thousands more to annual savings.

Common Objections to SQL Server Right-Sizing

We hear these concerns frequently:

“What if we need those cores later?”

Azure makes scaling easy. If workload increases, you can scale up in minutes. Pay for what you need now, not what you might need someday.

Vendors often recommend over-provisioned configurations to avoid support calls. They’re not paying your Azure bill.

“We can’t risk performance degradation”

That’s why we test thoroughly before making changes. We model workload, validate I/O requirements, and ensure performance will meet or exceed current levels.

“It’s not worth the effort for the savings”

A few hours of analysis saving $100,000+ annually? That’s an exceptional ROI by any measure.

Frequently asked questions

How do you ensure performance won’t degrade after right-sizing?

We use historical performance data to model workload requirements. Before making any production changes, we validate that the new configuration meets or exceeds current performance benchmarks. We also identify and fix existing bottlenecks (like slow storage) that might be masked by over-provisioned resources.

Can we scale back up if needed?

Absolutely. Azure allows you to scale instances up or down within minutes. If your workload grows beyond the optimized capacity, you can increase cores as needed. The key is paying for what you need now, not what you might need eventually.

How often should we review SQL Server sizing?

Quarterly reviews work well for most organizations. This catches workload growth before it becomes a problem while identifying new optimization opportunities. Annual deep-dive assessments ensure long-term efficiency.

What about development and test environments?

Development, QA, and UAT environments are often even more over-provisioned than production. These servers frequently get production-sized configurations despite handling a fraction of the workload. Optimizing non-production environments often yields substantial additional savings.

Does this work for SQL Server on AWS?

Yes. The same principles apply to SQL Server running on AWS EC2 instances. AWS RDS for SQL Server also benefits from similar optimization strategies, though the implementation details differ.

How do we handle seasonal workload spikes?

For businesses with seasonal peaks (retail holiday periods, tax season for financial services), you can scale up temporarily during high-demand periods and scale back down afterward. Azure Automation can even handle this programmatically.

What’s the difference between Enterprise and Standard Edition optimization opportunities?

Enterprise Edition licensing costs approximately 3x more per core than Standard Edition ($6,500 vs. $2,000 per core). This means Enterprise Edition over-provisioning creates 3x the waste. Additionally, many workloads don’t require Enterprise Edition features, creating opportunities to downgrade editions and save even more.

Can you optimize SQL Server Always On Availability Groups?

Yes, but it requires careful planning. Secondary replicas in Always On configurations must match or exceed primary replica licensing. However, readable secondaries used for reporting can sometimes justify their cost by offloading production workload. We analyze the entire availability group configuration to optimize total cost.

How do Azure Hybrid Benefit and reserved instances factor in?

Azure Hybrid Benefit allows you to apply on-premises SQL Server licenses to Azure VMs, potentially reducing costs further. Reserved instances provide compute discounts (up to 72% vs. pay-as-you-go) but don’t affect SQL Server licensing costs. We help you layer these programs with right-sizing for maximum savings.

What if we’re planning a migration to Azure SQL Database (PaaS)?

Azure SQL Database uses a different pricing model (vCore or DTU-based) that may be more cost-effective than IaaS SQL Server for certain workloads. However, it has feature limitations compared to SQL Server on VMs. We can assess whether PaaS migration makes sense alongside right-sizing your current infrastructure.

Take Action on Your SQL Server Costs

If your organization runs SQL Server on Azure, there’s a strong probability you’re over-provisioned somewhere.

The question isn’t whether optimization opportunities exist. The question is how much you’re overspending.

Start with a simple audit:

  1. List all SQL Server instances in your Azure environment
  2. Check average CPU utilization for each server
  3. Calculate your total SQL Server licensing spend
  4. Identify servers running under 30% CPU utilization

Those under-utilized servers represent immediate optimization opportunities.

For the professional services firm in this case study, a couple months of monitoring and analysis saved over $100,000 annually. Their investment in optimization paid for itself many times over.

Your SQL Server infrastructure probably has similar opportunities waiting to be discovered.

Conclusion

Modern cloud infrastructure makes it dangerously easy to overspend on SQL Server resources. Default configurations, complex billing, and opaque licensing costs create a perfect storm of waste.

This case study demonstrates what proper SQL Server performance analysis and optimization can achieve:

  • 50% reduction in CPU cores (16 to 8 per server)
  • 10x storage performance improvement
  • $13,654 annual infrastructure savings
  • $104,000 in released licensing value
  • $117,654 total first-year savings

The servers cost less and perform better. That’s not a tradeoff. That’s proper optimization.

If you’re running SQL Server on Azure and haven’t analyzed your performance and costs in the past year, you’re probably leaving money on the table. The only question is how much.

Speak with a SQL Expert

In just 30 minutes, we will show you how we can eliminate your SQL Server headaches and provide 
operational peace of mind

Article by
Mark Varnas
Founder | CEO | SQL Veteran
Hey, I'm Mark, one of the guys behind Red9. I make a living performance tuning SQL Servers and making them more stable.

Discover More

SQL Server Health Check SQL Server Migrations & Upgrades SQL Server Performance Tuning SQL Server Security SQL Server Tips

Discover what clients are saying about Red9

Red9 has incredible expertise both in SQL migration and performance tuning.

The biggest benefit has been performance gains and tuning associated with migrating to AWS and a newer version of SQL Server with Always On clustering. Red9 was integral to this process. The deep knowledge of MSSQL and combined experience of Red9 have been a huge asset during a difficult migration. Red9 found inefficient indexes and performance bottlenecks that improved latency by over 400%.

Rich Staats 5 stars
Rich Staats
Cloud Engineer
MetalToad

Always willing to go an extra mile

Working with Red9 DBAs has been a pleasure. They are great team players and have an expert knowledge of SQL Server database administration. And are always willing to go the extra mile to get the project done.
5 stars
Evelyn A.
Sr. Database Administrator

Boosts server health and efficiency for enhanced customer satisfaction

Since adding Red9 to the reporting and DataWarehousing team, Red9 has done a good job coming up to speed on our environments and helping ensure we continue to meet our customer's needs. Red9 has taken ownership of our servers ensuring they remain healthy by monitoring and tuning inefficient queries.
5 stars
Andrew F.
Datawarehousing Manager
See more testimonials