Azure SQL Database DTU vs vCore: Which Purchasing Model Should You Choose?
When you create an Azure SQL Database, one of the first choices is the purchasing model: DTU or vCore. It decides how you size the database, which features you can use and how you can save money. Here is a practical way to choose, and how to move between them later.

The DTU model
A DTU (Database Transaction Unit) is a bundled measure of CPU, memory, data I/O and log I/O. You pick a tier and a size, such as Standard S3 or Premium P2, and get a fixed amount of all of them together.
- Basic: tiny databases and development.
- Standard: typical small to medium workloads.
- Premium: higher I/O performance and in-memory features.
It is simple: one number to scale, one predictable price, and a set amount of storage included.
The vCore model
In the vCore model you choose the number of virtual cores (with memory tied to the hardware generation) and storage separately, in one of three service tiers:
- General Purpose: balanced, budget-friendly; remote storage. Also offers the serverless compute option that auto-scales and can auto-pause.
- Business Critical: local SSD storage, lower latency, built-in readable secondary replica; for demanding OLTP.
- Hyperscale: very large databases with fast scaling and fast backups and restores.
Feature differences that matter
| DTU | vCore | |
|---|---|---|
| Sizing | Bundled units | Cores, memory and storage chosen separately |
| Azure Hybrid Benefit | No | Yes (provisioned compute) |
| Reserved capacity discounts | No | Yes |
| Serverless option | No | Yes |
| Hyperscale | No | Yes |
| Best for | Small, simple, predictable | Growing, larger or cost-optimised workloads |
Choose DTU when
- The database is small and you want the simplest possible setup.
- You have no existing SQL Server licences to bring.
- The workload is steady and you do not need serverless or Hyperscale.
Choose vCore when
- You own SQL Server licences with Software Assurance: Azure Hybrid Benefit can cut the cost substantially.
- The workload runs 24x7 and you can commit to reserved capacity.
- Usage is intermittent (dev/test, business-hours apps) and serverless fits.
- You need to scale CPU and storage independently, or need Business Critical or Hyperscale.
- You want sizing that maps clearly to on-premises servers (cores and memory).
Translating DTUs to vCores
Microsoft's rough rule of thumb: about 100 DTUs in Standard ≈ 1 vCore in General Purpose, and about 125 DTUs in Premium ≈ 1 vCore in Business Critical. Treat this as a starting point only; check real CPU and I/O usage after moving and adjust.
Switching models
You can change between DTU and vCore models with a scale operation in the portal, CLI or T-SQL. It is an online operation; connections drop briefly at the end, so do it in a quiet period and make sure your application retries transient errors.
ALTER DATABASE [Payroll]
MODIFY (EDITION = 'GeneralPurpose', SERVICE_OBJECTIVE = 'GP_Gen5_2');Bottom line
Start with DTU if you want simplicity for a small database. Move to vCore as soon as licensing discounts, reservations, serverless or independent scaling would save money or solve a problem. Prices and available hardware change, so compare options for your region in the Azure Pricing Calculator before deciding.
Related reading:
Comments
Post a Comment