SQL

SQL Modernization on Azure

Deployment Options · which option fits, and why
Cost estimator

Find your Azure SQL path

Microsoft Learn reference ↗

Must host dependencies stay unchanged?

Local agentsFILESTREAMPinned engine version
Yes

SQL Server on Azure VM

You manage OS, SQL patching and HA.

No / willing to redesign

Must supported instance features stay?

SQL AgentCross-database queriesCLR
Yes

Azure SQL Managed Instance

Managed OS and engine; validate feature restrictions.

No / willing to redesign

Can the application work at database scope?

Database-scoped accessNo instance-level features
Yes

Azure SQL Database

Managed databases; compare tiers, pooling and compute.

Validate features, tier/size, HA/DR and cost before committing.
Explore the options ↓

Explore deployment options

Once an offering fits, this is what you still choose inside it. Figures are maximums that depend on hardware, size and region — read them as ceilings, not defaults, and confirm against the linked documentation before you commit to a configuration.

VM family and size

Consider when the workload needs the operating system, a specific SQL build, or an instance feature the managed services do not expose.

Deployment
Marketplace SQL image, or install onto your own VM
Compute
Memory optimized for most production work. Ebdsv5 is the documented starting point; Mbdsv3 and M-series for the largest workloads
Storage
Storage optimized L-series for I/O-heavy staging on ephemeral local NVMe
Licensing
Constrained vCore sizes cut the billable SQL core count while keeping memory and I/O
Configuration details and limits
Minimum
4 or more vCores for production; E4ds_v5 is named as a minimum recommended size
Memory
8:1 memory-to-vCore is the recommended starting ratio. D-series runs 4:1; Mds_v3 reaches 16:1 and above for data warehousing
Constrained
Two models: preset reductions on selected families, and configurable constrained cores across a broader set. Both keep the parent VM's memory and I/O, and you still pay parent compute and Windows licensing
Local NVMe
The L-series NVMe is ephemeral: data held there is lost when the VM is deallocated, so it suits tempdb and staging rather than data files

Storage architecture

Consider this before VM size — disk layout and caching decide SQL throughput on IaaS more often than core count does.

Disk types
Premium SSD v2 or Premium SSD for production; Ultra Disk where the log needs submillisecond latency
Layout
Separate volumes for data, log and tempdb
tempdb
On the ephemeral temp disk for most workloads; on shared storage for cluster instances
Caching
Read-only on data, none on log, on Premium SSD
Configuration details and limits
Per disk
Ultra Disk up to 400,000 IOPS and 10,000 MB/s · Premium SSD v2 up to 80,000 IOPS and 2,000 MB/s · Premium SSD up to 20,000 IOPS and 900 MB/s
Ceiling
The VM series caps uncached IOPS and throughput independently, so the effective limit is the lower of the two. Above roughly 160,000 IOPS the guidance is Premium SSD v2 or Ultra Disk
Host caching
Read-only on data and none on log applies to Premium SSD. Premium SSD v2 and Ultra Disk do not support host caching at all, and nor do disks of 4 TiB and larger
Restrictions
Ultra Disk is locally redundant only, is unavailable in some regions and VM sizes, and cannot be used with availability setsRegional Deploying a SQL VM on Premium SSD v2 through the portal is in preview and limited to Ebdsv5 and Ebsv5Preview

HA/DR topology

Consider how much availability you want to own. Azure supplies the infrastructure; you design, configure and operate the SQL-level topology.

Database
Always On availability groups, with replicas across zones or regions
Instance
Failover cluster instance over shared storage
Placement
Availability zones, or an availability set
Recovery
Secondary replicas in another region, backup to blob storage, or Azure Site Recovery
Configuration details and limits
Shared storage
Five documented options for a cluster instance: Azure shared disks, Storage Spaces Direct, Premium file shares, partner replication, and remote iSCSI over ExpressRoute
Prerequisites
Availability groups and cluster instances both need a Windows failover cluster and an Active Directory domain. Cross-region replicas need network connectivity between the virtual networks
Licensing
A passive replica kept for high availability or disaster recovery can use the free HA/DR licence type
Additional options
Operating system
Windows Server or Linux. Linux images carry SQL Server 2017 and later
Versions
Marketplace images for SQL Server 2025, 2022, 2019, 2017 and 2016. Images deploy at RTM and are not patched over time
Editions
Enterprise, Standard, Web, Developer, Express and Evaluation. Licence-model changes apply to Standard and Enterprise only
Licensing
Pay-as-you-go, Azure Hybrid Benefit, or the free HA/DR type. Hybrid Benefit needs core licences with Software Assurance or subscription licences; switching needs no downtime and no restart
Management
The SQL IaaS Agent extension adds automated backup, automated patching, Key Vault integration, best-practice assessment and Defender for Cloud, at no chargeRegional Supported in a limited set of regions. Registration alone installs no agent — each feature you enable pulls in what it needs
Networking
The VM sits in your virtual network, secured with network security groups
Free offer
No managed free tier. Developer edition carries a free SQL licence and Express is free within its own limits — in both cases you still pay for VM compute and storage

General Purpose

Consider for most instance-scoped workloads where storage latency is budgeted for and a readable secondary is not required.

Deployment
Single instance, or an instance pool
Compute
4 to 80 vCores on all hardware
Memory
5.1, 7 or 13.6 GB per vCore by hardware generation
Storage
Up to 16 TB on remote page blobs, tied to vCore count
Databases
Up to 100
Availability
Standby nodes, no readable secondary
Configuration details and limits
vCores
2, 4, 8, 16, 24, 32, 40, 64, 80 on standard-series and premium-series; memory optimized starts at 4
Memory
Standard-series 5.1 GB per vCore to 408 GB · premium-series 7 GB to 560 GB · memory optimized 13.6 GB to 870.4 GB. The ratio stops at those maximums rather than continuing: memory optimized holds 13.6 only to 64 vCores, so an 80-vCore instance gets 870.4 GB and not 1,088
Storage
2 TB at 4 vCores, 8 TB at 8 vCores, 16 TB above that
Instance pools
Pools are General Purpose only, 8 to 80 vCores, up to 40 instances, and are the only way to run a 2-vCore instance
Also
Stop and start is available on this tier. In-memory OLTP is not

Next-gen General Purpose

Consider when General Purpose fits the shape of the workload but the database count, storage ceiling or I/O has become the constraint.

Deployment
Single instance only
Compute
4 to 80 vCores on standard-series, 4 to 128 on premium-series
Memory
5.1, 7 or 13.6 GB per vCore, and settable independently of vCores on premium-series
Storage
Up to 32 TB on Elastic SAN, with 3 IOPS included per GB
Databases
Up to 500
Availability
Standby nodes, no readable secondary
Configuration details and limits
vCores
4, 8, 16, 24, 32, 40, 64, 80 on standard-series. Premium-series and memory optimized add 6, 10, 12, 20, 48, 56, 96 and 128
Memory
Standard-series 5.1 GB per vCore to 408 GB · premium-series 7 GB to 560 GB · memory optimized 13.6 GB to 870.4 GB. The ratio holds only to 80 vCores on premium-series and 64 on memory optimized, so the largest sizes receive those maximums rather than the ratio: 128 vCores on memory optimized is 870.4 GB, not 1,741
I/O
3 IOPS per GB reserved, a floor of 300 IOPS, and a per-vCore ceiling reaching 80,000. Throughput is a thirtieth of IOPS with a 75 MB/s floor. IOPS beyond the included allowance are billable
Zone redundancy
In preview on this tierPreview
Flexible memory
Premium-series only. Generally available on locally redundant instances; in preview on zone-redundant onesPreview
Upgrading
Enabled in place on new or existing instances through the portal, PowerShell or the CLI. The documentation does not describe a downgrade path, so treat the change as one-way until you have confirmed otherwise

Business Critical

Consider when the workload needs local SSD latency, a readable secondary, or in-memory OLTP.

Deployment
Single instance only
Compute
4 to 80 vCores on standard-series, 4 to 128 on premium-series
Memory
5.1, 7 or 13.6 GB per vCore, on each replica
Storage
Up to 4 TB on standard-series; up to 16 TB on premium-series
Databases
Up to 100
Availability
Four replicas, one of them readable
Configuration details and limits
vCores
4, 8, 16, 24, 32, 40, 64, 80 on standard-series. Premium-series and memory optimized add 6, 10, 12, 20, 48, 56, 96 and 128. There is no 2-vCore option
Memory
Standard-series 5.1 GB per vCore to 408 GB · premium-series 7 GB to 560 GB · memory optimized 13.6 GB to 870.4 GB, on each replica. The ratio holds only to 80 vCores on premium-series and 64 on memory optimized, so the largest sizes receive those maximums rather than the ratio: 128 vCores on memory optimized is 870.4 GB, not 1,741
Storage
Standard-series: 1 TB to 16 vCores, 2 TB at 24, 4 TB from 32. Premium-series climbs to 5.5 TB at 24 to 56 vCores, and 5.5 TB or 16 TB above that depending on the region
In-memory OLTP
Available, sized by vCore count and hardware — roughly 3.14 GB at 4 vCores on standard-series, rising to about 131 GB at 80
Also
Flexible memory on this tier is in preview. Stop and start is not availablePreview
Reference
Service tiers
Additional options
Redundancy
Zone redundancy where the region supports it, and a secondary instance in another region through failover groups
Networking
Injected into a subnet of your virtual network, reached on a private IP address
Licensing
Pay-as-you-go or Azure Hybrid Benefit. With Software Assurance, one Enterprise core covers 4 General Purpose vCores or 1 Business Critical vCore; one Standard core covers 1 General Purpose vCore, and four Standard cores cover 1 Business Critical vCore. Not available on dev/test subscriptions
Backup
Point-in-time retention of 1 to 35 days, geo-redundant by default with other redundancy options available, and long-term retention up to 10 years
Security
Transparent data encryption, Microsoft Defender for SQL, and a configurable maintenance window
Free offer
720 vCore-hours and 64 GB of storage a month for 12 months, one instance per subscription, on 4 or 8 standard-series vCores No SLA, no zone redundancy, no failover groups, locally redundant backups only. It stops when the monthly hours run out, and after 12 months the instance is deleted if it is not moved to a paid tier within 30 days

Free offer · Azure Hybrid Benefit

General Purpose

Consider for most database-scoped workloads, and wherever an idle database should be allowed to pause.

Deployment
Single database or elastic pool; provisioned or serverless
Compute
2 to 128 vCores provisioned, or serverless to 80
Memory
5.1 GB per vCore
Storage
1 GB to 4 TB on premium remote storage
Availability
One replica, no read scale-out
Hardware
Standard-series, or DC-series for provisioned compute
Configuration details and limits
Serverless
The only tier with auto-pause, and standard-series only. Minimum 0.5 vCores, auto-pause delay from 15 minutes to 7 days with a 60-minute default, or disabled. Memory autoscales with compute, to 24 GB per vCore and 240 GB. Billed per second against per-hour billing for provisioned
Storage size
Selectable in 1 GB increments up to the maximum
Hardware
The 2 to 128 vCores and 5.1 GB per vCore above are standard-series, which provisions to 625 GB. DC-series carries 4.5 GB per vCore and provisions to 8 vCores, is provisioned only and does not support zone redundancy. Fsv2-series carries 1.9 GB per vCore and provisions to 72, can no longer be created and retires on 1 October 2026Regional

Business Critical

Consider when the database needs local SSD latency, a read scale-out replica, or in-memory OLTP.

Deployment
Single database or elastic pool; provisioned only
Compute
2 to 128 vCores
Memory
5.1 GB per vCore
Storage
1 GB to 4 TB on local SSD
Availability
Three replicas, one read scale-out
Hardware
Standard-series, or DC-series for secure enclaves
Configuration details and limits
In-memory OLTP
Available on this tier, sized by compute
Hardware
The 2 to 128 vCores and 5.1 GB per vCore above are standard-series. DC-series carries 4.5 GB per vCore and provisions to 8 vCores, is required for Always Encrypted with secure enclaves, and does not support zone redundancyRegional
Licensing
Azure Hybrid Benefit applies here, at a less generous ratio than General Purpose — one Enterprise core per vCore

Hyperscale

Consider for very large or fast-growing databases, and where read replicas need to scale independently of the primary.

Deployment
Single database or elastic pool; provisioned, or serverless without auto-pause
Compute
2 to 192 vCores, the largest two sizes in preview
Memory
5.1 or 10.2 GB per vCore by hardware
Storage
10 GB to 128 TB, decoupled with a local SSD cache, growing as needed
Availability
0 to 4 high-availability replicas, plus up to 30 named replicas
Hardware
Standard-series, premium-series, or premium-series memory optimized
Configuration details and limits
Compute
The 160 and 192 vCore options are in previewPreview
Hardware
The 10.2 GB per vCore above is premium-series memory optimized, which carries double the memory of standard-series; premium-series itself is 5.1 like standard-series but allows more vCores. Neither premium option is offered in every regionRegional
Storage
Allocated automatically and not configured as a maximum size the way it is on the other tiers
Replicas
High-availability replicas match the primary's compute size. Named replicas are independent and are used for read scale-out
Licensing
Azure Hybrid Benefit is not available for new Hyperscale databases. As of December 2023, existing provisioned single databases keep it for compute until December 2026
Reference
Hyperscale

DTU purchasing model — a supported alternative to vCore

Bundles compute, storage and I/O into one unit rather than letting you size them separately. Suited to customers who want a preconfigured bundle and a predictable monthly figure. Available for single databases and, as eDTU, for elastic pools. You can convert between DTU and vCore.

Basic
5 DTU · up to 2 GB
Standard
S0 to S12, 10 to 3,000 DTU · up to 250 GB on S0 to S2, up to 1 TB above
Premium
P1 to P15, 125 to 4,000 DTU · up to 1 TB on P1 to P6, up to 4 TB on P11 to P15Regional A few regions cap P11 to P15 at 1 TB
Note
Azure Hybrid Benefit does not apply to this model, and Basic through S2 provide less than a full vCore of compute
Additional options
Redundancy
Zone redundancy where the region and hardware support it, plus active geo-replication and failover groups
Networking
A public endpoint by default; private access through Private Link, with firewall and network access controls
Licensing
Azure Hybrid Benefit applies to provisioned vCore only. It does not apply to serverless, to the DTU model, or to new Hyperscale databases. With Software Assurance, one Enterprise core covers 4 General Purpose vCores or 1 Business Critical vCore; one Standard core covers 1 General Purpose vCore
Backup
Locally, zone or geo-redundant backup storage, 1 to 35 days of point-in-time retention with 7 by default, and long-term retention up to 10 years
Security
Transparent data encryption and Microsoft Defender for SQL
Free offer
100,000 vCore-seconds of General Purpose serverless compute, 32 GB of data and 32 GB of backup each month for the lifetime of the subscription, across up to 10 databases When the monthly allowance runs out you choose in advance whether the database pauses until the next month or continues at standard rates

Free offer · Azure Hybrid Benefit · DTU model

Cost estimator →