Beam vs OpenAI Containers
Beam is a cloud where you start sandboxes, VMs and GPU jobs from your own code, and they run until you stop them. OpenAI Containers are short-lived boxes inside OpenAI's model API where the model runs Python or shell commands, then the box expires.
The companies and products
Beam
Beam is a serverless cloud for GPU inference, sandboxes and background jobs, built on its open-source runtime Beta9.
Beam runs functions, REST endpoints, task queues, pods, sandboxes and VMs on CPUs and GPUs, all from a Python or TypeScript SDK. A sandbox is a container isolated with gVisor that starts in a second or two, lives until you terminate it or its time to live runs out, and can be saved as a filesystem image or a memory snapshot. Beam VMs are a separate CPU product: a microVM with its own kernel, systemd and a root disk that stays when it stops. Much of Beam is a GPU serverless platform for AI teams.
- Bring your own cloud
- Management fee per vCPU and GB of RAM, on top of your own cloud bill
OpenAI Containers
OpenAI Containers are the sandboxes OpenAI runs for its own model tools: Code Interpreter, Hosted Shell and the Agents API's hosted sandbox.
This is a different kind of product from boat: a tool inside OpenAI's model API, not a machine you rent. You create a container through the API or let a Responses call make one, and the model runs Python or shell commands in it on a fixed Debian 12 image without sudo, until it expires after 20 minutes without use. It is built for apps that already call OpenAI models and want them to run code, read files and make charts without running any servers.
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. “8th cheapest of 345” means 7 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 workload | Beam: price rank | OpenAI Containers: price rank | boat: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month A software factory needs Docker, root and a disk that lasts; Beam gives Docker in a sandbox but no systemd or /dev/kvm, OpenAI gives no sudo or Docker, and boat gives all of it. | 69th of 367, with limits $551 a month | 356th of 367, with limits $17,371 a month | 3rd cheapest of 367 $634 a month |
| Always-on AI employees 50 machines 24/7 · 2 vCPU / 4 GB An assistant that lives on its machine all month fits a Beam VM or a boat sandbox, which keep their disk while stopped; an OpenAI container is deleted after 20 idle minutes. | 115th of 366, with limits $651 a month | 341st of 366, with limits $13,140 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 Short code runs are home ground for both: Beam ranks 8th here with sandboxes that start in a second or two, and OpenAI runs the model's code inside the same API call. | 8th cheapest of 345 $117 a month | 194th of 345, with limits $6,000 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 Beam and boat both run sandboxes for your users with URLs you can open; an OpenAI container has no inbound access at all, only the API. | 3rd cheapest of 361 $290 a month | 361st of 361, with limits $3,780 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 | 341st of 360, with limits $939 a month | 191st of 360, with limits $30,000 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 | 13th cheapest of 364 $251 a month | 360th of 364, with limits $5,760 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 CI jobs need Docker, root and open internet; Beam has all three, OpenAI documents no Docker or root, and boat adds /dev/kvm for Android and VM builds. | 12th cheapest of 377 $171 a month | 345th of 377, with limits $1,728 a month | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB | 13th cheapest of 368 $21 a month | 362nd of 368, with limits $1,051 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 OpenAI has a hosted browser for computer use in the Agents API beta, Beam has no browser product, and boat streams a full 60fps desktop with Chromium. | 111th of 369, with limits $237 a month | 351st of 369, with limits $5,280 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 | 195th of 367, with limits $176 a month | 328th of 367, with limits $1,440 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 | 200th of 346, with limits $131 a month | 328th of 346, with limits $1,755 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 | 42nd of 338, with limits $923 a month | 311th of 338, with limits $35,100 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 | 175th of 360, with limits $155 a month | 308th of 360, with limits $870 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 Beam has GPUs, from RTX 4090 up to H100 and B200; OpenAI Containers and boat are CPU only. | Cheapest of 98 $458 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 | Can't run it |
Key features
| Feature | Beam | OpenAI Containers | boat |
|---|---|---|---|
| What it is | A serverless cloud for sandboxes, VMs, jobs and GPUs, driven from a Python or TypeScript SDK | A sandbox tool the model uses inside OpenAI's API | A cloud VM you create, keep, stop and reach from outside |
| Isolation | gVisor container by default for sandboxes; separate Beam VMs are CPU microVMs with their own kernel | Described as a fully sandboxed virtual machine; hypervisor not named | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts |
| Root, Docker and nested virtualization | Root in sandboxes and Docker with docker_enabled; systemd only in Beam VMs; no /dev/kvm documented | Commands do not run with sudo; no Docker or /dev/kvm documented | Root, systemd, Docker and /dev/kvm on every machine |
| Lifetime | Default 10 minutes; set -1 to run until you terminate it | Expires after 20 minutes without use; Agents API sandboxes after an hour without activity | No session cap on paid plans; you set the time to live |
| Files after the session | A sandbox ends with its time to live unless you save an image or use a volume; a Beam VM keeps a 50 GiB root disk while stopped | Data is discarded when the container expires; Agents API keeps only files in /workspace/outputs | Disk saved every minute and on stop; a stopped sandbox costs nothing and comes back |
| Snapshots and fork | Memory snapshot of a running sandbox with its processes, restored into new sandboxes | No snapshots or fork | Fork a running sandbox with its disk; named snapshots as templates |
| GPUs | GPU sandboxes and serverless GPUs up to H100, H200 and B200 | No | No, CPU only |
| Machine size | You request CPU cores (one core is two vCPU) and GiB of RAM; max size unpublished | 1, 4, 16 or 64 GB of memory; vCPU not published | 4 vCPU / 8 GB by default, up to 16 vCPU / 32 GB |
| Inbound access | A public HTTPS URL per exposed port with no built-in auth; no raw TCP or dedicated IP | None; you reach the container only through the API | SSH, HTTPS URLs for up to 50 ports, token-protected by default, raw TCP |
| Outbound internet | Open by default; block all traffic or allow up to 10 CIDR ranges, changeable while running | Code Interpreter and Hosted Shell: off until an admin sets an org domain allowlist. Agents API sandboxes: on by default, can be limited to 1 to 100 hosts | Open internet on every plan; no provider-side allowlist |
| Keeping API keys out of the sandbox | Secrets are exposed as environment variables inside the sandbox | domain_secrets: a sidecar adds the real header for approved domains, the model sees a placeholder | Credentials proxy for model providers and any HTTPS API; switch a credential to another account when credits run out |
| Coding agents and desktop | No agents preinstalled and no desktop or browser product | Agents API (beta) drives a managed Codex harness, with a hosted browser for computer use | Seven agents preinstalled with a prompt, steer and events API; 60fps desktop with Chromium and computer use |
| Regions | US only; no other region is listed | US or EU processing for Code Interpreter; Agents API data residency only in the US | EU only (Germany, Finland, France) |
| Self-hosting | Beta9 runtime is AGPL-3.0 and free to self-host; bring your own cloud for a fee | The Agents API can drive a sandbox you host yourself | No |
Every feature Battleships tracks (43)
| Feature | Beam | OpenAI Containers | boat |
|---|---|---|---|
| Full VM (own kernel) | No | Yes | Yes |
| Docker inside | Yes | No | Yes |
| Nested virtualization | No | No | Yes |
| Root | Yes | No | Yes |
| Systemd | No | Not published | Yes |
| Desktop GUI | No | Yes | Yes |
| Browser | No | Yes | Yes |
| Computer-use API | No | Yes | Yes |
| SSH | Yes | No | Yes |
| Persistent disk | Yes | No | Yes |
| Pause/resume | No | No | Yes |
| Automatic snapshots | No | No | Yes |
| Fork/clone | Yes | No | Yes |
| Live fork (no pause) | Yes | No | Yes |
| Memory fork | Yes | No | No |
| Custom image (Docker or snapshot) | Yes | No | Yes |
| ≥24 h sessions | Yes | Yes | Yes |
| Idle auto-stop | No | Yes | No |
| Wake on request | No | No | No |
| HTTPS preview URLs | Yes | No | Yes |
| Raw TCP inbound | No | No | Yes |
| Public IPv4 | No | No | No |
| Egress allowlist | Yes | Yes | No |
| Secret proxy | No | Yes | Yes |
| Secret proxy for any API | No | Yes | Yes |
| Preinstalled agents | No | No | Yes |
| Agent harness API | No | Yes | Yes |
| MCP server | Yes | No | No |
| GPU | Yes | No | No |
| Windows | No | No | No |
| Arm64 | No | No | No |
| Self-hosting | Yes | Yes | No |
| BYOC | Yes | No | No |
| Open source | Yes | No | No |
| Scoped API keys | Not published | Not published | Yes |
| Spend limits | Not published | Not published | Yes |
| Usage per sandbox (API) | No | No | Yes |
| Audit logs | Not published | Not published | No |
| SSO | No | Yes | No |
| SOC 2 | Yes | Yes | No |
| HIPAA | Yes | Yes | No |
| EU data residency | Not published | Yes | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
There is no comparable measurement: neither Beam nor OpenAI Containers has a result on the StarSling hpc-sandbox-benchmarks CPU test, and OpenAI does not publish how many vCPU each container size gets. boat did 26.69 runs per second on that test at 4 vCPU / 8 GB. Beam's own guide says its sandboxes cold-boot in 1 to 3 seconds.
Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Beam and OpenAI Containers 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.
| Scenario | Beam, a month | OpenAI Containers, a month | boat, 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 | $5 · Developer | $228 · API pay as you go · with limits | $20 · $20/mo |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $22 · Developer | $1,051 · API pay as you go · with limits | $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 | $410 · Team | $11,405 · API pay as you go · with limits | $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 | $191 · Team | $1,620 · API pay as you go · with limits | $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 | $259 · Team | $6,000 · API pay as you go · with limits | $2,000 · $2000/mo · with limits |
Beam: Beam sandboxes bill per second for each CPU core (one core is two vCPU) and each GiB of RAM you request, until you terminate them or their time to live ends, so an idle tail is billed too. Developer has no fee; Team costs $89 a month plus usage, with no usage credit, and there are no egress fees.
OpenAI Containers: OpenAI bills each container session by the minute for the memory size you pick, with a 5-minute minimum, and model tokens are billed separately on top. There is no plan fee; the scenarios use the 16 GB size for 8 GB needs and the 4 GB size for 4 GB needs, since vCPU is not published.
OpenAI Containers: Plans start at $20 a month, and the whole fee is usage credit spent per second on running sandboxes. A stopped sandbox costs nothing and keeps its disk.
Limits in those scenarios
Beam fits all five scenarios, but its Developer plan allows 30 CPU containers at once, so 50 parallel agents need the Team plan, and Beam publishes no price for extra disk, so none is counted. OpenAI Containers fit none of them as written: no persistent disk, no Docker, no internet by default in Code Interpreter and Hosted Shell, and no published vCPU or limit on how many containers run at once. boat fits four; at 1,000 short jobs at once its $2,000 plan queues the starts, while Beam's Team plan fits the burst.
| Scenario | Beam | OpenAI Containers | boat |
|---|---|---|---|
| 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 Beam when
you start and stop sandboxes from your own code, when your workload needs GPUs, when you want low-cost CPU VMs in the US, or when you must self-host.
- Sandboxes you own and control. For apps that start sandboxes from their own code, Beam runs them until you terminate them, with Docker inside and open internet.
- GPUs in the same platform. For work that needs a GPU, Beam offers GPU sandboxes and serverless GPUs from RTX 4090 up to H100, H200 and B200.
- Open source and your own cloud. Teams that must self-host can run Beam's Beta9 runtime for free under AGPL-3.0, or run Beam in their own cloud for a fee.
Use OpenAI Containers when
your app already calls OpenAI models and the model only needs to run short pieces of code or shell commands on files you give it.
- Built into the model call. If your app already calls OpenAI models, one tool line in a request gives the model a place to run code, with nothing to manage.
- Locked-down network by default. If code must reach only chosen domains, Code Interpreter and Hosted Shell start with no outbound access until an admin allows some.
- US or EU processing. Teams that need data handled in Europe can have Code Interpreter process it there, while Beam lists only the US.
Where boat fits
If what you are really running is a coding agent that works for hours or days, both Beam sandboxes and OpenAI Containers make you rebuild the machine around it. boat gives each agent a full VM with root, Docker and /dev/kvm, a disk that is saved every minute, and ports you can open from outside, with coding agents and a desktop already installed.
A whole machine with root
A Beam sandbox is a gVisor container with no systemd, and an OpenAI container gives no sudo or Docker. Neither documents /dev/kvm, so Android emulators and nested VMs cannot start; Beam VMs add systemd but are a separate product to build on.
A disk that stays
A Beam sandbox ends with its time to live unless your code saves an image or mounts a volume, and an OpenAI container discards everything after 20 idle minutes. An agent that waits for a review loses its clone, installs and build cache.
Reachable from outside, agents built in
An OpenAI container accepts no inbound connections, and a Beam URL is public with no auth and no raw TCP. On Beam you also build the agent harness and desktop yourself; boat ships seven agents and a 60fps desktop.
Use boat when your agent needs a real machine it keeps: root, Docker and /dev/kvm, a disk that persists, open internet and ports you can reach, with coding agents and a desktop built in. Compare it one to one: boat vs Beam and boat vs OpenAI Containers.
Questions people ask
Is Beam cheaper than OpenAI Containers?
Yes, in every scenario on this page. One agent that never stops comes to $22 a month on Beam and $1,051 on OpenAI, and 50 agents in parallel come to $410 against $11,405. OpenAI also bills model tokens on top, and its containers do not fully fit these scenarios.
Which is faster, Beam or OpenAI Containers?
There is no comparable measurement: neither has a result on the public CPU benchmark, and OpenAI does not publish the vCPU behind each container size. Beam says its sandboxes cold-boot in 1 to 3 seconds.
Can Beam or OpenAI Containers run Docker?
Beam can, inside a sandbox with docker_enabled. OpenAI's docs say hosted shell commands do not run with sudo, and no Docker support is documented. boat runs Docker, systemd and /dev/kvm in every sandbox.
What happens to files when the session ends?
A Beam sandbox ends with its time to live, 10 minutes by default, unless you save an image or snapshot or attach a volume; a Beam VM keeps its root disk while stopped. An OpenAI container expires after 20 minutes without use and its data is discarded. boat saves the disk every minute and keeps it while the sandbox is stopped.
Do Beam or OpenAI Containers have GPUs?
Beam does, with GPU sandboxes and serverless GPUs from RTX 4090 up to H100, H200 and B200. OpenAI Containers and boat are CPU only.
Can I open a web app running inside either one?
On Beam, yes: each exposed port gets a public HTTPS URL, with no built-in auth. OpenAI containers have no ports, URLs or SSH. boat gives each sandbox SSH, token-protected HTTPS URLs for up to 50 ports and raw TCP.
Try boat
Install the CLI, then run boat new.
7-day free trial