Koyeb vs Unikraft Cloud

Both run each sandbox in its own microVM and both sleep when idle. Koyeb bills each instance per second and adds GPUs and bigger machines, while Unikraft Cloud sells a flat pool of running capacity and wakes instances in milliseconds.

The companies and products

Koyeb

Koyeb is a serverless cloud for apps, inference and sandboxes, and in February 2026 it agreed to join Mistral AI.

A Koyeb sandbox is a Koyeb service: a microVM started from any Docker image and driven from Python or JavaScript SDKs that run commands, read files and expose a port. It can scale to zero when idle and wake on the next request, and it can run on CPU or GPU instance types. It is built for teams that run AI agents or untrusted code next to apps they already host on Koyeb.

Unikraft Cloud

Unikraft Cloud is a microVM cloud from Unikraft Inc. that runs any Dockerfile-based workload as a minimal Linux microVM with millisecond cold starts and scale-to-zero.

Your Dockerfile becomes the VM image at build time, and each instance runs on a heavily customized Firecracker VMM, so it boots in milliseconds and can go into standby when no traffic arrives. It is a general compute platform built for dense, bursty work such as HTTP services, headless browsers and agent fleets, sold as flat self-serve plans plus Enterprise dedicated hosts, on-prem and bring your own cloud. It is not a dev machine you log into: instances are reached through services, the CLI and a sandbox plugin for commands and files.

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. “4th cheapest of 345” means 3 of the other 344 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 workloadKoyeb: price rankUnikraft Cloud: price rankbochka: price rank
Software factory
100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month
A software factory needs Docker, a lasting disk and room to build; Koyeb's local disk is lost on redeploy, Unikraft documents no container runtime inside, and bochka keeps its disk with Docker ready.
54th of 367, with limits
$366 a month
Can't run it3rd cheapest of 367
$634 a month
Always-on AI employees
50 machines 24/7 · 2 vCPU / 4 GB
135th of 366, with limits
$923 a month
Can't run it5th cheapest of 366
$657 a month
Code interpreter bursts
100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month
Short code runs that sleep between calls suit both; Koyeb has a published per-second rate for them, while Unikraft caps self-serve plans at 24 running instances.
4th cheapest of 345
$66 a month
Can't run it186th 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
Koyeb fits hundreds of user sandboxes on its Scale plan; Unikraft Pro holds 5,000 sleeping instances but only 24 running ones, so this needs an Enterprise contract.
6th cheapest of 361
$495 a month
Can't run itCheapest of 361
$209 a month
RL rollouts
1,000 at once · 2 vCPU / 4 GB · 1,000,000 sessions of 3 min a month
237th of 360, with limits
$1,631 a month
Can't run it34th 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
19th cheapest of 364
$429 a month
Can't run it10th cheapest of 364
$200 a month
CI runners
40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month
CI that runs Android emulators needs /dev/kvm; Koyeb does not document it, Unikraft keeps it for Enterprise, and bochka exposes it on every plan.
142nd of 377, with limits
$88 a month
Can't run it4th cheapest of 377
$86 a month
24/7 dev boxes
1 machine 24/7 · 4 vCPU / 8 GB
Koyeb and Unikraft land close for a box kept all month, but neither offers SSH, while bochka gives you SSH and a disk saved every minute.
217th of 368, with limits
$37 a month
219th of 368, with limits
$39 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
Computer-use agents need a desktop to see and click; neither Koyeb nor Unikraft has one built in, and bochka streams a 60fps Linux desktop with Chromium.
81st of 369, with limits
$123 a month
Can't run it6th cheapest of 369
$200 a month
Browser-use agents
50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month
On Koyeb and Unikraft you run your own headless browser from an image; bochka ships Chromium on a desktop in every sandbox.
172nd of 367, with limits
$123 a month
Can't run it7th 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
172nd of 346, with limits
$89 a month
Can't run it6th 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
65th of 338, with limits
$1,683 a month
Can't run it71st 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
233rd of 360, with limits
$299 a month
Can't run it2nd cheapest of 360
$200 a month
GPU eval jobs
10 at once · 8 vCPU / 32 GB · 500 sessions of 30 min a month
Koyeb runs GPU instances up to H100 and H200 self-serve; Unikraft offers GPUs only on Enterprise, and bochka has none.
3rd cheapest of 98
$628 a month
Can't run itCan't run it
macOS agents
5 at once · 4 vCPU / 8 GB · 1,000 sessions of 20 min a month
Can't run itCan't run itCan't run it

Key features

FeatureKoyebUnikraft Cloudbochka
IsolationMicroVM per instanceMinimal Linux microVM on a customized Firecracker VMMFull VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts
Machine sizeInstance types up to 40 vCPU / 128 GB, and GPU types far largerPlan pool shared by all running instances: 2 vCPU / 4 GiB, 8 vCPU / 8 GiB or 24 vCPU / 32 GiB4 vCPU / 8 GB by default, up to 16 vCPU / 32 GB per sandbox on the $100 plan and above
Docker and systemd insideStarts from any Docker image; Docker inside a sandbox is listed, systemd is not documentedRuns as root; the Dockerfile becomes the VM image, with no container runtime inside documentedYes, Docker, systemd and root, like any Ubuntu machine
Nested virtualizationNot documentedYes, with a per-instance flag and permission, Enterprise onlyYes, /dev/kvm for Android emulators and VMs on every plan
Disk that survivesLocal disk is lost on redeploy; volumes (preview, 1 to 10 GB, Frankfurt and Washington) persistStateful standby snapshots memory to disk; volumes can be attachedDisk is kept across stops and saved every minute, with snapshots
Sleep and wakeScales to zero after at least 5 idle minutes and wakes on the next request; Light Sleep wakes in about 200 msStandby after a 1 second idle cooldown by default, and wakes on incoming traffic in millisecondsStop and start by API; a stopped sandbox costs nothing and keeps its disk
Fork and snapshotsSDK snapshots of the filesystem, or with running processes, then new sandboxes from them (experimental)Checkpoint memory and volumes of a running microVM with a pause of a few milliseconds, then start new instances from itFork a running sandbox with its disk; snapshots every minute
SSHNo; commands and files go through the SDKNot yet; commands and files go through the sandbox plugin and CLIYes, into every sandbox
Inbound accessOne exposed HTTPS port at a time, plus an optional TCP proxy to one port; no dedicated IPServices on its load balancer: HTTP on 80, HTTPS on 443, TLS-wrapped TCP on other ports; no public IP per instanceHTTPS URLs for up to 50 ports, token-protected by default; raw TCP; dedicated IPv4 or IPv6
Outbound rulesBlock all outbound traffic, or allow only listed IPs and CIDRs, on self-serve plansNetwork shield filters traffic, Enterprise only, limited accessOpen internet, no provider-side allowlist
Keeping API keys out of the sandboxSecrets are set as environment variables inside the serviceNetwork shield can inject secrets into traffic, Enterprise only, limited accessCredentials proxy for model providers and any HTTPS API, on every plan; switch a credential to another account when credits run out
Desktop and browserNo desktop or browser in the sandbox SDKNone built in; you can run your own headless browser from a Dockerfile60fps Linux desktop with Chromium and computer use
Coding agentsTutorials that run agents through the command API; an MCP server lets agents manage KoyebNone preinstalled; you bring the agent in your own imageSeven agents preinstalled, with a prompt, steer and events API
GPUsRTX 4000 SFF Ada up to H100, H200 and multi-GPU, self-serveNVIDIA GPUs and vGPUs on Enterprise onlyNo
Every feature Battleships tracks (43)
FeatureKoyebUnikraft Cloudbochka
Full VM (own kernel)YesYesYes
Docker insideYesNoYes
Nested virtualizationNoYesYes
RootNot publishedYesYes
SystemdNot publishedNot publishedYes
Desktop GUINoNoYes
BrowserNoNoYes
Computer-use APINoNoYes
SSHNoNoYes
Persistent diskYesYesYes
Pause/resumeYesYesYes
Automatic snapshotsYesYesYes
Fork/cloneYesYesYes
Live fork (no pause)Not publishedYesYes
Memory forkYesYesNo
Custom image (Docker or snapshot)YesYesYes
≥24 h sessionsYesYesYes
Idle auto-stopYesYesNo
Wake on requestYesYesNo
HTTPS preview URLsYesYesYes
Raw TCP inboundYesNot publishedYes
Public IPv4NoNoNo
Egress allowlistYesYesNo
Secret proxyNoYesYes
Secret proxy for any APINoYesYes
Preinstalled agentsYesNoYes
Agent harness APINoNoYes
MCP serverYesNoNo
GPUYesYesNo
WindowsNoNoNo
Arm64NoYesNo
Self-hostingYesYesNo
BYOCYesYesNo
Open sourceNoNoNo
Scoped API keysNot publishedNot publishedYes
Spend limitsNoNot publishedYes
Usage per sandbox (API)NoNoYes
Audit logsYesYesNo
SSOYesNoNo
SOC 2YesYesNo
HIPAANoYesNo
EU data residencyYesYesYes
Zero data retentionNot publishedNot publishedYes

Performance

KoyebNot measured
Unikraft CloudNot measured
bochka26.69 runs/s

There is no comparable CPU measurement for Koyeb or Unikraft Cloud: neither was part of the hpc-sandbox-benchmarks run. bochka did 26.69 runs per second on that Node.js build-and-test loop at 4 vCPU / 8 GB. Koyeb publishes a CPU share of at least 0.25 dedicated vCPU per GB of memory, and Unikraft's under 10 ms cold start is its own figure for start time, not CPU speed.

Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Koyeb and Unikraft Cloud 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.

ScenarioKoyeb, a monthUnikraft Cloud, a monthbochka, 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
$29 · Pro$39 · Hobby$20 · $20/mo
One agent that never stops
4 vCPU / 8 GB, 50 GB disk, running 24/7 all month
$57 · Pro$39 · Hobby$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
$475 · ProCan't run it$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
$329 · ScaleCan't run it$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
$485 · Scale · with limitsCan't run it$2,000 · $2000/mo · with limits

Koyeb: Koyeb bills each instance per second at a fixed price per instance type, and deep sleep costs nothing. Pro costs $29 a month with $10 of usage included and Scale $299 a month with $100 included.

Unikraft Cloud: Unikraft charges a flat monthly fee for a pool of running capacity: free for 2 vCPU / 4 GiB, $39 for 8 vCPU / 8 GiB, $199 for 24 vCPU / 32 GiB, with sleeping instances not counted. It publishes no per-hour rate, so anything bigger is an Enterprise quote.

Unikraft Cloud: Plans start at $20 a month, and the whole fee is usage credit. You pay per second while a sandbox runs, and a stopped sandbox costs nothing and keeps its disk.

Limits in those scenarios

For one agent, both fit: $29 a month on Koyeb against $39 on Unikraft for workdays, and $57 against $39 for an agent that never stops, where bochka is $20 and $26. Koyeb's priced eco-xlarge shape has a 20 GiB disk with no published price for more and guarantees half of each vCPU. Unikraft's Team pool is 8 vCPU and 8 GiB shared by every running instance, so 50 agents, user sandboxes and 1,000 short jobs do not fit any self-serve plan. At 1,000 short jobs at once nothing fits as priced: Koyeb's burstable CPU throttles and bochka's $2,000 plan queues starts.

ScenarioKoyebUnikraft Cloudbochka
One coding agent, workdays
  • disk beyond 20 GiB: price unknown
  • flat pool: the tier is billed whether used or not
  • disk beyond 0 GiB: price unknown
  • egress price not published
None that bite
One agent that never stops
  • disk beyond 20 GiB: price unknown
  • flat pool: the tier is billed whether used or not
  • disk beyond 0 GiB: price unknown
  • egress price not published
None that bite
50 agents in parallelNone that bite
  • no pool tier with 200 vCPU / 400 GiB for 50 VMs
  • no published per-resource rate
None that bite
Sandboxes for your usersNone that bite
  • no pool tier with 600 vCPU / 1,200 GiB for 300 VMs
  • no published per-resource rate
None that bite
1,000 short jobs at once
  • burstable CPU: 50% of each vCPU guaranteed, throttled above that
  • no pool tier with 2,000 vCPU / 4,000 GiB for 1,000 VMs
  • no published per-resource rate
  • max 2,400 starts/day (needs ~6,667)
  • max 600 starts/hour (needs ~1,000)
  • bursts above 90 starts/min are queued (a burst of 333 takes ~4 min to start)

Which one should you use?

Use Koyeb when

you need GPUs or large machines, want a published per-second price that scales to many sandboxes, or need outbound rules without an Enterprise contract.

  • GPUs and big machines, self-serve. Pick Koyeb when an agent or eval needs a GPU or a large CPU machine without talking to sales.
  • Per-second billing that scales up. Koyeb publishes a price per instance type, so 50 agents or hundreds of user sandboxes fit on Pro or Scale.
  • Outbound rules on self-serve plans. Koyeb can block a sandbox's internet or allow only listed IPs, without an Enterprise contract.

Use Unikraft Cloud when

you run many small services or headless browsers that sleep most of the time and must wake in milliseconds, and a flat pool covers your running load.

  • Millisecond starts and wakes. Best for many small services that sleep after a second idle and must answer the next request in milliseconds.
  • Live checkpoints of a running VM. Unikraft can checkpoint memory and volumes of a running microVM and start new instances from it.
  • A free plan and a flat fee. Hobby is free with no card, and Team and Pro are flat monthly pools where sleeping instances do not count.

Where bochka fits

Koyeb and Unikraft Cloud are both built around small microVMs that sleep between requests. If your agents instead work for hours on a real machine, building, running Docker and emulators, and serving previews, bochka gives each one a full VM that keeps its disk, with agents, keys and a desktop built in.

A whole machine, with /dev/kvm

Koyeb does not document nested virtualization and Unikraft keeps it for Enterprise, and neither has SSH. bochka sandboxes are full Ubuntu VMs with root, systemd, Docker and /dev/kvm on every plan, so emulators and VM builds run in place.

Real keys stay outside the sandbox

On Koyeb, secrets are environment variables the agent can read; Unikraft's secret injection is Enterprise only. bochka's credentials proxy keeps keys for model providers and any HTTPS API outside the sandbox on every plan.

Agents, desktop and 50 ports built in

On Koyeb and Unikraft you build the agent harness yourself, add your own browser, and expose one port or go through a load balancer. bochka ships seven coding agents you drive from outside, a 60fps desktop with Chromium, and HTTPS on up to 50 ports.

Use bochka when your agents need a real machine to work in: Docker, /dev/kvm, SSH, a desktop and a browser, coding agents you drive from outside, and fleets of full-size sandboxes without a sales call. Compare it one to one: bochka vs Koyeb and bochka vs Unikraft Cloud.

Questions people ask

Is Koyeb cheaper than Unikraft Cloud?

For one coding agent on workdays, yes: $29 against $39 a month. For one agent that never stops, Unikraft's flat Team pool is lower at $39 against $57. For 50 agents or sandboxes for your users, only Koyeb has a self-serve price, at $475 and $329 a month.

Which is faster, Koyeb or Unikraft Cloud?

Unikraft starts faster: its microVMs cold boot in milliseconds and wake on the next request, while Koyeb's Light Sleep wakes in about 200 ms. Neither has a comparable CPU benchmark; bochka measured 26.69 runs per second.

Can Koyeb or Unikraft Cloud run Docker inside a sandbox?

Both start from Docker images. Unikraft builds your Dockerfile into the VM and documents no container runtime inside it, and Koyeb does not document /dev/kvm. A bochka sandbox is a full Ubuntu VM with Docker, systemd and /dev/kvm.

Do Koyeb and Unikraft Cloud have GPUs?

Koyeb runs GPU instances from an RTX 4000 SFF Ada up to H100 and H200, billed per second. Unikraft offers NVIDIA GPUs only on Enterprise. bochka is CPU only.

Can I SSH into Koyeb or Unikraft Cloud?

Not today. Koyeb sandboxes are driven through its SDK, and Unikraft through its sandbox plugin and CLI, with SSH announced as coming soon. You can SSH into every bochka sandbox.

Which regions do they run in?

Koyeb runs in Frankfurt, Paris, Washington D.C., AWS US East, Singapore and Tokyo. Unikraft runs in Dallas, Frankfurt, San Francisco, Singapore and Washington DC by default. bochka runs in the EU only.

Try bochka

Install the CLI, then run bochka new.

Product preview

More comparisons

Bochka product preview · Pricing, benchmarks and commands are illustrative. Sandbox provisioning is not connected.