Assess Azure to Hetzner: Azure to Hetzner migration combines target architecture, data transfer and cutover within the agreed scope. Arrange a consultation.
Azure vs Hetzner starts with service scope. Comparing a Linux VM requires different line items from replacing App Service or a managed database. This article provides a data table, a reproducible traffic calculation and a framework for the complete comparison. It is not a performance test.
Date and methodology
As of 19 October 2026. Public list prices exclude taxes, individual discounts, introductory credits and special contractual terms. EUR and USD remain separate; no exchange rate is assumed. The final decision needs a saved calculation for the selected region.
The tables use the linked vendor sources and the stated region, product configuration and billing unit. Separately listed extras and operational services must be recorded separately for comparison; equal resource counts do not establish equal performance.
You may reuse the tables and calculation methodology in this article with attribution and a link to this article.
Contents
- Date and methodology
- Data table for the cost review
- Internet egress can be calculated separately
- Capture complete VM costs
- App Service is more than a VM
- Resolve databases and location before migration
- Our approach at WZ-IT
- Further guides
Data table for the cost review
The Azure reference is Standard_D2s_v5, Linux, pay-as-you-go, Germany West Central. D2s v5 has 2 vCPU, 8 GiB RAM and no local temporary storage. The Hetzner CPX32 reference has 4 shared vCPU, 8 GB RAM and 160 GB NVMe. This is neither an identically sized nor a proven performance-equivalent system. CPX32 configuration. Dsv5 specification, Hetzner resource model.
| Cost item | Azure reference | Hetzner reference | Source |
|---|---|---|---|
| Linux compute | Multiply the regional D2s-v5 hourly price by usage hours; no unverified list value | CPX32 Germany/Finland: EUR 35.49/month excluding IPv4 | Azure VM pricing, Hetzner adjustment |
| Public IPv4 | Calculate the selected IP SKU separately | EUR 0.50/month extra | Azure calculator, Hetzner IP pricing |
| Internet egress from Europe | Premium network: first 100 GB/month free, next 10 TB: USD 0.087/GB | Outbound overage beyond the plan allowance | Azure bandwidth, Hetzner billing |
| Server backup | Calculate the chosen backup separately | Optional cloud server backup: 20% of server price | Azure calculator, Hetzner backup billing |
Why no fixed Azure compute amount? Regional VM pricing loaded dynamically during source checking; no verifiable price value could be extracted. An estimate would not be a reliable comparison basis. Insert the current value from the Azure pricing calculator and save region, operating system, SKU, price date and discount model with the calculation.
CPX32 with one Primary IPv4 totals EUR 35.99 net/month, from EUR 35.49 + 0.50, excluding backups and operations. Optional server backup adds a calculated EUR 7.098, totalling EUR 43.088 before invoice rounding. This backup does not establish suitable retention or a tested restore. Server price, IPv4, backup calculation.
Internet egress can be calculated separately
This isolated model calculation assumes 1,000 GB internet egress from Europe via the Microsoft Premium Global Network, an unused free allowance and no exit credit. The Azure table defines 1 TB as 1,000 GB. Bandwidth pricing.
| Step | Calculation | Result |
|---|---|---|
| Outbound data | Assumption | 1,000 GB |
| Monthly free allowance | 1,000 - 100 | 900 GB chargeable |
| First paid pricing tier | 900 × USD 0.087 | USD 78.30 |
Azure lists USD 0.08/GB for the corresponding tier using routing preference via a transit ISP network; this is a different route. Calculate the actual configuration instead of assuming the lower rate. Azure also describes an application process for an egress credit when leaving Azure. The USD 78.30 above therefore does not represent universal exit costs. Routing prices and exit rules.
For Hetzner, document location and plan allowance. Public traffic between different network zones also counts as outbound; the provider name alone does not determine traffic billing. Billing, locations and network zones.
Capture complete VM costs
For each environment, we recommend recording compute runtime, operating system/licensing, OS and data disks, backups, IPs, network services, traffic, monitoring and operational tasks. Include the same required functions on both sides. This is a planning method, not a claim that every item applies to every environment.
An important Azure distinction: Stopped (Allocated) remains billable for compute; Stopped (Deallocated) ends compute billing. Other resources can remain chargeable. Hetzner bills an existing cloud server even when powered off. Azure states, Hetzner billing.
Calculate the target month from planned use. An assumption of 730 hours is a model, not a guaranteed monthly value. Add remaining Azure commitments and parallel operations. Base migration decisions on avoidable current costs rather than a higher public list price alone.
App Service is more than a VM
Azure App Service is a managed platform for web applications. A VM target needs an explicit mapping for required platform tasks. A container image alone does not assign responsibility for runtime updates, TLS, deployment, logs or alerts. App Service overview.
For planning, we recommend a function inventory: build and deployment, identity, secrets, configuration, background tasks, scaling and recovery. Each item needs a target and an owner. A self-managed platform can form part of the target; this does not imply feature parity with all Azure services. PaaS and cloud exit and Coolify describe existing service paths.
Resolve databases and location before migration
Azure Database for PostgreSQL and Azure SQL Database are different source systems. Azure SQL Database is based on SQL Server; moving to PostgreSQL requires checking schema, T-SQL and the application. It is not an ordinary PostgreSQL dump import. Azure SQL overview. PostgreSQL has a separate migration guide.
Hetzner Cloud offers German and Finnish locations as well as locations outside the EU. Explicitly select data region, backup destination and administrative access. A provider change alone does not demonstrate that data protection requirements are met. Hetzner locations. Contractual and legal assessment belongs in the review of the specific processing activity.
Our decision framework: Consider migration when required target functions and operations are defined. Retain Azure or move individual workloads when platform dependencies cannot reasonably be mapped. A total-cost calculation becomes meaningful after that function mapping.
Our approach at WZ-IT
Azure to Hetzner migration is the relevant offer for analysis, target architecture, data transfer, testing and cutover within the agreed scope. The Cloud Exit Assessment can clarify costs and dependencies first. Optional operations are scoped separately; a VM comparison does not include an operational commitment.
Further guides
- Azure egress and Hetzner traffic: networking costs in detail.
- AWS and Hetzner compared: EC2, Lightsail and database operations.
- DigitalOcean and Hetzner compared: bundle prices and limits.
- Migration overview: existing offers and migration paths.
Discuss Azure target architecture: Assess Azure migration with WZ-IT or book a consultation.












