Synapse reserved capacity: the basics
What does Azure Advisor mean by 'consider a Synapse reservation to save over pay-as-you-go'?
An Azure Synapse Analytics dedicated SQL pool (formerly SQL DW) is billed on compute data warehouse units, the cDWU level you provision, charged by the hour at the pay-as-you-go rate whenever the pool is online. If that pool runs at a steady level around the clock, you are paying the on-demand rate for capacity you use predictably, which is exactly the pattern a reservation is built to discount. Azure Advisor watches the cDWU meter and, when it sees a consistent baseline, raises the Cost recommendation 'Consider Azure Synapse Analytics (formerly SQL DW) reservation to save over the pay-as-you-go costs' (recommendation ID 680a5388-28aa-44e8-88af-32e3598dc869).
A reservation is a billing instrument, not a resource change. You commit to a quantity of cDWU for a one or three-year term, paid upfront or monthly, and Azure applies the reservation discount automatically to any matching running warehouse in scope. Nothing about the pool itself changes: same region, same performance level, same connection strings. The only difference is the rate the compute meter is billed at. The reservation covers the cDWU compute meter only; storage and networking stay at pay-as-you-go rates.
The recommendation surfaces because Advisor has analysed your recent hourly usage and concluded that a reservation would have cost less than what you actually paid on demand over that window. Each recommendation carries Advisor's own estimate of the saving and the cDWU quantity that maximises it. The work is to confirm the baseline is genuinely steady, pick the term and scope that match how the workload runs, and buy the right number of 100-cDWU units, no more than the floor the pool reliably sits at.
In this lesson you will learn how Azure Synapse dedicated SQL pool compute is billed, why a steady cDWU baseline is the signal that a reservation will save money, and how to size, scope and buy reserved capacity without over-committing. You will see the exact Advisor recommendation, the az CLI to model and purchase a reservation, and a Bicep definition for buying one as code.
A reservation buys a price, not a machine
It is a common surprise that an Azure reservation does not provision anything. Buy a Synapse reservation and no new warehouse appears, no capacity is set aside, nothing is pinned to your name. What you have bought is purely a billing discount: a promise from Azure to charge the lower committed rate on the first matching cDWU it sees running each hour, anywhere in your chosen scope and region. Pause the pool and the discount for that hour simply evaporates, because there was no matching usage to apply it to. That is why the reservation only ever pays off against capacity that is genuinely, predictably on.
Finding the steady baseline before you commit
Priya runs the data platform at a retailer whose Synapse dedicated SQL pool powers the nightly batch and the daytime BI layer. Azure Advisor has raised the Synapse reservation recommendation, estimating a saving against the pay-as-you-go rate the pool is currently billed at.
Before buying anything, Priya wants to see the recommendation Advisor actually raised and the cDWU quantity it suggests, so the commitment is sized to a baseline the pool genuinely sits at rather than to its busiest hour.
Pull the Cost recommendations and isolate the Synapse reservation one. Advisor has already done the usage analysis and attached the quantity that maximises the saving.
Advisor raises the recommendation only after analysing recent hourly usage, so it already reflects a baseline. Confirm the pool runs that level around the clock before committing to a term.
How the Synapse reservation discount actually appliesdeep dive
A reservation is matched to usage on the cDWU meter, hour by hour. After purchase, Azure applies the reserved capacity discount automatically to any running dedicated SQL pool that matches the reservation's region and scope, charging the committed rate instead of the pay-as-you-go rate on the cDWU it covers. The discount applies to the compute meter only: storage and networking on the warehouse continue to bill at pay-as-you-go rates. Purchases are made in 100-cDWU units, so a quantity of ten covers a DW1000c baseline.
The matching is hourly and does not carry over. If you reserve five units of 100 cDWU and the pool runs at DW1500c for an hour, the discount covers the five reserved units and the remaining ten units of that hour are billed at pay-as-you-go. If the pool runs below the reserved level, or is paused, the unused reservation for that hour is simply wasted: it does not bank, roll forward or refund. This is the entire reason sizing matters. A reservation set to the pool's floor is almost always covered and almost never wasted; one set to its peak is wasted every hour the pool is quieter than peak.
Scope decides which warehouses the discount can match. Single subscription or single resource-group scope confines it to one place; shared scope lets it apply to matching warehouses across the eligible subscriptions in the billing context; management-group scope spreads it across the subscriptions in that group. Wider scope makes the reservation easier to keep fully utilised, because if one pool pauses the discount can flow to another matching pool, which is the practical lever for avoiding wasted hours when more than one warehouse exists.
What is the impact of leaving steady compute on pay-as-you-go?
The direct impact is a recurring overpayment. Every hour a steady dedicated SQL pool runs without a reservation, its compute is billed at the pay-as-you-go rate when the committed rate was available for the same capacity. The gap is not dramatic in any single hour, but a warehouse that runs around the clock multiplies that gap by thousands of hours a year, which is precisely why Advisor's estimated saving on the recommendation is material rather than rounding error.
The second-order impact is that the overpayment is invisible and compounding. There is no error, no failed check and no alert: the pool works perfectly and the bill is simply higher than it needs to be, month after month, for as long as the recommendation sits unactioned. Because nothing breaks, this is the kind of saving that drifts to the bottom of the list, even though it is one of the lowest-effort, lowest-risk reductions available on the Azure bill.
The cost of acting is small and bounded: the time to confirm the baseline, choose a term and scope, and buy the right number of units. The only way to turn the saving into a loss is to over-commit, reserving above the level the pool reliably holds, so the discipline is to size to the floor. Done that way, the impact is a clean reduction in the compute line with no change to the workload and no operational risk.
How do you buy Synapse reserved capacity safely?
Work the recommendation as a sizing exercise, not just a purchase. The order matters: confirm the baseline and model the price before you commit, so you reserve the floor the pool reliably holds rather than a level it only touches at peak.
1. Confirm the steady cDWU baseline
Look at the pool's hourly cDWU over the last 30 to 60 days and find the level it reliably sits at or above. That floor, not the average and never the peak, is what you reserve. If the pool pauses overnight or at weekends, factor those idle hours in, because the reservation discount is wasted for any hour the pool is below the reserved quantity.
2. Model the price before committing
Use the reservation calculate command to price the exact quantity, term and scope you intend to buy, so the saving and payback are confirmed numbers rather than the headline estimate. Compare the one-year and three-year terms explicitly: a longer term gives a larger discount in exchange for a longer commitment to the same workload at the same level.
3. Choose the scope that keeps it utilised
Single-subscription scope is simplest when one pool owns the baseline. If you run more than one matching warehouse, shared or management-group scope lets the discount flow to whichever pool is running, so the reservation stays utilised even if one pool pauses. Wider scope is the practical defence against wasted hours.
4. Buy the floor and revisit on a schedule
Purchase the reservation for the confirmed baseline, leave the variable top slice on demand, and set a reminder to review utilisation and the expiry date. Reservations do not auto-renew, and a workload's floor shifts over time, so a standing review is what keeps the commitment matched to the saving rather than drifting into waste.
# 1. Model the price first: a one-year reservation for a DW1000c baseline.
# Quantity is in units of 100 cDWU, so 10 units = DW1000c. SKU is the cDWU SKU.
sub="00000000-0000-0000-0000-000000000000"
az extension add --name reservation --only-show-errors
az reservations reservation-order calculate \
--reserved-resource-type SqlDataWarehouse \
--sku DWU \
--location westeurope \
--quantity 10 \
--term P1Y \
--billing-plan Monthly \
--applied-scope-type Single \
--applied-scope "/subscriptions/$sub" \
--billing-scope "$sub" \
--display-name synapse-baseline-dw1000c
# 2. Inspect the returned billingCurrencyTotal and savings, confirm the payback,
# then purchase against the reservationOrderId the calculate step returned.
orderId=$(cat /proc/sys/kernel/random/uuid)
az reservations reservation-order purchase \
--reservation-order-id "$orderId" \
--reserved-resource-type SqlDataWarehouse \
--sku DWU \
--location westeurope \
--quantity 10 \
--term P1Y \
--billing-plan Monthly \
--applied-scope-type Single \
--applied-scope "/subscriptions/$sub" \
--billing-scope "$sub" \
--display-name synapse-baseline-dw1000c Quick quiz
Question 1 of 5Azure Advisor raises 'Consider Azure Synapse Analytics (formerly SQL DW) reservation to save over the pay-as-you-go costs'. What does buying that reservation actually change?
You scored
0 / 5
Keep learning
Go deeper on how Azure Synapse reservations are priced, applied and sized so the commitment captures the saving without drifting into waste.
- Save on Azure Synapse Analytics charges with reserved capacity How to size, scope and buy Synapse dedicated SQL pool reserved capacity, including the 100-cDWU increment and role requirements.
- How reservation discounts apply to Azure Synapse Analytics How the discount matches the cDWU meter hourly, with worked examples of partial coverage and wasted hours.
- Determine what Azure reservation you should purchase How Advisor analyses recent hourly usage to recommend the quantity that maximises the saving.
You can now treat a Synapse reservation as one cost capability rather than a one-off purchase: confirm the dedicated SQL pool's steady cDWU floor, model the price with the calculate command, choose the scope that keeps the discount utilised, buy the baseline in 100-cDWU units, and revisit utilisation and expiry on a schedule. The recommendation is Advisor telling you predictable compute is still on the on-demand rate; sizing to the floor is what turns it into a clean saving.
Back to the library