bochka vs Baseten

Baseten is an inference cloud: you deploy models on its GPUs, call hosted open models, and train, with agent sandboxes in private preview. bochka gives each agent a full VM with root, Docker, a desktop and coding agents built in, and its disk is kept with snapshots every minute.

Where bochka stands out

A full VM with root and Docker

On bochka every sandbox has its own kernel, with root, systemd, Docker and /dev/kvm ready. Baseten runs workloads as Kubernetes containers, and its model containers run as the non-root app user. It does not say what isolates its preview sandboxes.

A disk that stays, with snapshots and fork

A bochka sandbox keeps its disk, snapshotted every minute and on stop, and a stopped sandbox costs nothing. You can fork a running sandbox, so one set-up machine becomes many. Baseten replicas start fresh from the image, and its preview sandboxes are deleted with their files after 7 days by default.

Coding agents and a desktop built in

bochka ships Claude Code, Codex, OpenCode and other agents inside each sandbox, and you drive them from outside with a prompt, steer and events API. Every sandbox also has a 60fps desktop with Chromium and computer use. Baseten's coding-agent tools point an agent on your laptop at its hosted models; nothing runs the agent inside a Baseten machine for you.

The companies and products

bochka

bochka.xyz runs sandboxes for AI agents: each one is a full Linux VM with its own kernel.

You start a machine with one command or one API call, then SSH in, run Docker, open a desktop, or let a built-in agent (Claude Code, Codex, OpenCode and others) work in it. The disk stays between sessions, and a stopped sandbox costs nothing.

Baseten

Baseten is an inference cloud: it runs AI models on GPUs for production apps, and sells hosted open models and training.

You package a model with Truss, its open-source format, or bring a Docker image, and Baseten runs it as replicas on Kubernetes that scale up with traffic and down to zero. It also sells Model APIs (open models priced per token) and training jobs on the same GPUs. Sandboxes, isolated environments where an agent runs commands and works with files, are in private preview; this page compares bochka with both the CPU instances and the sandbox preview.

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 367” means 2 of the other 366 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 workloadbochka: price rankBaseten: price rank
Software factory
100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month
A Baseten container runs as a non-root user with no documented Docker inside, so the installs, databases and test stacks a coding agent sets up fit better on a bochka VM.
3rd cheapest of 367
$634 a month
216th of 367, with limits
$2,619 a month
Always-on AI employees
50 machines 24/7 · 2 vCPU / 4 GB
Baseten's preview sandboxes keep files on standby but are deleted after 7 days by default, so an assistant that lives for months needs bochka's kept disk or its own storage outside.
5th cheapest of 366
$657 a month
242nd of 366, with limits
$3,258 a month
Code interpreter bursts
100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month
Baseten bills per minute with no plan fee, but each burst also pays for cold start and, by default, 15 idle minutes before a replica scales down.
186th of 345, with limits
$2,000 a month
319th of 345, with limits
$1,856 a month
Sandboxes for your users
300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month
Baseten's sandbox preview runs up to 10 sandboxes per organization at once by default, so 300 sandboxes for your users means asking support first.
Cheapest of 361
$209 a month
277th of 361, with limits
$1,868 a month
RL rollouts
1,000 at once · 2 vCPU / 4 GB · 1,000,000 sessions of 3 min a month
34th of 360, with limits
$2,000 a month
322nd of 360, with limits
$31,140 a month
Agent evals
250 at once · 4 vCPU / 8 GB · 15,000 sessions of 20 min a month
10th cheapest of 364
$200 a month
297th of 364, with limits
$1,609 a month
CI runners
40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month
A CI job needs Docker and root for most builds; Baseten's model containers run as the non-root app user, while bochka gives root and Docker on every VM.
4th cheapest of 377
$86 a month
320th of 377, with limits
$1,119 a month
24/7 dev boxes
1 machine 24/7 · 4 vCPU / 8 GB
18th cheapest of 368
$26 a month
170th of 368, with limits
$130 a month
Computer-use agents
50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month
Baseten has no desktop or computer-use API; bochka streams a 60fps desktop with Chromium and computer use from every sandbox.
6th cheapest of 369
$200 a month
294th of 369, with limits
$1,799 a month
Browser-use agents
50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month
7th cheapest of 367
$200 a month
318th of 367, with limits
$1,194 a month
Scraping & bots (startup scale)
50 at once · 1 vCPU / 2 GB · 100,000 sessions of 3 min a month
6th cheapest of 346
$90 a month
220th of 346, with limits
$183 a month
Mass scraping & bots (undetectable)
1,000 at once · 1 vCPU / 2 GB · 3,000,000 sessions of 2 min a month
71st of 338, with limits
$1,800 a month
126th of 338, with limits
$3,654 a month
Parallel red teaming
200 at once · 2 vCPU / 4 GB · 5,000 sessions of 30 min a month
2nd cheapest of 360
$200 a month
254th of 360, with limits
$381 a month
GPU eval jobs
10 at once · 8 vCPU / 32 GB · 500 sessions of 30 min a month
Only Baseten fits: it rents Nvidia GPUs from T4 to B200, up to 8 per instance, and bochka has no GPUs.
Can't run it24th cheapest of 98
$1,625 a month
macOS agents
5 at once · 4 vCPU / 8 GB · 1,000 sessions of 20 min a month
Can't run itCan't run it

Key features

FeaturebochkaBaseten
Kind of productSandboxes for AI agents: VMs with agents, desktop and hosting readyInference cloud for serving and training models; agent sandboxes in private preview
IsolationEvery sandbox is a full VM with its own kernelKubernetes containers in a dedicated namespace per customer; sandbox isolation is not documented
Root, Docker and nested virtualizationDocker, root, systemd and /dev/kvm on every machineContainers run as the non-root app user; Docker inside and /dev/kvm are not documented
Getting a sandboxOn every plan, self-serve, 100 to 2,000 at once by planSandboxes in private preview, access on request, 10 per organization at once by default
Files after a stopSnapshots every minute and on stop; a stopped sandbox costs nothing and keeps its diskModel replicas start fresh from the image; preview sandboxes keep files on standby but are deleted with their data after 7 days by default
ForkFork a running sandbox into manyNo fork or clone; new replicas cold-start from the image
Scale to zero and wake on requestNo wake on request; you start a stopped sandbox through the APIDeployments scale to zero and start on the next request; standby sandboxes resume on the next request
GPUsNoneNvidia T4 up to B200, 1 to 8 per instance, multi-node over InfiniBand
Desktop and computer use60fps desktop and Chromium, computer use and browser control, embeddable streamNo desktop or computer-use API; sandboxes run commands and file operations
Coding agentsClaude Code, Codex, OpenCode and more preinstalled, with a prompt, steer and events APIBaseten Switch routes Claude Code or Codex on your laptop to its Model APIs; an agent drives a sandbox through the CLI or MCP
Reaching the sandboxHTTPS URLs for up to 50 ports, token-protected; raw TCP; dedicated IPv6 or IPv4HTTPS API endpoint per deployment; sandbox ports through a /port/ route on its API server; SSH once enabled for your organization
Outbound networkOpen internet on every plan; no provider-side allowlistTCP ports 443 and 80 by default; per-deployment IP and domain allowlists once enabled for your organization
Keeping keys out of the sandboxAI credentials proxy for model providers and any HTTPS API you registerSecrets are passed into the model as arguments or files under /secrets
Regions and hostingEU only: Germany, Finland, FranceUS and EU for GPU deployments; self-hosted or hybrid in your own cloud account on Enterprise
Compliance and transparencySOC 2 is in progress. We're open about where we stand: live status and data retention policy.SOC 2
Every feature Battleships tracks (43)
FeaturebochkaBaseten
Full VM (own kernel)YesNo
Docker insideYesNo
Nested virtualizationYesNo
RootYesNot published
SystemdYesNot published
Desktop GUIYesNo
BrowserYesNo
Computer-use APIYesNo
SSHYesYes
Persistent diskYesNo
Pause/resumeYesNo
Automatic snapshotsYesNo
Fork/cloneYesNo
Live fork (no pause)YesNo
Memory forkNoNo
Custom image (Docker or snapshot)YesYes
≥24 h sessionsYesYes
Idle auto-stopNoYes
Wake on requestNoYes
HTTPS preview URLsYesYes
Raw TCP inboundYesNot published
Public IPv4NoNo
Egress allowlistNoYes
Secret proxyYesNo
Secret proxy for any APIYesNo
Preinstalled agentsYesNo
Agent harness APIYesNo
MCP serverNoYes
GPUNoYes
WindowsNoNo
Arm64NoNo
Self-hostingNoYes
BYOCNoYes
Open sourceNoNo
Scoped API keysYesNot published
Spend limitsYesNo
Usage per sandbox (API)YesYes
Audit logsNoNot published
SSONoYes
SOC 2NoYes
HIPAANoYes
EU data residencyYesYes
Zero data retentionYesNot published

Performance

bochka26.69 runs/s
BasetenNot measured

There is no comparable measurement: Baseten was not part of 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, on dedicated AMD Ryzen 9 9950X (Zen 5) hosts. Baseten publishes no CPU benchmark for its CPU instances or its sandboxes.

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

Scenariobochka, a monthBaseten, 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
$20 · $20/mo$34 · Basic · with limits
One agent that never stops
4 vCPU / 8 GB, 50 GB disk, running 24/7 all month
$26 · $20/mo$136 · Basic · with limits
50 agents in parallel
50 machines of 4 vCPU / 8 GB at once, 8-hour sessions, 1,100 sessions a month, Docker inside
$317 · $20/mo × 3 seats$1,701 · Basic · with limits
Sandboxes for your users
2 vCPU / 4 GB, 30,000 sessions of 10 minutes a month, up to 300 at once
$200 · $100/mo × 2 seats$1,246 · Basic · with limits
1,000 short jobs at once
2 vCPU / 4 GB, 1,000 at once, 3 minutes each, 200,000 jobs a month
$2,000 · $2000/mo · with limits$6,228 · Basic · with limits

bochka: 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.

Baseten: The scenarios price Baseten's CPU-only instances, billed per minute with partial minutes rounded up, from image build and cold start until the replica stops; a 4 vCPU / 16 GiB instance is $0.00346 a minute. There is no plan fee on Basic, and sandbox pricing for the private preview is not published.

Limits in those scenarios

Baseten's CPU instances are model containers with no persistent disk, so in every scenario files are lost when a replica stops or scales to zero, and the table marks them as not fitting. Its preview sandboxes keep files on standby, but run at most 10 per organization by default and are deleted after 7 days unless you set another policy. A monthly budget only sends alerts for dedicated deployments; it never stops them. On bochka the limit is a sandbox count by plan plus starts per minute, so the 1,000-job burst is queued and needs more starts per day than the $2,000 plan allows.

ScenariobochkaBaseten
One coding agent, workdaysNone that bite
  • adjacent product, not a like-for-like sandbox
  • missing persistent disk
  • different kind of product: app platform
  • no persistent disk: files lost when it stops or sleeps
One agent that never stopsNone that bite
  • adjacent product, not a like-for-like sandbox
  • missing persistent disk
  • different kind of product: app platform
  • no persistent disk: files lost when it stops or sleeps
50 agents in parallelNone that bite
  • adjacent product, not a like-for-like sandbox
  • missing persistent disk, Docker inside
  • different kind of product: app platform
  • no persistent disk: files lost when it stops or sleeps
Sandboxes for your usersNone that bite
  • adjacent product, not a like-for-like sandbox
  • different kind of product: app platform
  • disk beyond 0 GiB: price unknown
  • egress price not published
1,000 short jobs at once
  • 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)
  • adjacent product, not a like-for-like sandbox
  • different kind of product: app platform
  • disk beyond 0 GiB: price unknown
  • egress price not published

Which one should you use?

Use Baseten when

you serve or train models on GPUs, want deployments that scale to zero and wake on request, or must run in the US or in your own cloud account.

  • GPUs for serving and training models. Useful if your product serves or trains models: Baseten runs Nvidia GPUs from T4 to B200, up to 8 per instance.
  • Scale to zero, wake on request. Useful for spiky traffic: Baseten deployments scale to zero when idle and start again on the next request.
  • US region, your own cloud, egress allowlists. Useful if you need the US, your own cloud account, or per-deployment outbound allowlists set by the provider.

Use bochka when

you run agents that build and test software: full VMs with root and Docker, coding agents and a desktop built in, a disk that is snapshotted every minute, and forks of a running sandbox.

  • A full VM with root and Docker. Coding agents install packages, start databases with Docker and run emulators. In a non-root container most of that fails, and a shared kernel is a way out for code an agent wrote.
  • A disk that stays, with snapshots and fork. Agents work across days and branch their work. On Baseten you copy results out before the deadline and rebuild the environment by hand, because nothing clones a running machine.
  • Coding agents and a desktop built in. Without these you write and run the agent loop, the browser and any desktop stream yourself. bochka's credentials proxy also keeps real AI keys off the machine, where Baseten passes secrets into the container.

Questions people ask

Is bochka cheaper than Baseten?

In every scenario we priced, using Baseten's CPU instances: one coding agent on workdays comes to $20 a month on bochka and $34 on Baseten, and one agent running all month is $26 versus $136. 50 agents in parallel are $317 versus $1,701, and 300 sandboxes for your users are $200 versus $1,246. For 1,000 short jobs at once bochka comes to $2,000 and Baseten to $6,228, and neither fits without higher limits.

Does Baseten have sandboxes for AI agents?

Yes, in private preview: you ask Baseten for access, and an organization can run up to 10 at once by default. A sandbox runs commands and file operations from an image, goes on standby when idle, and is deleted with its files after 7 days by default. Pricing for it is not published yet.

Does bochka have GPUs like Baseten?

No. bochka runs Linux VMs on dedicated AMD Ryzen 9 9950X hosts and has no GPUs. If your product serves or trains models, run that part on Baseten and let your agents work on bochka.

Can I run Docker inside Baseten?

Baseten does not document Docker inside its containers, and its model containers run as the non-root app user. You can bring your own Docker image for Baseten to run as a model server. Every bochka sandbox has root and Docker.

Where does my data run?

bochka runs only in the EU (Germany, Finland and France), with EU data residency and a zero data retention option. Baseten lets GPU deployments pick a US or EU region, its shared CPU instances cannot pick one, and Enterprise customers can self-host in their own cloud.

Is bochka SOC 2 compliant?

SOC 2 is in progress. We're open about where we stand: live status at status.bochka.xyz and our data retention policy at docs.bochka.xyz/data-retention.

Start a sandbox

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.