Nodus vs Azure GPUs: which is cheaper for model training?
Azure ND H100 v5 vs Nodus on price, Spot evictions, credits and reservations, with a worked 8 x H100 run and a rule for when Azure Spot wins.
For on-demand training, Nodus is cheaper: an NVIDIA H100 is listed at $2.60/hr on the Nodus pricing page, against $12.29 per GPU-hour on Azure’s ND H100 v5 in East US. Azure Spot is the exception, at about $2.27 per GPU-hour today, but Azure can evict it with up to 30 seconds of notice and leaves the restart to you. If you hold Azure credits, Nodus can run single-node jobs inside your own subscription first (Beta), so the credits get spent before any Nodus capacity.
We build Nodus. Every Azure number below comes from Microsoft’s own pricing data or docs, the arithmetic is shown once, and there is a section on where Azure is the better choice.
How do Azure and Nodus GPU prices compare?
Section titled “How do Azure and Nodus GPU prices compare?”Azure sells training GPUs as whole virtual machines. The ND H100 v5 size has eight NVIDIA H100 80 GB GPUs, 96 vCPUs, 1,900 GiB of memory and a 400 Gbps InfiniBand link per GPU. Nodus lists the GPU hour on its own and prices CPU and memory separately on the same pricing page.
| 8-GPU machine | Azure pay-as-you-go | Azure Spot | Nodus listed rate |
|---|---|---|---|
| 8 x H100 80 GB (ND96isr H100 v5) | $98.32/hr ($12.29/GPU) | $18.17/hr ($2.27/GPU) | $20.80/hr ($2.60/GPU) |
| 8 x H200 141 GB (ND96isr H200 v5) | $84.80/hr ($10.60/GPU) | not compared | $28.74/hr ($3.59/GPU) |
| 8 x A100 80 GB (ND96amsr A100 v4) | $32.77/hr ($4.10/GPU) | $8.44/hr ($1.06/GPU) | $8.72/hr ($1.09/GPU) |
Prices checked November 3, 2026, Linux, from Microsoft’s Retail Prices API (the same sizes are on the Linux VM pricing page). H100 and A100 rows are East US, the H200 row is East US 2. Nodus rates are from the pricing page.
Region matters more on Azure than people expect. The same ND H100 v5 is $98.32/hr in East US, West US 2 and West US 3, $117.97/hr in South Central US, and $127.82/hr in West Europe. Quote the region you will actually get quota in.
Reservations close part of the on-demand gap. Azure’s API lists a one-year ND H100 v5 reservation at $551,221, which is $62.92/hr ($7.87/GPU) across 8,760 hours. The three-year term is $1,134,310, or $43.16/hr ($5.40/GPU). Both are still above the Nodus rate, and both bill whether or not the machine is busy.
Per H100-hour, only Azure Spot comes in under the Nodus listed rate.
What does the same 8 x H100 run cost on each?
Section titled “What does the same 8 x H100 run cost on each?”We priced the run we use across our comparison posts: 8 x H100 for 10 hours, or 80 GPU-hours.
| Platform and capacity | Hourly rate | 10-hour run |
|---|---|---|
| Azure ND H100 v5, pay-as-you-go | $98.32/hr | $983.20 |
| Azure ND H100 v5, 1-year reservation | $62.92/hr | $629.25 |
| Azure ND H100 v5, Spot, no evictions | $18.17/hr | $181.70 |
| Nodus | $20.80/hr | $208.00 |
Same sources and date as the table above. The reservation row is its hourly equivalent, not something you can buy for 10 hours.
On pay-as-you-go, the Nodus run costs $775.20 less, about 79% below Azure. One caveat keeps this fair: Azure’s price includes 96 vCPUs and 1,900 GiB of memory, and the Nodus figure is the GPU line only. Nodus lists 4 vCPU with 16 GiB at $0.1054/hr, so a job that needs a large host adds to the Nodus side.
Azure Spot is $26.30 cheaper than Nodus for this run, if nothing goes wrong. The next section is about what “goes wrong” costs.
Against pay-as-you-go Azure, the same 80 H100-hours cost $775.20 less on Nodus.
When is Azure Spot actually cheaper than Nodus?
Section titled “When is Azure Spot actually cheaper than Nodus?”Azure Spot wins only while evictions cost you less than about 14.5% extra GPU time. The rule comes from the two hourly rates: $20.80 / $18.17 = 1.145. If the hours you pay for divided by the hours of useful training stays under 1.145, Spot is cheaper. Above that, Nodus is.
Microsoft’s Spot VM docs explain why that ratio moves. Azure evicts Spot VMs whenever it needs the capacity back, with no SLA. The warning is a Scheduled Event sent on a best-effort basis up to 30 seconds before eviction. An evicted VM is deallocated or deleted, it is not restarted automatically, and a deallocated VM still counts against your quota and bills for its disks.
Here is the same 10-hour run with evictions, at $18.17/hr. We assume each eviction loses the work since the last checkpoint and ignore the time spent waiting for capacity, which only makes Spot look better.
| Scenario | Billed hours | Cost |
|---|---|---|
| Spot, no evictions | 10 | $181.70 |
| Spot, hourly checkpoints, 1 eviction (up to 1 h redone) | 11 | $199.87 |
| Spot, hourly checkpoints, 2 evictions | 12 | $218.04 |
| Spot, no checkpoints, evicted at hour 5 | 15 | $272.55 |
| Nodus | 10 | $208.00 |
One eviction keeps Spot ahead. The second one puts it $10.04 behind Nodus, and a run with no checkpoint loses by $64.55. The arithmetic is ours, from the rates above.
Two evictions with hourly checkpoints are enough to make Azure Spot more expensive than Nodus.
The decision rule we use: pick Azure Spot when your code already checkpoints often and you can relaunch it yourself. It also helps if the run is short enough that one eviction is the realistic worst case. Pick Nodus when nobody will be awake to relaunch the run. On Nodus, the checkpoint guide explains what happens when capacity under a Job is reclaimed. The next attempt starts with its /nodus/state directory restored, and your program carries on from what it saved. We cover the general pattern in Spot vs on-demand GPUs.
Can Nodus use your Azure credits?
Section titled “Can Nodus use your Azure credits?”Yes, for single-node work. Nodus can connect an Azure subscription read-only to show its machines, daily cost and GPU quotas, and as a separate Beta step run your Jobs in that subscription first. Per the cloud accounts guide, this is billed to the subscription’s own Azure credits, such as startup credits.
Setup is a Microsoft sign-in, not a key. Nodus creates a dedicated resource group, network and restricted role, and the role can only create, read and delete virtual machines and their disks in that resource group. Machines get no managed identity and no usable SSH key, and take no inbound connection. Once the setup script prints Done, the CLI step is copied from the docs:
nodus cloud connect azure azure-main --credit-limit 1000For an own-account GPU Job, the estimate shows a Nodus route fee of $0.02 per device-hour, and Azure bills the machine and disk directly. On the 80 GPU-hour run that is $1.60 on top of your Azure bill. When the account is full or out of credit, --burst Allow (the default) continues the work on Nodus capacity. Approve makes Jobs wait for your approval, and Deny waits for your account.
Quota is the step people forget. Azure counts vCPUs per GPU family per region, and an ND H100 v5 needs 96 of them. If Azure refuses a machine for quota, Nodus skips that GPU family in that region for an hour and runs the work elsewhere. Sandboxes and multi-node runs use Nodus capacity.
Where is Azure the better choice?
Section titled “Where is Azure the better choice?”Azure is the better pick in four cases, and we would say so to a friend.
You have Azure credits or a committed spend
Section titled “You have Azure credits or a committed spend”Credits and enterprise commitments change the math more than any list price. If the money is already committed to Azure, spending it first is the cheapest option. Connecting the subscription to Nodus lets you do that and still send overflow work to Nodus capacity.
You need large multi-node clusters with InfiniBand
Section titled “You need large multi-node clusters with InfiniBand”ND H100 v5 gives every GPU its own 400 Gbps InfiniBand link, 3.2 Tbps per VM, and Microsoft documents scale-out to thousands of GPUs. Multi-node training on Nodus is in Beta. For very large synchronous runs, Azure’s documented fabric is the safer bet today.
Your data and identity already live in Azure
Section titled “Your data and identity already live in Azure”Training next to Azure Blob Storage avoids moving datasets, and outbound transfer from Azure is billed under bandwidth pricing. Teams that run on Microsoft Entra ID and Azure policy may also need compute inside the same tenant for compliance.
Your jobs are short and already checkpoint well
Section titled “Your jobs are short and already checkpoint well”As the table shows, Azure Spot in East US costs less per hour than the Nodus rate. A team that saves every few minutes and restarts its own jobs can come out ahead.
If none of these apply, Nodus is the cheaper way to train on H100s. For the other big clouds, see Nodus vs Google Cloud GPUs and cheaper AWS alternatives for GPU training.
How do you move a training job from Azure to Nodus?
Section titled “How do you move a training job from Azure to Nodus?”For a PyTorch script, install the CLI, set a spending cap and run the same command:
pip install nodus-computenodus login
# 8 x H100, a $220 spending cap, detachednodus run --gpu H100:8 --max-cost 220 -d -- torchrun train.pyThe --gpu H100:8, --max-cost and -d flags are from the nodus run reference. Add --dry-run first to print the estimate without starting anything.
If your script saves checkpoints to Azure Blob Storage or a managed disk today, point that path at /nodus/state instead. A restored attempt runs your command again from the start with that directory in place, so the script must load its own progress on startup.
What can Nodus see in a read-only Azure connection?
Section titled “What can Nodus see in a read-only Azure connection?”Per the cloud accounts guide, Nodus reads the subscription’s virtual machines, its daily actual cost by service, and its GPU vCPU quotas in eastus, eastus2, southcentralus, westus2 and westus3. With the Reader role it can read every resource in the subscription, but monitoring does not create, change or delete machines.
Which Azure regions have the cheapest H100s?
Section titled “Which Azure regions have the cheapest H100s?”In Microsoft’s price data on November 3, 2026, ND H100 v5 was cheapest in East US, East US 2, West US 2 and West US 3, at $98.32/hr. Some regions list it well above that, including South Africa West at $186.61/hr.
Does Azure Spot pricing change over time?
Section titled “Does Azure Spot pricing change over time?”Yes. Microsoft’s Spot docs say price and capacity vary by size, region and time of day, and you can set a maximum price. If the Spot price rises above your maximum, the VM is evicted.
Does Nodus run Spot machines in my Azure subscription?
Section titled “Does Nodus run Spot machines in my Azure subscription?”We have not documented that, so do not assume it. The documented behavior is that Nodus places single-node Jobs in your connected subscription within the credit limit you set. The job page shows whether each attempt ran there or on Nodus capacity.
More from the blog
agents8 min read
Which sandboxes give AI agents GPUs: Modal, E2B or Nodus?
Modal, Daytona and Nodus offer GPU sandboxes for agents; E2B is CPU-only. Preemption, lifetimes, H100 prices and when to hand GPU work to a job.
Read the postgpu7 min read
A100 vs H100: is the H100 worth it for LLM training?
A100 vs H100 for LLM training: the H100 is cheaper per finished job only when it runs at least 2.39x faster on Nodus. Spec ratios, worked costs, a quick test.
Read the post