Runloop vs Freestyle
Runloop gives each agent a devbox with a desktop, a browser, Dockerfile builds and deploys into your own cloud. Freestyle gives each agent a full KVM VM with nested virtualization that can pause with its memory, fork while running and wake on the next request.
The companies and products
Runloop
Runloop is a US platform of sandboxes, called devboxes, for building, running and testing AI coding agents.
You get Linux devboxes built from Dockerfile-style blueprints, disk snapshots, HTTPS tunnels, agent gateways that hide API keys, and Axons, event streams that drive agents such as Claude Code. Each devbox runs in a micro-VM on Runloop's own bare-metal hypervisor, with a container layer inside. It is built for teams shipping coding agents, plus evaluation and RL fine-tuning work on the Enterprise plan.
- Compliance
- SOC 2 Type 2
- Architectures
- x86_64 and arm64 base blueprints
- Own-cloud deploy
- Deploy to VPC on AWS, GCP and Azure (Enterprise)
- Regions
- Not documented or selectable
- Company
- Runloop AI, Inc.
Freestyle
Freestyle sells full Linux virtual machines for AI agents, built for long running, complex tasks.
Each Freestyle VM is a KVM virtual machine with its own kernel, booted from an Ubuntu base snapshot with systemd, Docker and coding agent CLIs preinstalled. VMs can be paused with their memory, snapshotted while running, forked and woken by the next request, and every VM starts behind a default-deny firewall. It is built for teams that give each agent or each user its own machine, driven from a TypeScript SDK, a CLI or an API.
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. “20th cheapest of 367” means 19 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 workload | Runloop: price rank | Freestyle: price rank | bochka: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month Runloop ranks 20th and Freestyle 241st, since Freestyle's own docs send sustained heavy CPU work elsewhere; bochka ranks 3rd with nested virtualization and faster CPUs. | 20th cheapest of 367 $8,152 a month | 241st of 367, with limits $3,311 a month | 3rd cheapest of 367 $634 a month |
| Always-on AI employees 50 machines 24/7 · 2 vCPU / 4 GB | 32nd cheapest of 366 $10,194 a month | 263rd of 366, with limits $4,195 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 Freestyle ranks 40th and Runloop 44th for short code runs; Freestyle VMs wake on the next request with their memory, while bochka's start limits queue very large bursts. | 44th cheapest of 345 $525 a month | 40th cheapest of 345 $482 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 Freestyle ranks 16th and Runloop 26th; Freestyle wakes a paused user VM on its next request, and bochka ranks 1st with a desktop and hosting in every sandbox. | 26th cheapest of 361 $3,301 a month | 16th cheapest of 361 $1,358 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 Runloop ranks 4th: it starts large waves without published start limits and sells RL fine-tuning on Enterprise, while Freestyle can boot copies from a running VM's memory snapshot. | 4th cheapest of 360 $15,922 a month | 107th of 360, with limits $6,600 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 | 81st cheapest of 364 $2,562 a month | 53rd cheapest of 364 $1,046 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 Docker works inside all three; Freestyle's docs say CPU-heavy jobs are better served elsewhere, and bochka ranks 4th on CPUs about three times faster than either. | 121st cheapest of 377 $1,554 a month | 168th of 377, with limits $625 a month | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB Freestyle has no default session cap, while Runloop needs an idle policy in place of its 48-hour lifetime setting to run all month. | 113th cheapest of 368 $410 a month | 98th cheapest of 368 $151 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 Runloop ships a desktop and a browser your agent can control; on Freestyle you install the desktop, VNC and input tools yourself, and bochka streams its desktop at 60fps. | 39th cheapest of 369 $2,306 a month | 234th of 369, with limits $940 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 Runloop has a browser ready; Freestyle has a guide for installing Chromium and a display yourself; bochka has Chromium in every sandbox. | 40th cheapest of 367 $1,153 a month | 257th of 367, with limits $482 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 | 68th cheapest of 346 $781 a month | 278th of 346, with limits $482 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 | 266th of 338, with limits $15,611 a month | 183rd of 338, with limits $6,560 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 | 10th cheapest of 360 $770 a month | 272nd of 360, with limits $482 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 | Runloop | Freestyle | bochka |
|---|---|---|---|
| Isolation | Micro-VM on a custom bare-metal hypervisor, plus a container layer | Full KVM VM with its own kernel on bare metal servers | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts |
| CPU benchmark (4 vCPU / 8 GB) | 8.29 runs/s | 9.64 runs/s | 26.69 runs/s |
| Docker and nested virtualization | Docker as root on the dnd blueprints; nested virtualization not documented | Docker from boot, systemd as pid 1, full KVM support | Docker, root, systemd and /dev/kvm for Android emulators and VMs |
| CPU architecture | x86_64 and arm64 | x86_64 | x86_64 only |
| Images | Blueprints built from Dockerfiles, plus disk snapshots | Ubuntu base snapshot with coding agent CLIs, plus your own snapshots | Templates from named snapshots, no Dockerfile builds |
| Pause and resume | Suspend keeps the disk (Pro plan); shutdown ends the devbox | Pause saves memory and disk; the same processes resume | Disk saved every minute and on stop, on every plan; resume boots again |
| Fork | Disk snapshots that new devboxes boot from | Clone a running VM without pausing it; snapshots capture memory and disk | Fork a running sandbox with its disk |
| Wake on request | Yes, an HTTP request to the tunnel wakes a suspended devbox (Pro) | Yes, a VM paused by idle timeout resumes on the next traffic | No; a stopped sandbox is started by API |
| Long runs | Lifetime 1 hour by default, 48 hours max; an idle policy replaces it | No default limit; run limits are optional, and Free allowances are hard stops | No session cap on paid plans; default TTL 1 hour, changeable |
| Desktop, browser and computer use | Desktop and browser your agent can control | Guides to install GNOME or Xvfb, VNC and Chromium yourself | Linux desktop streamed at 60fps, Chromium and computer use built in |
| Coding agents | Claude Code, Codex, OpenCode, Gemini CLI, DeepAgents, driven through Axons and Broker | claude, codex, opencode and openclaw preinstalled, driven through exec or a terminal | Seven agents preinstalled, with a prompt, steer and events API |
| Inbound access | One HTTPS tunnel per devbox; SSH through a TLS proxy; no public IP | HTTPS on style.dev names or your own domain, forward auth, other public protocols | HTTPS URLs for up to 50 ports, token-protected by default, raw TCP, dedicated IPv6 or IPv4 |
| Outbound rules | Hostname allowlist with wildcards, or block all | Default-deny firewall with allow rules by IP, VM, VPC or exact domain | Open internet, no provider-side allowlist |
| Where it runs | Regions not documented; Deploy to VPC on AWS, GCP or Azure (Enterprise) | Not listed; the docs name a San Jose, US data center | EU only (Germany, Finland, France), EU data residency |
Every feature Battleships tracks (43)
| Feature | Runloop | Freestyle | bochka |
|---|---|---|---|
| Full VM (own kernel) | Yes | Yes | Yes |
| Docker inside | Yes | Yes | Yes |
| Nested virtualization | No | Yes | Yes |
| Root | Yes | Yes | Yes |
| Systemd | Not published | Yes | Yes |
| Desktop GUI | Yes | No | Yes |
| Browser | Yes | No | Yes |
| Computer-use API | Yes | No | Yes |
| SSH | Yes | Yes | Yes |
| Persistent disk | Yes | Yes | Yes |
| Pause/resume | Yes | Yes | Yes |
| Automatic snapshots | Yes | Yes | Yes |
| Fork/clone | Yes | Yes | Yes |
| Live fork (no pause) | Yes | Yes | Yes |
| Memory fork | No | Yes | No |
| Custom image (Docker or snapshot) | Yes | Yes | Yes |
| ≥24 h sessions | Yes | Yes | Yes |
| Idle auto-stop | Yes | Yes | No |
| Wake on request | Yes | Yes | No |
| HTTPS preview URLs | Yes | Yes | Yes |
| Raw TCP inbound | No | Yes | Yes |
| Public IPv4 | No | No | No |
| Egress allowlist | Yes | Yes | No |
| Secret proxy | Yes | Yes | Yes |
| Secret proxy for any API | Yes | Yes | Yes |
| Preinstalled agents | Yes | Yes | Yes |
| Agent harness API | Yes | No | Yes |
| MCP server | Yes | No | No |
| GPU | No | Yes | No |
| Windows | No | No | No |
| Arm64 | Yes | No | No |
| Self-hosting | No | No | No |
| BYOC | Yes | No | No |
| Open source | No | No | No |
| Scoped API keys | Yes | Yes | Yes |
| Spend limits | Not published | Not published | Yes |
| Usage per sandbox (API) | No | No | Yes |
| Audit logs | Not published | Yes | No |
| SSO | Yes | Yes | No |
| SOC 2 | Yes | Not published | No |
| HIPAA | Not published | Not published | No |
| EU data residency | No | No | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
On the hpc-sandbox-benchmarks Node.js build-and-test loop at 4 vCPU / 8 GB, Freestyle did 9.64 runs a second and Runloop 8.29, so Freestyle was about 16 percent ahead. bochka did 26.69, about 3.2 times Runloop and 2.8 times Freestyle. The test measures CPU work only, not start time, where Freestyle advertises about 65 ms.
Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite.
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 | Runloop, a month | Freestyle, 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 | $113 · Basic | $27 · Free | $20 · $20/mo |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $429 · Basic | $159 · Free | $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 | $5,268 · Basic | $2,139 · Pro | $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 | $1,441 · Basic | $581 · Pro | $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 | $3,184 · Basic | $1,305 · Pro · with limits | $2,000 · $2000/mo · with limits |
Runloop: Runloop bills per second for the CPU and memory you allocate while a devbox is starting, running, suspending or resuming, and bills its disk for the devbox's whole life. Basic has no plan fee; Pro adds $250 a month that is not usage credit and unlocks suspend and resume.
Freestyle: Freestyle bills per second for the vCPU, RAM and disk allocated to a VM, busy or idle, after monthly allowances of 200 vCPU-hours, 400 GiB-hours of RAM and 60,000 GiB-hours of storage. On Free those are hard stops; Hobby and Pro set a $50 or $500 monthly minimum that counts as usage.
Limits in those scenarios
Runloop's lifetime setting tops out at 48 hours unless you use an idle policy, suspend needs Pro, and it publishes no egress price. Freestyle has no idle timeout by default, so a VM bills until you pause it, and on Free an agent pauses once the monthly allowances run out. For 1,000 short jobs at once, Runloop fits and Freestyle does not, because Pro allows 400 concurrent VMs. bochka queues that burst too: even the $2,000 plan starts at most 90 sandboxes a minute.
| Scenario | Runloop | Freestyle | bochka |
|---|---|---|---|
| One coding agent, workdays |
| 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 |
| Sandboxes for your users |
| None that bite | None that bite |
| 1,000 short jobs at once |
|
|
|
Which one should you use?
Use Runloop when
your agents need a ready desktop and browser, Dockerfile builds or arm64, when you launch very large bursts of short jobs, or when devboxes must run inside your own AWS, GCP or Azure account.
- Desktop and browser ready. For computer-use and browser agents, Runloop ships a desktop and browser your agent can control, which Freestyle leaves you to install.
- Run it in your own cloud. On the Enterprise plan, Runloop can run devboxes inside your own AWS, GCP or Azure account.
- Dockerfiles, arm64 and hostname rules. Runloop builds images from Dockerfiles, offers arm64 machines and can limit a devbox to hostnames you list, with wildcards.
Use Freestyle when
your VMs sleep between requests and must resume with their memory, when you fork running VMs, or when you need nested virtualization and a default-deny firewall per VM.
- Memory pause, live fork and wake. Useful for VMs that sleep between requests: they resume the same processes, fork while running and wake on the next traffic.
- A full machine with KVM. Each VM has its own kernel, systemd and full KVM support, so emulators and VMs inside run, which Runloop does not document.
- Default-deny network. Every VM starts with no network access, and you allow exactly the IPs, VMs, VPCs or domains it may reach.
Where bochka fits
Look at bochka when your agents spend hours on installs, builds, tests, Docker and emulators. It gives each one a full VM on CPUs about three times faster than either, keeps the disk on every plan, and adds a 60fps desktop and hosting on 50 ports.
About three times the CPU speed
On the same benchmark at 4 vCPU / 8 GB, bochka did 26.69 runs a second, Runloop 8.29 and Freestyle 9.64. Every install, build and test an agent waits on takes about three times as long on either.
Files kept, stops are free
A Runloop devbox is gone once it shuts down unless you pay for Pro's suspend or write snapshot code. A Freestyle VM bills until you pause it, then bills its storage. bochka saves the disk every minute and a stop costs nothing.
Data stays in the EU
Runloop does not document its regions, and running in your own cloud needs the Enterprise plan. Freestyle names only a San Jose, US data center. bochka runs only in Germany, Finland and France.
Use bochka when your agents do real work for hours: installs, builds, tests, Docker and emulators on CPUs about three times faster, with files kept on every plan, a 60fps desktop and data in the EU. Compare it one to one: bochka vs Runloop and bochka vs Freestyle.
Questions people ask
Is Runloop cheaper than Freestyle?
Not in most of our scenarios. One agent running all month is $429 on Runloop against $159 on Freestyle, and 50 agents in parallel are $5,268 against $2,139. For 1,000 short jobs at once, only Runloop fits, at $3,184 a month, because Freestyle Pro caps at 400 concurrent VMs.
Which is faster, Runloop or Freestyle?
On the hpc-sandbox-benchmarks CPU test at 4 vCPU / 8 GB, Freestyle did 9.64 runs a second and Runloop 8.29. bochka did 26.69 on the same test. Start time was not part of this test.
Can Runloop and Freestyle run Docker and Android emulators?
Both run Docker: Runloop on its Docker-in-Docker blueprints as root, Freestyle from boot with systemd. Freestyle has full KVM support for emulators and VMs inside, while Runloop does not document nested virtualization. bochka exposes /dev/kvm in every sandbox.
Which is better for computer-use and browser agents?
Runloop ships a desktop and a browser your agent can control. On Freestyle you install a display, VNC and Chromium yourself from its guides. bochka streams a Linux desktop at 60fps with Chromium and computer use built in.
Can I pause a sandbox and keep its state?
Freestyle pauses a VM with its memory, so the same processes resume, and a paused VM bills only for storage. Runloop keeps the disk through suspend on the Pro plan, or through disk snapshots you take. bochka saves the disk every minute and on stop, and resuming boots the machine again.
Can I limit which websites a sandbox can reach?
Yes on both. Runloop allows only the hostnames you list, with wildcards, or blocks all traffic. Freestyle starts every VM behind a default-deny firewall with allow rules by IP, VM, VPC or exact domain. bochka has no provider-side allowlist, so you filter inside the VM.
Try bochka
Install the CLI, then run bochka new.
Product preview