Pay-as-you-go compute: fixed region, SKU, OS and purchase type

USD retail meter, excluding Spot, Low Priority and Dev/Test records. O: the API has no operating-system field. We select the exact base product Virtual Machines Dsv5 Series and exact standard SKU, excluding the separate Windows product. Microsoft explains that this compute meter is the Linux meter; a Windows licence is separate [O, opening paragraphs of Save costs with Azure Reserved VM Instances]. The OS scope here is Linux with no paid image or software licence.

RegionVM SKUOS scopePurchase typeOfficial hourly rate730-hour monthly estimate
eastus [armRegionName]Standard_D2s_v5 [armSkuName]Linux base compute; no paid image licence [O]Consumption / PAYG [C.type]$0.096/hour [C.retailPrice; C.unitOfMeasure]$0.096 × 730 assumed hours = $70.08, estimate

Data source: official Microsoft Retail Prices API · 2026-11-12 14:25 UTC · Exact API query. C selects the sole returned Items record. The monthly amount is calculated, not an official monthly tariff.

Reservation records, kept separate from pay-as-you-go

These are API-listed reservation amounts paired with their returned terms, not hourly quotes or whole-server totals. The response reports unitOfMeasure = 1 Hour even on these reservation records. We preserve that metadata and show retailPrice with reservationTerm; we do not derive a reservation hourly or monthly price from that label. Payment timing and a personalized purchase quote are not established by this response. Microsoft describes reservation payment options and compute-only coverage in [R, opening paragraphs and Buy a Reserved VM Instance, first paragraph].

Reservation — 1 Year

RegionVM SKUOS scopePurchase type and termReturned retail amountReturned unit metadata
eastus [armRegionName]Standard_D2s_v5 [armSkuName]Linux base compute; no paid image licence [O]Reservation; 1 Year [R1.type; R1.reservationTerm]USD 519.00 [R1.retailPrice]1 Hour [unitOfMeasure]; not used as an hourly quote

Data source: official Microsoft Retail Prices API · 2026-11-12 14:25 UTC · Exact API query. This table contains only this reservation term; no Consumption, Spot or Dev/Test prices are mixed into it.

Reservation — 3 Years

RegionVM SKUOS scopePurchase type and termReturned retail amountReturned unit metadata
eastus [armRegionName]Standard_D2s_v5 [armSkuName]Linux base compute; no paid image licence [O]Reservation; 3 Years [R2.type; R2.reservationTerm]USD 997.00 [R2.retailPrice]1 Hour [unitOfMeasure]; not used as an hourly quote

Data source: official Microsoft Retail Prices API · 2026-11-12 14:25 UTC · Exact API query. This table contains only this reservation term; no Consumption, Spot or Dev/Test prices are mixed into it.

Same VM, different power state: the bill does not stop everywhere

This checklist applies to the eastus / Standard_D2s_v5 / Linux base compute / PAYG scope above. The scenario keeps the VM in the named state for 730 assumed hours. Calculations cover only VM instance usage, not the entire bill.

Power stateInstance-usage billing730-hour state scenario: compute onlyOther bill checks
RunningBilled [S, Running row]$0.096 × 730 = $70.08, estimateDisks and networking are separate; retained backup data remains billable [S footnote; B, Backup costs].
Stopped, still allocatedBilled [S, Stopped row]$0.096 × 730 = $70.08, estimateA guest-OS shutdown can leave the allocation billed; disks/networking and retained backups are still separate [S, Stopped row and footnote; B].
Stopped and deallocatedInstance usage not billed [S, Deallocated row]$0.096 × 0 billable instance hours = $0.00, estimateDisks/networking can continue; retaining vault backup data continues backup billing [S footnote; B]. This is not a zero-total bill.

Data source: official Microsoft Retail Prices API · 2026-11-12 14:25 UTC · Exact API query. The API supplies only the reference compute rate. State rules come from S: Microsoft Learn, Power states and billing, named rows and the footnote immediately below the table; backup persistence comes from B.

S describes the Stopped state as The virtual machine is allocated on a host but not running. Its footnote states Some Azure resources, such as Disks and Networking continue to incur charges.

A reservation is a separate billing commitment: deallocation can leave unused reservation hours, or the benefit can move to another matching resource. Do not apply the PAYG zero-instance-usage result as a cancellation of a reservation purchase [U, How reservation discount is applied, opening paragraphs].

Backup: protected-instance units and stored GB are separate

Backup scenario: protect the same Linux VM workload in eastus using the consumption-priced Azure VM backup meter and Standard LRS vault storage. Analyst assumptions: one billable protected-instance meter unit for a month and 100 GB-month of stored backup data. A billable meter unit is not automatically a physical VM of any size: this example does not assert a protected-data size band or size a policy. Actual protected-instance units must be established from the workload and policy. The stored amount is retained recovery-point data, not the VM RAM, provisioned disk capacity or protected-data size [B, Backup costs].

Region / purchase typeBackup SKU and meterProtected workload OSOfficial unit rateSeparate scenario calculation
eastus / Consumption [B1.armRegionName; B1.type]Azure VM / Azure VM Protected Instance [B1.skuName; B1.meterName]Linux Standard_D2s_v5; analyst workload scope$10.00 per billable unit/month [B1.retailPrice; B1.unitOfMeasure]1 assumed unit × $10.00 = $10.00/month, estimate
eastus / Consumption [B2.armRegionName; B2.type]Standard / Standard LRS Data Stored [B2.skuName; B2.meterName]Same Linux workload; backup storage meter is OS-neutral$0.0224 per GB-month [B2.retailPrice; B2.unitOfMeasure]100 assumed GB-month × $0.0224 = $2.24/month, estimate

Data source: official Microsoft Retail Prices API · 2026-11-12 14:22 UTC · Exact API query. B1 and B2 identify exact meterId records in the downloadable evidence. These are independent components, not a percentage surcharge or a whole-server total.

B, Backup costs, paragraph beginning Billing does not start: Billing continues as long as any backup data for the VM is stored in a vault. The following paragraph explains when stopping protection and deleting backup data stop billing. Stopping compute alone does not meet that condition.

Official sources, record selectors and freshness

  • C: sole Items record; all displayed C values are retailPrice, currencyCode, unitOfMeasure, armRegionName, armSkuName, productName, skuName and type.
  • R: opening paragraphs identify Linux/base compute and excluded Windows software; Buy a Reserved VM Instance, opening paragraph describes payment options.
  • S: Power states and billing: Running, Stopped and Deallocated rows, plus the footnote directly below.
  • B: Backup costs: paragraph beginning Billing does not start; next paragraph; protected-instance calculation paragraph; final paragraph on storage across recovery points.
  • U: How reservation discount is applied, opening paragraphs: unused hours and deallocation.
  • API documentation: API response examples with reservation prices; API property details; API filters.

R1 and R2 select the reservation Items records by reservationTerm and meterId, with the exact region, base product, standard SKU and type filters shown in each query. B1 selects Azure VM Protected Instance; B2 selects Standard LRS Data Stored. Their full meter IDs, source fields and retrieval times are in the timestamped evidence.

730 hours, the state-duration examples, one backup billing unit and 100 GB-month are labelled scenario inputs. No actual calendar-month length or full invoice is inferred. Unverified disk/IP/network rates, paid-image licences, protected-size-band mapping, private discounts and account-specific taxes are omitted. No unknown field is labelled N/A.