Azure Virtual Machines vs Scaleway
Both rent plain VMs you set up yourself. Azure runs them in 77 regions worldwide with per-minute billing and hundreds of sizes, while Scaleway is a European cloud in four cities, with fixed shapes billed per hour that cost less for steady small machines.
The companies and products
Azure Virtual Machines
Azure Virtual Machines is Microsoft's general-purpose cloud VM service: you rent Linux or Windows machines by the minute in Azure regions worldwide.
It is a hyperscaler IaaS product, not a sandbox API. Each VM runs on Microsoft's Hyper-V hypervisor with its own kernel, root and SSH, and you pick from hundreds of sizes, including Arm, burstable and GPU families. Networking, disks, images, firewalls and any agent tooling are separate pieces you set up yourself, so it suits teams that already run on Azure and want full control.
Scaleway
Scaleway is a European cloud and AI provider, part of the iliad Group, that rents virtual machines, GPUs, storage and managed services.
Scaleway Instances are KVM virtual machines you pick from fixed shapes, from small shared-vCPU Development Instances to dedicated-vCPU and Arm64 types, running Linux or Windows Server. You get root, SSH, a public IP and security groups, and you install and run your own software next to Scaleway products like managed databases, Kubernetes, object storage and GPU Instances. It is general cloud infrastructure, not an agent sandbox, so this page compares the two where they overlap: giving an agent its own Linux machine.
Which use cases each one fits
For each use case, Battleships prices every sandbox provider on the same workload and sorts them from the cheapest monthly bill up. “3rd cheapest of 364” means 2 of the other 363 providers run that workload, with every feature it needs, for less. “With limits” means the provider runs it but misses something, so it is listed after every full match. Open a use case for its whole ranking and what each provider misses.
| Use case and its workload | Azure Virtual Machines: price rank | Scaleway: price rank | bochka: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month Both give a full VM with root and Docker, but on either one you build the images, HTTPS and agent driver yourself; bochka ships them on every machine. | 83rd of 367, with limits $730 a month | 49th of 367, with limits $322 a month | 3rd cheapest of 367 $634 a month |
| Always-on AI employees 50 machines 24/7 · 2 vCPU / 4 GB Scaleway runs an always-on assistant month to month, while Azure only gets cheap with a 3-year reservation; bochka adds snapshots and a desktop to the same job. | 113th of 366, with limits $644 a month | 90th of 366, with limits $208 a month | 5th cheapest of 366 $657 a month |
| Code interpreter bursts 100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month Azure fits short code runs better than Scaleway, because it bills per minute while Scaleway bills each CPU Instance for at least an hour. | 114th of 345, with limits $222 a month | 166th of 345, with limits $893 a month | 186th of 345, with limits $2,000 a month |
| Sandboxes for your users 300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month 300 user sandboxes need a quota raise on both: Azure counts vCPUs per region and family, and Scaleway counts per shape; bochka allows 100 to 2,000 sandboxes by plan. | 63rd of 361, with limits $500 a month | 84th of 361, with limits $738 a month | Cheapest of 361 $209 a month |
| RL rollouts 1,000 at once · 2 vCPU / 4 GB · 1,000,000 sessions of 3 min a month Azure Spot VMs make big RL fleets cheap if rollouts survive eviction with 30 seconds of notice, while Scaleway's hourly billing makes short rollouts costly. | 19th of 360, with limits $1,039 a month | 176th of 360, with limits $18,254 a month | 34th of 360, with limits $2,000 a month |
| Agent evals 250 at once · 4 vCPU / 8 GB · 15,000 sessions of 20 min a month All three fit eval batches; Azure's per-minute billing and huge size range suit scripted batches best here. | 3rd cheapest of 364 $173 a month | 42nd cheapest of 364 $776 a month | 10th cheapest of 364 $200 a month |
| CI runners 40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month | 35th cheapest of 377 $335 a month | 82nd cheapest of 377 $777 a month | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB Both run a 24/7 dev box well, and Scaleway does it for less; a bochka machine also keeps its disk with snapshots every minute. | 72nd cheapest of 368 $94 a month | 30th cheapest of 368 $41 a month | 18th cheapest of 368 $26 a month |
| Computer-use agents 50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month Neither has a desktop stream or computer-use API, so you install a desktop and a VNC or RDP server yourself; bochka ships a 60fps desktop and Chromium. | 100th of 369, with limits $192 a month | 94th of 369, with limits $168 a month | 6th cheapest of 369 $200 a month |
| Browser-use agents 50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month | 168th of 367, with limits $107 a month | 173rd of 367, with limits $126 a month | 7th cheapest of 367 $200 a month |
| Scraping & bots (startup scale) 50 at once · 1 vCPU / 2 GB · 100,000 sessions of 3 min a month | 194th of 346, with limits $116 a month | 149th of 346, with limits $13 a month | 6th cheapest of 346 $90 a month |
| Mass scraping & bots (undetectable) 1,000 at once · 1 vCPU / 2 GB · 3,000,000 sessions of 2 min a month | 81st of 338, with limits $2,044 a month | 34th of 338, with limits $253 a month | 71st of 338, with limits $1,800 a month |
| Parallel red teaming 200 at once · 2 vCPU / 4 GB · 5,000 sessions of 30 min a month | 110th of 360, with limits $46 a month | 103rd of 360, with limits $29 a month | 2nd cheapest of 360 $200 a month |
| GPU eval jobs 10 at once · 8 vCPU / 32 GB · 500 sessions of 30 min a month | Can't run it | Can't run it | Can't run it |
| macOS agents 5 at once · 4 vCPU / 8 GB · 1,000 sessions of 20 min a month | Can't run it | Can't run it | Can't run it |
Key features
| Feature | Azure Virtual Machines | Scaleway | bochka |
|---|---|---|---|
| What you get | A general cloud VM from hundreds of sizes; images, networking and tooling are yours to set up | A general EU cloud VM in fixed shapes; you install and run everything yourself | An agent sandbox: a full VM per sandbox, created and driven by API |
| Isolation | Full Hyper-V VM with its own kernel | Full QEMU/KVM VM with its own kernel | Full VM with its own kernel |
| Docker and nested virtualization | Root and Docker on any size; nested virtualization on Intel and AMD D and F sizes, not on Arm or B-series | Root and Docker on Linux images; nested virtualization is not documented | Docker, root, systemd and /dev/kvm on every machine, documented |
| Billing unit | Per full minute while running, no plan fee; disks, IPv4 and egress on top | Per hour of uptime, including startup and standby; disks and IPv4 on top | Monthly plan from $20, all of it usage credit spent per second |
| Stopping | A shutdown from inside the OS keeps billing; a deallocate stops compute, but disks and static IPs keep billing | Standby bills as running, and a shutdown from inside puts it in standby; a console or API power-off stops compute, but volumes and IPs keep billing | A stopped sandbox costs nothing and keeps its disk |
| Pause with memory | Hibernation saves memory on supported sizes up to 64 GB of RAM, triggered by API | No memory pause | Resume reboots from disk (no memory snapshots) |
| Snapshots and fork | Disk snapshots and images you create; image capture needs the VM stopped, and copies boot cold | Images and volume snapshots you create; new Instances boot from the image | Snapshots every minute and on stop; fork a running sandbox in one call |
| Reaching the machine | Public IPv4 and any port through security group rules; HTTPS is yours to run, or you add a gateway | Public IPv4 and IPv6 on any port; HTTPS needs your own proxy, certificates and DNS | HTTPS URLs for up to 50 ports, token-protected; raw TCP; dedicated IP |
| Outbound rules | Security group rules by IP, and domain allowlists with the paid Azure Firewall | Security groups by protocol, port and IP range; SMTP blocked by default | Open internet on every plan; no provider-side allowlist |
| Agents, desktop and keys | None built in; Key Vault secrets are fetched into the VM, where code can read them | None built in; Secret Manager secrets are fetched onto the machine | Claude Code, Codex, OpenCode and more with a prompt, steer and events API; 60fps desktop; AI credentials proxy for any HTTPS API |
| How many at once | vCPU quotas per region and VM family, stopped VMs count; raised by request | Quotas per shape, for example 10 DEV1-L after identity checks; more through support | 100 to 2,000 sandboxes by plan, raised self-serve |
| GPUs | GPU families such as NC with Nvidia H100 and A100 | GPU Instances with Nvidia B300, H100, L4 and L40S, billed per minute | None |
| Operating systems and CPUs | Linux and Windows on Intel, AMD and Arm (Cobalt 100, Ampere Altra), plus burstable B-series | Linux and Windows Server on x86 and Arm64; shared vCPU on Development and Play types, dedicated on others | Linux on dedicated AMD Ryzen 9 9950X (Zen 5) hosts; Wine for Windows apps |
| Regions | 77 regions worldwide, available or coming soon, including many in the EU | EU only: Paris, Amsterdam, Warsaw and Milan | EU only: Germany, Finland, France |
Every feature Battleships tracks (43)
| Feature | Azure Virtual Machines | Scaleway | bochka |
|---|---|---|---|
| Full VM (own kernel) | Yes | Yes | Yes |
| Docker inside | Yes | Yes | Yes |
| Nested virtualization | Yes | Not published | Yes |
| Root | Yes | Yes | Yes |
| Systemd | Yes | Yes | Yes |
| Desktop GUI | No | No | Yes |
| Browser | No | No | Yes |
| Computer-use API | No | No | Yes |
| SSH | Yes | Yes | Yes |
| Persistent disk | Yes | Yes | Yes |
| Pause/resume | Yes | No | Yes |
| Automatic snapshots | No | No | Yes |
| Fork/clone | Yes | Yes | Yes |
| Live fork (no pause) | No | Yes | Yes |
| Memory fork | No | No | No |
| Custom image (Docker or snapshot) | Yes | Yes | Yes |
| ≥24 h sessions | Yes | Yes | Yes |
| Idle auto-stop | No | No | No |
| Wake on request | No | No | No |
| HTTPS preview URLs | No | No | Yes |
| Raw TCP inbound | Yes | Yes | Yes |
| Public IPv4 | Yes | Yes | No |
| Egress allowlist | Yes | Yes | No |
| Secret proxy | No | No | Yes |
| Secret proxy for any API | No | No | Yes |
| Preinstalled agents | No | No | Yes |
| Agent harness API | No | No | Yes |
| MCP server | Yes | No | No |
| GPU | Yes | Yes | No |
| Windows | Yes | Yes | No |
| Arm64 | Yes | Yes | No |
| Self-hosting | No | No | No |
| BYOC | No | No | No |
| Open source | No | No | No |
| Scoped API keys | Not published | Not published | Yes |
| Spend limits | No | No | Yes |
| Usage per sandbox (API) | Yes | No | Yes |
| Audit logs | Yes | Yes | No |
| SSO | Yes | Yes | No |
| SOC 2 | Yes | No | No |
| HIPAA | Yes | No | No |
| EU data residency | Yes | Yes | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
There is no comparable measurement for Azure Virtual Machines or Scaleway: neither was in the public StarSling benchmark run. bochka did 26.69 Node.js build-and-test runs per second at 4 vCPU / 8 GB in that run of 2026-09-29. On both clouds the speed depends on the CPU family or shape you pick, and Scaleway's Development types use shared vCPUs.
Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Azure Virtual Machines and Scaleway have no published run in this suite yet, so there is no like-for-like number to compare.
Pricing in five scenarios
Each bill is priced from the providers' public price lists by the open Battleships engine, with the cheapest plan that runs the scenario.
| Scenario | Azure Virtual Machines, a month | Scaleway, a month | bochka, a month |
|---|---|---|---|
| One coding agent, workdays 4 vCPU / 8 GB, 50 GB disk, 8 hours a day, 22 days a month, files kept between days | $26 · Pay-as-you-go subscription (no plan fee) | $14 · Usage account | $20 · $20/mo |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $48 · Pay-as-you-go subscription (no plan fee) · with limits | $41 · Usage account | $26 · $20/mo |
| 50 agents in parallel 50 machines of 4 vCPU / 8 GB at once, 8-hour sessions, 1,100 sessions a month, Docker inside | $1,168 · Pay-as-you-go subscription (no plan fee) | $537 · Usage account | $317 · $20/mo × 3 seats |
| Sandboxes for your users 2 vCPU / 4 GB, 30,000 sessions of 10 minutes a month, up to 300 at once | $225 · Pay-as-you-go subscription (no plan fee) | $734 · Usage account | $200 · $100/mo × 2 seats |
| 1,000 short jobs at once 2 vCPU / 4 GB, 1,000 at once, 3 minutes each, 200,000 jobs a month | $483 · Pay-as-you-go subscription (no plan fee) · with limits | $4,892 · Usage account | $2,000 · $2000/mo · with limits |
Azure Virtual Machines: Azure bills each VM per full minute while it runs, with no plan fee; disks, public IPv4 and egress bill on top, and disks keep billing while a VM is deallocated. The always-on price needs a 3-year reservation, billed whether the VM runs or not.
Scaleway: Scaleway bills each CPU Instance per hour of uptime, including startup and standby, so a one-minute job pays a full hour. Disks and public IPv4 bill on top and keep billing while an Instance is powered off.
Scaleway: You pick a monthly plan from $20, and all of it becomes usage credit spent per second on running sandboxes. A stopped sandbox costs nothing and keeps its disk.
Limits in those scenarios
Azure caps vCPUs per region and per VM family, counts stopped VMs, and the always-on price only works with a 3-year commitment. For 1,000 short jobs at once, Azure's low figure uses B-series burstable VMs that guarantee 30% of each vCPU and throttle above that, while Scaleway fits but pays a full hour per job, so it comes to $4,892 a month. Scaleway also sets quotas per shape, so 50 agents, 300 user sandboxes and that burst all need a support request first. On bochka the same burst is held back by starts per minute and per day, even on the $2,000 plan.
| Scenario | Azure Virtual Machines | Scaleway | bochka |
|---|---|---|---|
| One coding agent, workdays | None that bite | None that bite | None that bite |
| One agent that never stops |
| None that bite | None that bite |
| 50 agents in parallel | None that bite | None that bite | None that bite |
| Sandboxes for your users | None that bite | None that bite | None that bite |
| 1,000 short jobs at once |
| None that bite |
|
Which one should you use?
Use Azure Virtual Machines when
you need regions outside Europe, per-minute billing, hibernation or Spot pricing, or your company already runs everything inside Azure.
- Regions almost anywhere. Pick Azure if your machines must run outside Europe: it lists 77 regions worldwide, many in the EU too.
- Per-minute billing and Spot. Pick Azure for short or bursty jobs: it bills per minute, and Spot VMs sell spare capacity cheaply if eviction is fine.
- Hibernation and nested VMs. Pick Azure if a machine must resume with its memory, or run nested VMs on documented Intel and AMD sizes.
Use Scaleway when
you want a European cloud with lower prices for steady small machines, GPUs like Nvidia B300 by the minute, and servers that sit next to managed databases and Kubernetes.
- Lower bills for steady machines. Pick Scaleway for one small machine kept for days: a 4 vCPU / 8 GB DEV1-L costs less than Azure in our scenarios.
- A European cloud. Pick Scaleway if you want a European provider: it is part of the iliad Group and runs only in EU cities.
- Newer GPUs in the same account. Pick Scaleway if agents need Nvidia B300, L4 or L40S cards, billed per minute next to your CPU Instances.
Where bochka fits
Azure and Scaleway are general clouds, so if what you are really running is agents, both leave you to build the sandbox layer yourself. bochka gives each agent a full VM in the EU that is ready to work, with coding agents, a desktop, HTTPS URLs and snapshots built in.
Coding agents you drive from outside
On Azure and Scaleway you install, update and supervise each agent over SSH or Run Command, and Key Vault or Secret Manager puts the key on the machine where agent code can read it. bochka ships the agents with an API and keeps keys outside.
Free stops and forks of a running machine
Idle agents still bill: a deallocated Azure VM pays for disks and IPs, and Scaleway standby bills as running. Copying a live machine means making an image first, and Azure needs the VM stopped for that.
Fleets without a quota ticket
Azure's vCPU quotas start low and Scaleway allows 10 DEV1-L after identity checks, so 50 agents means a support request on both, then TLS and DNS per machine. bochka runs 100 to 2,000 sandboxes with HTTPS on 50 ports.
Use bochka when the machines are for agents: a full VM each with Docker and /dev/kvm, coding agents you drive by API, a desktop, HTTPS URLs, forks of running sandboxes and stops that cost nothing, in the EU. Compare it one to one: bochka vs Azure Virtual Machines and bochka vs Scaleway.
Questions people ask
Is Azure cheaper than Scaleway?
Usually not. One coding agent on workdays is $14 a month on Scaleway and $26 on Azure, and 50 agents in parallel come to $537 on Scaleway against $1,168 on Azure. Azure wins for 300 short user sandboxes, at $225 against $734, because it bills per minute; bochka comes to $20, $317 and $200 for the same three.
Which is faster, Azure or Scaleway?
We have no comparable measurement for either: neither was in the public StarSling benchmark. Speed on both depends on the CPU family or shape you pick. bochka did 26.69 Node.js build-and-test runs per second at 4 vCPU / 8 GB in that benchmark.
Can Azure VMs and Scaleway Instances run Docker and nested VMs?
Both run Docker, since each is a full VM with root. Azure documents nested virtualization on Intel and AMD D and F sizes, not on Arm or B-series, and Scaleway's docs do not cover it. On bochka, Docker, systemd and /dev/kvm are documented on every machine.
Do I pay for a stopped VM on Azure or Scaleway?
On both, a shutdown from inside the machine keeps compute billing. A deallocate on Azure or a power-off from Scaleway's console or API stops compute, but disks and IPs keep billing. A stopped bochka sandbox costs nothing and keeps its disk.
Where does my data run?
Azure lists 77 regions worldwide, including many in the EU. Scaleway runs only in Paris, Amsterdam, Warsaw and Milan. bochka runs only in the EU, in Germany, Finland and France, with EU data residency.
Do Azure or Scaleway have an agent sandbox product?
No. Both sell plain VMs, so you install agents yourself and drive them over SSH or scripts. bochka is built for agents, with coding agents, a desktop and a credentials proxy in every sandbox.
Try bochka
Install the CLI, then run bochka new.
Product preview
More comparisons
- bochka vs Azure Virtual Machines
- bochka vs Scaleway
- AWS EC2 vs Azure Virtual Machines
- Google Compute Engine vs Azure Virtual Machines
- Azure Virtual Machines vs Oracle Cloud
- Azure Virtual Machines vs DigitalOcean
- Azure Virtual Machines vs Hetzner Cloud
- Azure Virtual Machines vs Vultr
- Azure Virtual Machines vs Linode
- Azure Virtual Machines vs OVHcloud
- Azure Virtual Machines vs IONOS Cloud
- Azure Virtual Machines vs Contabo