boat vs Surfsky

Surfsky is a cloud antidetect browser: headless Chrome with real device fingerprints, CAPTCHA solving and residential proxies, driven over CDP. boat gives each agent a full Linux VM with root, Docker and a disk that persists, plus a 60fps desktop with Chromium and coding agents you drive from outside.

Where boat stands out

A whole machine, not only a browser

Every boat 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 Surfsky session gives your code a browser in a container over CDP, and nothing else on the machine.

A disk that stays, and forks

A boat sandbox keeps its whole disk, with snapshots every minute and on stop, so a stopped sandbox costs nothing and comes back with its files. You can also fork a running sandbox. A Surfsky persistent profile keeps only the browser storage you pick, and runs one browser at a time.

Coding agents you drive from outside, keys kept outside

boat 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. boat's credentials proxy keeps real API keys outside the sandbox for model providers and any HTTPS API. Surfsky gives your own agent a browser to connect to.

The companies and products

boat

boat.dev 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.

Surfsky

Surfsky is a cloud antidetect browser for web scraping and automation on sites with strong bot protection.

You start a browser with one API call and connect Playwright, Puppeteer, Selenium, chromedp or the Surfsky SDKs to it over CDP or ChromeDriver. Each session runs antidetect Chrome in its own container, with a fingerprint from real desktop or Android devices, a proxy tunnel, human-like mouse and keyboard input and CAPTCHA solving. It is a browser product, not a general sandbox: you get a browser, not a shell on the machine, 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 workloadboat: price rankSurfsky: 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, and a Surfsky session gives a browser only, so builds and tests fit boat.
3rd cheapest of 367
$634 a month
218th of 367, with limits
$2,721 a month
Always-on AI employees
50 machines 24/7 · 2 vCPU / 4 GB
An assistant that lives on its machine all month keeps only a browser profile between Surfsky sessions; on boat it keeps its whole disk and its processes.
5th cheapest of 366
$657 a month
183rd of 366, with limits
$1,592 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
237th of 345, with limits
$199 a month
Sandboxes for your users
300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month
Cheapest of 361
$209 a month
302nd of 361, with limits
$2,674 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
232nd of 360, with limits
$1,532 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
233rd of 364, with limits
$199 a month
CI runners
40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month
CI jobs need a shell, Docker and often /dev/kvm, which boat has and a browser session does not.
4th cheapest of 377
$86 a month
339th of 377, with limits
$1,464 a month
24/7 dev boxes
1 machine 24/7 · 4 vCPU / 8 GB
A dev box has to keep its files and tools, and a Surfsky session saves only browser storage such as cookies and localStorage, so this fits boat.
18th cheapest of 368
$26 a month
294th of 368, with limits
$199 a month
Computer-use agents
50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month
Surfsky agents act on web pages only, through a view-only screencast of one tab, while boat streams a 60fps Linux desktop where an agent can use any app.
6th cheapest of 369
$200 a month
316th of 369, with limits
$2,469 a month
Browser-use agents
50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month
Both fit: Surfsky gives a stealth browser over CDP for any agent framework, and boat gives Chromium on a full VM where the same agent can also run code.
7th cheapest of 367
$200 a month
45th cheapest of 367
$3,159 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; Surfsky adds fingerprints, human emulation and a scrape endpoint that returns rendered HTML in one call.
6th cheapest of 346
$90 a month
83rd cheapest of 346
$5,196 a month
Mass scraping & bots (undetectable)
1,000 at once · 1 vCPU / 2 GB · 3,000,000 sessions of 2 min a month
Surfsky fits mass scraping better: real device fingerprints, CAPTCHA solving and residential and mobile proxies are built for sites that block bots, while boat uses datacenter IPs.
71st of 338, with limits
$1,800 a month
27th of 338, with limits
$49,041 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
285th of 360, with limits
$570 a month
GPU eval jobs
10 at once · 8 vCPU / 32 GB · 500 sessions of 30 min 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 it

Key features

FeatureboatSurfsky
Kind of productA full Linux VM per sandbox, with a desktop and Chromium insideHosted antidetect Chrome reached over CDP, ChromeDriver or REST
IsolationFull VM with its own kernel on dedicated AMD Ryzen 9 9950X hostsA browser process in an isolated container with its own filesystem and network stack
What the agent can touchThe whole machine: root, SSH, any package, any processThe browser only; no shell, SSH or root on the machine
Docker and nested virtualizationDocker, systemd and /dev/kvm on every machineNot offered: a session is a browser, not a machine
Session lengthNo cap on paid plans; you set the time to liveNo time limit; stops after 30 seconds without commands by default, and the timeout can be raised
Files after a sessionThe disk persists, with snapshots every minute and on stop; a stopped sandbox costs nothingPersistent profiles keep cookies, passwords, bookmarks and other browser storage you pick; one-time sessions keep nothing
Fork and parallel copiesFork a running sandbox with its diskNo fork; a persistent profile runs one browser at a time, so parallel work needs separate profiles
Watching the agent60fps desktop and Chromium, computer use on any app, embeddable streamView-only screencast of a tab as JPEG frames, plus DevTools for inspection
Bot detectionDatacenter IPs and Chromium; no CAPTCHA solvingReal device fingerprints (desktop and Android), human emulation, CAPTCHA solving, residential and mobile proxies
Outbound traffic controlOpen internet on every plan; no provider-side blocklistPer-session domain blocklist with wildcards, routes per domain and a kill switch outside the proxy tunnel
Reaching the machineHTTPS URLs for up to 50 ports, token-protected; raw TCP; own IPSurfsky's own CDP, DevTools and screencast URLs; no ports to host a service on
AgentsClaude Code, Codex, OpenCode and more preinstalled, with a prompt, steer and events APIWorks with agent frameworks that speak CDP; an agent harness for CAPTCHAs and session resets is behind a request for access
Keeping keys out of the sandboxAI credentials proxy for model providers and any HTTPS API you register; switch a credential to another account when credits run outLogins persist through saved profile cookies; API keys stay in your own code
RegionsEU only (Germany, Finland and France)Germany or the United States, one per account
Compliance and transparencySOC 2 is in progress. We're open about where we stand: live status and data retention policy.No SOC 2 report published
Every feature Battleships tracks (43)
FeatureboatSurfsky
Full VM (own kernel)YesNo
Docker insideYesNo
Nested virtualizationYesNo
RootYesNot published
SystemdYesNot published
Desktop GUIYesNo
BrowserYesYes
Computer-use APIYesYes
SSHYesNo
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 requestNoNo
HTTPS preview URLsYesNo
Raw TCP inboundYesNot published
Public IPv4NoNo
Egress allowlistNoYes
Secret proxyYesNo
Secret proxy for any APIYesNo
Preinstalled agentsYesNo
Agent harness APIYesNo
MCP serverNoNo
GPUNoNo
WindowsNoNo
Arm64NoNo
Self-hostingNoNo
BYOCNoNo
Open sourceNoNo
Scoped API keysYesNot published
Spend limitsYesNot published
Usage per sandbox (API)YesNo
Audit logsNoNot published
SSONoNo
SOC 2NoNo
HIPAANoNo
EU data residencyYesYes
Zero data retentionYesNot published

Performance

boat26.69 runs/s
SurfskyNot measured

There is no comparable measurement. Surfsky was not in StarSling's public CPU benchmark, and it does not publish the vCPU or RAM behind a browser hour, so there is no number to set against boat'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. Surfsky 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.

Scenarioboat, a monthSurfsky, 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$199 · Advanced · with limits
One agent that never stops
4 vCPU / 8 GB, 50 GB disk, running 24/7 all month
$26 · $20/mo$199 · Advanced · 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$2,081 · Advanced · 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$3,259 · Advanced · 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$2,032 · Advanced · with limits

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

Surfsky: Surfsky bills browser time by the minute, rounded up, at $0.35 an hour on pay as you go down to $0.20 on Advanced, and the $29, $99 or $199 monthly fee becomes credit. Premium proxy traffic costs $10 to $7 per GB and CAPTCHA solves are metered from the same credit.

Limits in those scenarios

The Surfsky 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, and that is why no scenario fits. Concurrency is the hard limit: 199 browsers at once on Advanced, so 300 sandboxes for your users and 1,000 short jobs at once need a Custom plan through sales. Start requests are also rate-limited per minute and per hour, apart from the browser slots. On boat, 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.

ScenarioboatSurfsky
One coding agent, workdaysNone that bite
  • missing persistent disk
  • machine size not published
  • browser-session product, not a general sandbox
  • different kind of product: browser session
One agent that never stopsNone that bite
  • missing persistent disk
  • machine size not published
  • browser-session product, not a general sandbox
  • different kind of product: browser session
50 agents in parallelNone that bite
  • missing persistent disk, Docker inside
  • machine size not published
  • browser-session product, not a general sandbox
  • different kind of product: browser session
Sandboxes for your usersNone that bite
  • Advanced: max 199 concurrent
  • machine size not published
  • browser-session product, not a general sandbox
  • different kind of product: browser session
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)
  • Advanced: max 199 concurrent
  • machine size not published
  • browser-session product, not a general sandbox
  • different kind of product: browser session

Which one should you use?

Use Surfsky when

your agent only needs the web and the sites fight back: real device fingerprints, human-like input, CAPTCHA solving and residential proxies, or browsers that run in the US.

  • Getting past bot walls. Useful for sites that block bots: real device fingerprints, human-like input, CAPTCHA solving and residential and mobile proxies.
  • A browser in the US, with traffic rules. Useful when browsers must run near a US worker, or when each session should skip chosen domains.
  • Many cheap browser hours. Useful for browsers that run all day: a reserved fleet starts at $0.03 per browser hour through sales.

Use boat when

your agent browses and also works: installs, builds, Docker and dev servers on a full VM that keeps its disk and can be forked, 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 Surfsky, and has to move files between the two.
  • A disk that stays, and forks. On Surfsky, downloads, notes and tools outside the browser profile are gone when the session stops, and ten parallel copies of one logged-in setup mean ten profiles set up one by one.
  • Coding agents you drive from outside, keys kept outside. With Surfsky you write and host the agent loop yourself, on another machine, and the model keys it uses live in your own code.

Questions people ask

Is boat cheaper than Surfsky?

The table sets a 4 vCPU / 8 GB boat VM against a Surfsky browser session that keeps no disk. One coding agent on workdays comes to $20 a month on boat against $199, and 50 agents in parallel to $317 against $2,081. For 1,000 short jobs at once neither fits, at $2,000 on boat against $2,032.

Can Surfsky run Docker or a shell?

No. A Surfsky session is a browser in a container that you reach over CDP, ChromeDriver or REST, not a shell on the machine. Every boat sandbox has root, SSH, Docker, systemd and /dev/kvm.

How long can a Surfsky session run?

There is no time limit, but a browser stops after 30 seconds without a command unless you raise that timeout at start. A persistent profile keeps the browser storage you pick between sessions. boat has no session cap on paid plans and keeps the whole disk when you stop.

Does boat have stealth or CAPTCHA solving like Surfsky?

No. boat runs Chromium on datacenter IPs and does not solve CAPTCHAs. For sites that block bots at volume, Surfsky's fingerprints, human emulation, CAPTCHA solving and residential proxies are built for that.

Can I use boat and Surfsky together?

Yes. An agent on a boat sandbox can start a Surfsky browser with one API call and connect to it over CDP, while its code, files and tools stay on the boat VM. That puts protected browsing on Surfsky and the rest of the work on a machine that keeps its disk.

Is boat SOC 2 compliant?

SOC 2 is in progress. We're open about where we stand: live status at status.ascii.dev and our data retention policy at docs.boat.dev/data-retention. boat runs only in the EU, with a zero data retention option.

Start a sandbox

Install the CLI, then run boat new.

7-day free trial

More comparisons