bochka vs Firecrawl
Firecrawl is a web data API: search, scrape and crawl, plus Interact, a cloud browser session of up to one hour that you drive with Playwright code or a plain language prompt. bochka gives each agent a full Linux VM with root, Docker and a disk that persists, with a 60fps desktop, Chromium and coding agents you drive from outside.
Where bochka stands out
A whole machine, not only a browser
Every bochka sandbox is a full VM with root, SSH, systemd, Docker and nested virtualization, on dedicated AMD Ryzen 9 9950X hosts, with Chromium on a desktop inside it. A Firecrawl session is a container built around one Chromium, where you can run Playwright, Python, Node or bash against that browser.
Runs as long as the task, keeps its disk
A bochka sandbox has no session cap on paid plans, and its disk persists with snapshots every minute and on stop, so a stopped sandbox costs nothing and comes back with its files. A Firecrawl session ends after one hour at most, closes after 5 idle minutes by default, and loses its files; only cookies and localStorage can be saved in a profile.
Coding agents you drive from outside, keys kept outside
bochka ships Claude Code, Codex, OpenCode and other agents in each sandbox, and you prompt, steer and follow them through one API with an event stream. Firecrawl's prompt mode runs its own browser agent and returns one answer per call. bochka's credentials proxy keeps real API keys outside the sandbox for model providers and any HTTPS API.
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.
- Isolation
- Full VM per sandbox, own kernel
- Regions
- EU: Germany, Finland, France
Firecrawl
Firecrawl calls itself the web data API for AI agents: one API to search, scrape and interact with the web and turn pages into clean Markdown or structured data.
Its main products turn web pages into Markdown or JSON per call. Interact and the Browser Sandbox add a cloud Chromium session with Playwright and agent-browser preinstalled, which you drive with code, bash commands or a prompt to Firecrawl's own browser agent, and watch through a live view. It is a browser and web data product, not a general sandbox: the session's files are thrown away when it ends, so this page compares where the two overlap, which is agents that browse.
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 workload | bochka: price rank | Firecrawl: price rank |
|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month A coding agent needs a shell, Docker and a disk that stays, and a Firecrawl session is a browser container that ends within an hour, so builds and tests fit bochka. | 3rd cheapest of 367 $634 a month | 94th of 367, with limits $846 a month |
| Always-on AI employees 50 machines 24/7 · 2 vCPU / 4 GB An assistant that lives on its machine all month hits Firecrawl's one-hour session cap and keeps only a browser profile between sessions; bochka has no session cap on paid plans. | 5th cheapest of 366 $657 a month | 260th of 366, with limits $3,779 a month |
| Code interpreter bursts 100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month | 186th of 345, with limits $2,000 a month | 296th of 345, with limits $749 a month |
| Sandboxes for your users 300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month Firecrawl's interactive live view lets your users click inside a browser, while bochka gives each user a whole machine with hosting on its own HTTPS URLs. | Cheapest of 361 $209 a month | 243rd of 361, with limits $984 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 | 267th of 360, with limits $5,716 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 | 268th of 364, with limits $749 a month |
| CI runners 40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month | 4th cheapest of 377 $86 a month | 270th of 377, with limits $399 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB A dev box has to keep its files and processes, and Firecrawl sessions start clean each time, so this fits bochka. | 18th cheapest of 368 $26 a month | 247th of 368, with limits $82 a month |
| Computer-use agents 50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month Firecrawl's agent works on web pages through the DOM, while bochka streams a 60fps Linux desktop where an agent can use any app, not only a browser. | 6th cheapest of 369 $200 a month | 155th of 369, with limits $399 a month |
| Browser-use agents 50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month Both fit: Firecrawl gives a managed Chromium you drive with a prompt or Playwright, and bochka gives Chromium on a full VM where the same agent can also run code and keep files. | 7th cheapest of 367 $200 a month | 22nd cheapest of 367 $399 a month |
| Scraping & bots (startup scale) 50 at once · 1 vCPU / 2 GB · 100,000 sessions of 3 min a month Both fit at startup scale; Firecrawl's scrape API returns clean Markdown for a credit a page, so many pages need no browser session at all. | 6th cheapest of 346 $90 a month | 59th cheapest of 346 $569 a month |
| Mass scraping & bots (undetectable) 1,000 at once · 1 vCPU / 2 GB · 3,000,000 sessions of 2 min a month Firecrawl escalates to enhanced proxies on its scrape API when a site blocks it, at no extra credit, while bochka runs Chromium on datacenter IPs. | 71st of 338, with limits $1,800 a month | 242nd of 338, with limits $11,449 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 | 302nd of 360, with limits $749 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 |
| 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 |
Key features
| Feature | bochka | Firecrawl |
|---|---|---|
| Kind of product | A full Linux VM per sandbox, with a desktop and Chromium inside | Web data API (search, scrape, crawl) plus managed browser sessions |
| Isolation | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts | Ephemeral cloud container per browser session |
| What the agent can touch | The whole machine: root, SSH, any package, any process | Python, Node and bash run in the sandbox against its browser; no SSH |
| Docker and nested virtualization | Docker, systemd and /dev/kvm on every machine | Not documented; the sandbox is a fixed Chromium and Playwright image |
| Session length | No cap on paid plans; you set the time to live | 10 minutes by default, 1 hour at most, 5 minutes idle by default |
| Files after a session | The disk persists, with snapshots every minute and on stop; a stopped sandbox costs nothing | Files are lost when the session ends; a named profile keeps cookies and localStorage |
| Fork and pause | Stop and start with the disk kept; fork a running sandbox | No pause or fork; a closed session ID cannot be reused |
| Browser and computer use | 60fps desktop and Chromium, computer use on any app, embeddable stream | Chromium with CDP, a live view and an interactive live view users can click in |
| Web data without a browser | You run your own scraper or call an API from the VM | Scrape, crawl and search to Markdown or JSON, ads blocked by default, enhanced proxies on 401, 403 and 429 |
| Agents | Claude Code, Codex, OpenCode and more preinstalled, with a prompt, steer and events API | Its own browser agent from a prompt, answer returned per call; MCP server and skills for outside coding agents |
| Reaching the machine | HTTPS URLs for up to 50 ports, token-protected; raw TCP; own IP | CDP WebSocket and live view links only; no ports to host on |
| Keeping keys out of the sandbox | AI credentials proxy for model providers and any HTTPS API; switch a credential to another account when credits run out | Not offered; you call Firecrawl with your own API key |
| Where it browses from | EU only (Germany, Finland and France) | US by default, or any country you name per session |
| Outbound rules | Open internet, no provider-side allowlist | Threat Protection allow and block lists by domain, on Enterprise |
| Compliance and transparency | SOC 2 is in progress. We're open about where we stand: live status and data retention policy. | SOC 2 |
Every feature Battleships tracks (43)
| Feature | bochka | Firecrawl |
|---|---|---|
| Full VM (own kernel) | Yes | No |
| Docker inside | Yes | No |
| Nested virtualization | Yes | No |
| Root | Yes | Not published |
| Systemd | Yes | Not published |
| Desktop GUI | Yes | No |
| Browser | Yes | Yes |
| Computer-use API | Yes | No |
| SSH | Yes | No |
| Persistent disk | Yes | No |
| Pause/resume | Yes | No |
| Automatic snapshots | Yes | No |
| Fork/clone | Yes | No |
| Live fork (no pause) | Yes | No |
| Memory fork | No | No |
| Custom image (Docker or snapshot) | Yes | Not published |
| ≥24 h sessions | Yes | No |
| Idle auto-stop | No | Yes |
| Wake on request | No | No |
| HTTPS preview URLs | Yes | No |
| Raw TCP inbound | Yes | Not published |
| Public IPv4 | No | No |
| Egress allowlist | No | Yes |
| Secret proxy | Yes | No |
| Secret proxy for any API | Yes | No |
| Preinstalled agents | Yes | No |
| Agent harness API | Yes | No |
| MCP server | No | Yes |
| GPU | No | No |
| Windows | No | No |
| Arm64 | No | No |
| Self-hosting | No | No |
| BYOC | No | No |
| Open source | No | No |
| Scoped API keys | Yes | Not published |
| Spend limits | Yes | Not published |
| Usage per sandbox (API) | Yes | No |
| Audit logs | No | Not published |
| SSO | No | Yes |
| SOC 2 | No | Yes |
| HIPAA | No | No |
| EU data residency | Yes | No |
| Zero data retention | Yes | Yes |
Performance
There is no comparable measurement. Firecrawl was not in StarSling's public CPU benchmark, and it does not publish the vCPU or RAM behind a browser session, so there is no number to set against bochka's 26.69 runs per second at 4 vCPU / 8 GB.
Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Firecrawl 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.
| Scenario | bochka, a month | Firecrawl, 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 | $19 · Hobby · with limits |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $26 · $20/mo | $82 · Hobby · 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 | $399 · Growth · 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 | $749 · Scale · 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 | $942 · Scale · 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.
Firecrawl: Plans sell a monthly pool of credits shared with scraping and search: 5,000 on Hobby ($19), 100,000 on Standard ($99), 500,000 on Growth ($399) and 1,000,000 on Scale ($749). A browser session costs 2 credits a minute with code only and 7 with a prompt, prorated by the second with a one-minute minimum, and extra credits come in $5 top-ups. Zero Data Retention is Enterprise only and adds 2 credits a minute to a session.
Limits in those scenarios
The Firecrawl prices in the table are for its browser session, with no published size and no disk that stays, so none of them is a 4 vCPU / 8 GB machine. The one-hour session cap is why no scenario in the table fits on Firecrawl: a workday or always-on agent has to restart its browser every hour, and the fleet scenario also needs Docker. Concurrency is the other limit: the plan table lists 50 sessions at once on Growth and 100 on Scale, but Firecrawl's browser docs cap every plan at 20 for the launch period, so the real cap on those plans may be 20. On bochka, the 1,000-job burst is the one that does not fit: bursts above 90 starts a minute are queued, and it needs more starts per day than the top plan allows.
| Scenario | bochka | Firecrawl |
|---|---|---|
| One coding agent, workdays | None that bite |
|
| One agent that never stops | None that bite |
|
| 50 agents in parallel | None that bite |
|
| Sandboxes for your users | None that bite |
|
| 1,000 short jobs at once |
|
|
Which one should you use?
Use Firecrawl when
your agent mostly needs web data: pages turned into Markdown or JSON, a short browser session for clicks behind a login, a browser agent you prompt in plain language, or browsing from a chosen country.
- Web data without starting a browser. Useful when the job is mostly reading pages: scrape, crawl and search return clean Markdown or JSON per call.
- A browser agent you prompt in plain language. Useful for clicks and forms without writing selectors: send a prompt, get the agent's answer back, with a live view to watch.
- Browse from any country. Useful when target sites show different content by country: each session can browse from a country you pick.
Use bochka when
your agent browses and also works: installs, builds, Docker and dev servers on a full VM that keeps its disk and runs as long as the task takes, with coding agents and a key proxy built in.
- A whole machine, not only a browser. An agent that reads a page and then has to clone a repo, run docker compose or start a dev server needs a second provider next to Firecrawl, and has to move every file between the two.
- Runs as long as the task, keeps its disk. A browsing job longer than an hour on Firecrawl has to be split into new sessions, and downloads have to be read out as base64 and stored elsewhere before each one closes.
- Coding agents you drive from outside, keys kept outside. With Firecrawl you either use its browser agent as it is or run your own harness somewhere else, and the keys that harness needs live in your code.
Questions people ask
Is bochka cheaper than Firecrawl?
The table sets a 4 vCPU / 8 GB bochka VM against a Firecrawl browser session that keeps no disk and stops after an hour. bochka is lower in three of the five scenarios: one agent that never stops comes to $26 on bochka against $82, 50 agents in parallel to $317 against $399, and sandboxes for your users to $200 against $749. Firecrawl is lower in the other two: a workday agent at $19 against $20, and 1,000 short jobs at once, which neither fits, at $942 against $2,000.
Can Firecrawl run Docker or a full shell?
A Firecrawl session runs Python, Node and bash inside a container built for its browser, with Playwright and agent-browser preinstalled. Its docs describe no Docker, SSH or root access, and the files are lost when the session ends. Every bochka sandbox has root, SSH, Docker, systemd and /dev/kvm.
How long can a Firecrawl browser session run?
10 minutes by default and 1 hour at most, and it closes after 5 minutes without activity unless you change that. A closed session cannot be reopened; a new one can load a saved profile with cookies and localStorage. bochka has no session cap on paid plans and keeps the disk when you stop.
Can I use bochka and Firecrawl together?
Yes. An agent on a bochka sandbox can call Firecrawl's scrape and search APIs or its MCP server, or open an Interact session over CDP, and keep its code, files and tools on the bochka VM. That puts web data on Firecrawl and the rest of the work on a machine that keeps its disk.
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. bochka runs only in the EU, with a zero data retention option.
Start a sandbox
Install the CLI, then run bochka new.
Product preview