---
title: RemoteHost against the field
description: RemoteHost against E2B, Modal, Daytona, Box, Vercel Sandbox and the rest: hourly rate, monthly cost at scale, and what each sandbox can do, every figure sourced and dated.
url: https://remotehost.ai/compare
---

# RemoteHost against the field

Checked against public price sheets and docs on 2026-09-11. One sandbox of our standard shape, priced at every provider that sells one; the same month at scale; and what each machine can do. Every figure says where it was read.

## What an hour costs

One sandbox with 4 vCPU and 8 GB, running for an hour, at each provider's published rate as read on 2026-09-11. Compute only (CPU plus memory, by the clock); disk is left out because some providers include it and some meter it, and ours is included. Cloudflare and Vercel bill CPU only while it is busy, so their rows are the price at full load. A RemoteHost sandbox that is asleep is billed nothing.

| Provider | Per hour | × ours | Published rate |
| --- | --- | --- | --- |
| **RemoteHost, Central EU** | $0.033/hr | — | Agent Standard profile in Germany, France, 80 GB disk included |
| **RemoteHost, East US** | $0.033/hr | — | Agent Standard profile in North Virginia, 80 GB disk included |
| **RemoteHost, Canada Central** | $0.033/hr | — | Agent Standard profile in Quebec, 80 GB disk included |
| Box (EU only) | $0.036/hr | 1.1× | $20 buys 2,000,000 seconds of 4 vCPU / 8 GB, in Germany, Finland, or France; read at box.ascii.dev/ |
| Northflank | $0.133/hr | 4.0× | $0.01667 per vCPU-hour + $0.00833 per GB-hour; read at northflank.com/pricing |
| E2B | $0.331/hr | 10× | $0.000014 per vCPU-second + $0.0000045 per GiB-second; read at e2b.dev/pricing |
| Blaxel | $0.331/hr | 10× | $0.0000115 per GB of RAM per second, CPU included; read at blaxel.ai/pricing |
| Daytona | $0.331/hr | 10× | $0.0504 per vCPU-hour + $0.0162 per GiB-hour; read at www.daytona.io/pricing |
| Cloudflare Sandboxes | $0.360/hr | 11× | $0.00002 per vCPU-second while busy + $0.0000025 per GiB-second; read at developers.cloudflare.com/containers/pricing/ |
| Modal Sandboxes | $0.476/hr | 14× | $0.00003942 per core-second (a core is 2 vCPU) + $0.00000667 per GiB-second; read at modal.com/pricing |
| Fly Sprites | $0.630/hr | 19× | $0.07 per CPU-hour + $0.04375 per GB-hour; read at fly.io/pricing/ |
| Runloop | $0.634/hr | 19× | $0.108 per CPU-hour + $0.0252 per GB-hour; read at runloop.ai/pricing |
| Vercel Sandbox | $0.682/hr | 21× | $0.128 per active-CPU-hour + $0.0212 per GB-hour; read at vercel.com/docs/sandbox/pricing |

## What a month costs

Fifty sandboxes running at once, 240 hours each: 12,000 machine-hours at 4 vCPU / 8 GB, at the rates above. Runtime only: plan minimums (ours starts at $20 a month, Box's is $20 too), storage, egress and per-request fees are outside it. Cloudflare and Vercel bill CPU only while busy, so their months are the full-load figure. The HTML page has sliders for your own numbers: https://remotehost.ai/compare#month

| Provider | Per month | Over ours |
| --- | --- | --- |
| **RemoteHost, Central EU** | $396 | — |
| **RemoteHost, East US** | $396 | — |
| **RemoteHost, Canada Central** | $396 | — |
| Box (EU only) | $432 | +$36 |
| Northflank | $1,600 | +$1,204 |
| E2B | $3,974 | +$3,578 |
| Blaxel | $3,974 | +$3,578 |
| Daytona | $3,974 | +$3,578 |
| Cloudflare Sandboxes | $4,320 | +$3,924 |
| Modal Sandboxes | $5,711 | +$5,315 |
| Fly Sprites | $7,560 | +$7,164 |
| Runloop | $7,603 | +$7,207 |
| Vercel Sandbox | $8,179 | +$7,783 |

## What each sandbox can do

Read from each provider's own docs on 2026-09-11. "Not documented" means the provider's docs do not answer the question; it is not a no.

| Capability | RemoteHost | Box | E2B | Daytona | Modal Sandboxes | Vercel Sandbox | Cloudflare Sandboxes | Fly Sprites | Northflank | Blaxel | Runloop |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| **Own VM** (Each sandbox is its own hardware-isolated microVM, not a container.) | Yes: Firecracker microVM per sandbox. ([source](https://remotehost.ai/#regions)) | Yes: Each box is a full Linux (Ubuntu) VM; the docs do not name the hypervisor. (read at docs.ascii.dev/box/faq) | Yes: Every sandbox is a Firecracker microVM with its own kernel. (read at docs.e2b.dev/faq/security-and-compliance) | Partly: Linux containers by default; optional VM sandboxes (Linux VM or Windows) with their own kernel. (read at www.daytona.io/docs/en/sandboxes) | Partly: Default runtime is gVisor (a container); VM Sandboxes (Beta) run on a full VM via an experimental option. (read at modal.com/docs/guide/vm-sandboxes) | Yes: Each sandbox is a Firecracker microVM with its own kernel. (read at vercel.com/docs/sandbox/concepts) | Yes: Each sandbox runs in its own VM on the Containers platform; the docs do not name the hypervisor. (read at developers.cloudflare.com/sandbox/concepts/security/) | Yes: Each Sprite is a dedicated, hardware-isolated microVM; the docs do not name the hypervisor. (read at docs.sprites.dev/) | Yes: MicroVM with a dedicated kernel by default on Northflank cloud; the VMM is not named, the product page says Kata Containers or gVisor. (read at northflank.com/docs/v1/application/sandboxes/deploy-sandboxes-on-northflank) | Yes: One microVM per sandbox; the docs do not name Firecracker or KVM. (read at blaxel.ai) | Yes: Docs say devboxes are isolated virtual machines; the hypervisor (Firecracker/KVM) is not named anywhere in docs.runloop.ai. (read at docs.runloop.ai/docs/devboxes/overview) |
| **Root and Docker** (Root inside the sandbox, and a Docker daemon that runs there.) | Yes: Full systemd, Docker, background processes, real ports. ([source](https://remotehost.ai/#product)) | Yes: sudo in a full VM plus Docker pre-installed and supported inside the VM; SSH logs in as `user`, not root. (read at box.ascii.dev) | Partly: Default user is `user` with sudo; an official Docker template runs Docker and Compose inside the sandbox, but root plus Docker is not a general guarantee. (read at docs.e2b.dev/template/examples/docker) | Yes: Code runs as root; Docker-in-Docker inside sandboxes is documented. (read at www.daytona.io/docs/en/snapshots) | Yes: Containers run as root; Docker in a Sandbox is documented, recommended on VM Sandboxes. (read at modal.com/docs/guide/vm-sandboxes) | Yes: Full root via sudo; Docker and other container runtimes are documented as supported workloads inside the sandbox. (read at vercel.com/docs/sandbox/concepts) | Partly: Docker-in-Docker is a documented guide, but the container has no root privileges and only rootless dockerd (no iptables, no privileged containers) is supported. (read at developers.cloudflare.com/sandbox/guides/docker-in-docker/) | Not documented: The docs show sudo working inside a Sprite but never document running as root or a Docker daemon inside one. (read at docs.sprites.dev/working-with-sprites/) | Not documented: Containers run as the image's default user, usually root; running a Docker daemon inside a sandbox is not documented. (read at northflank.com/docs/v1/application/run/run-as-a-different-user) | Yes: Sandboxes run as root by default and a first-party docker-in-sandbox image builds and runs containers inside the sandbox. (read at docs.blaxel.ai/Tutorials/Docker) | Yes: Docker-in-Docker blueprints (e.g. runloop/universal-ubuntu-24.04-x86_64-dnd) run the devbox as root and the example executes `docker run hello-world`. (read at docs.runloop.ai/docs/devboxes/capabilities/docker-in-docker) |
| **Persists** (Lasts across sessions by default; not destroyed on a timeout.) | Yes: A sandbox lasts until you delete it. ([source](https://remotehost.ai/#product)) | Partly: Default 1 h TTL from creation auto-stops the box, which is snapshotted and resumable rather than destroyed; max numeric TTL 30 days, or auto-stop can be disabled on paid accounts. (read at docs.ascii.dev/box/long-running-tasks) | No: Default timeout 5 minutes and on_timeout defaults to kill; opt-in auto-pause keeps state indefinitely. (read at docs.e2b.dev/sandbox/persistence) | Yes: Persistent by default; auto-stops after 15 min idle with the filesystem kept, auto-archive after 7 days, no maximum lifetime unless a TTL is set. (read at www.daytona.io/docs/en/persistence) | No: Default maximum lifetime 5 minutes, up to 24 hours; the Sandbox terminates at timeout. (read at modal.com/docs/guide/sandbox) | Yes: Persistent by default: session stops at timeout (default 5 min) but filesystem is auto-snapshotted and resumes; sandboxes that cannot resume are removed after 14 days of inactivity. (read at vercel.com/docs/sandbox/concepts/persistent-sandboxes) | No: Default sleepAfter is 10 minutes idle and the disk is reset to the image on every restart; keepAlive only prevents the idle stop. (read at developers.cloudflare.com/containers/faq/) | Yes: Sprites pause after about 30 s idle but are never auto-destroyed; the disk persists across warm and cold pauses with no documented maximum lifetime. (read at docs.sprites.dev/concepts/lifecycle/) | Partly: No default timeout is documented, but state survives restarts and pauses only if a volume is attached. (read at northflank.com/docs/v1/application/sandboxes/sandboxes-on-northflank) | Yes: Sandboxes auto-standby after about 5 s idle and are never deleted unless an expiration policy is set; Tier 0 and 1 enforce 7 and 30-day expiry. (read at docs.blaxel.ai/Sandboxes/Expiration) | No: Every devbox gets a max lifetime (default 1 hour, configurable via keep_alive_time_seconds); idle default is do nothing; disk survives only via suspend or snapshot. (read at docs.runloop.ai/docs/devboxes/start-stop) |
| **Sleeps with memory** (Pause and resume with memory state kept, not only disk.) | Yes: Sleep snapshots the whole machine, memory included; wake resumes it. ([source](https://remotehost.ai/#product)) | Partly: Stop and resume is a filesystem snapshot only; memory and hand-run processes are lost, resume behaves like a reboot. (read at docs.ascii.dev/box/snapshots) | Yes: Pause saves filesystem and memory; resume restores running processes. (read at docs.e2b.dev/) | Partly: Pause and resume with memory only for VM sandboxes; container sandboxes keep the filesystem only. (read at www.daytona.io/docs/en/sandboxes) | Yes: Memory snapshots capture memory and filesystem and restore into a new Sandbox; snapshotting terminates the original; snapshots expire after 7 days. (read at modal.com/docs/guide/sandbox-snapshots) | Partly: Stop/resume restores the filesystem snapshot only; a new VM session boots on resume. (read at vercel.com/docs/sandbox/concepts/persistent-sandboxes) | No: Sleep stops the container; neither memory nor disk survives, and the next start is a fresh container from the image. (read at developers.cloudflare.com/containers/faq/) | Partly: A warm pause suspends the VM with memory intact (100 to 500 ms resume), but long idle goes cold and drops memory; manual checkpoint and restore is disk-only. (read at docs.sprites.dev/concepts/lifecycle/) | Partly: Pause is scale-to-zero preserving volume storage only; no memory snapshot or restore is documented. (read at northflank.com/docs/v1/application/sandboxes/deploy-sandboxes-on-northflank) | Yes: Standby snapshots memory and filesystem including running processes; resume in about 25 ms. (read at docs.blaxel.ai/Sandboxes/Overview) | Partly: Suspend/resume preserves disk only; running processes are lost. (read at docs.runloop.ai/docs/devboxes/lifecycle) |
| **Free while stopped** (Nothing is billed while the sandbox is paused or asleep; partly means storage is.) | Yes: Nothing: no runtime, no disk, no snapshot fee. ([source](https://remotehost.ai/pricing)) | Yes: Nothing is billed while stopped; the snapshot is kept at no stated charge. (read at docs.ascii.dev/box/faq) | Yes: Nothing billed while paused; storage is included in every plan. (read at docs.e2b.dev/faq/paused-sandboxes-concurrency) | Partly: Stopped or paused: reserved disk only ($0.000108 per GiB-hour after the first 5 GiB); archived: not billed. (read at www.daytona.io/docs/en/billing) | Not documented: Billed by the second only while running; snapshot storage pricing is not stated. (read at modal.com/docs/guide/sandbox-resources) | Yes: Stopped sandboxes accrue Snapshot Storage at $0.08/GB-month (Pro/Enterprise; Hobby 15 GB included); compute metrics only count while running. (read at vercel.com/docs/sandbox/pricing) | Yes: Nothing: charges stop when the instance sleeps, and there is no persisted disk to bill. (read at developers.cloudflare.com/containers/platform/pricing/) | Partly: No compute or hot storage while paused; cold storage bills at $0.000027 per GB-hour (about $0.02/GB a month) until deleted. (read at fly.io/pricing/) | Partly: No compute while paused; volume storage billed at $0.15/GB a month. (read at northflank.com/docs/v1/application/sandboxes/sandboxes-on-northflank) | Partly: No compute on standby; snapshot storage $0.20/GB a month. (read at docs.blaxel.ai/Sandboxes/Overview) | Yes: No compute while suspended; storage continues at Devbox Storage $0.00034236/GB-hr (Snapshot Storage $0.000072/GB-hr). (read at www.runloop.ai/pricing) |
| **SSH** (SSH into the sandbox is a first-party feature.) | Yes: remote ssh is plain OpenSSH. ([source](https://remotehost.ai/#cli)) | Yes: First-party `box ssh` and `box scp` with CLI-managed keys; standard SSH also works. (read at docs.ascii.dev/box/ssh-access) | Partly: Documented, but you build your own template with OpenSSH and websocat and connect through a WebSocket proxy; not built in. (read at docs.e2b.dev/sandbox/ssh-access) | Yes: Token-based SSH from the dashboard, CLI (`daytona ssh`) or SDK; tokens expire after 60 minutes by default. (read at www.daytona.io/docs/en/ssh-access) | Partly: Documented through unencrypted TCP tunnels to an SSH server you run yourself; not a built-in feature. (read at modal.com/docs/guide/tunnels) | Partly: `sandbox connect` (aliases ssh, shell) gives an interactive shell described as SSH-like; not documented as standard SSH protocol access. (read at vercel.com/docs/sandbox/working-with-sandbox) | Yes: First-party via `wrangler containers ssh`, with ed25519 keys in authorized_keys; the container must already be running. (read at developers.cloudflare.com/containers/guides/ssh/) | Partly: No built-in SSH; you install sshd in the Sprite yourself and tunnel it through `sprite proxy`. (read at docs.sprites.dev/working-with-sprites/) | Yes: SSH identities enable SSH into running service containers (services only, not jobs); `northflank exec` shell also available. (read at northflank.com/docs/v1/application/run/access-services-with-ssh) | Partly: No native SSH; a first-party tutorial documents SSH through the blaxel/tailscale image and Tailscale SSH. (read at docs.blaxel.ai/Tutorials/Tailscale) | Yes: Built-in SSH via `rli devbox ssh <devbox-id>`; sessions disconnect after 15 minutes of inactivity. (read at docs.runloop.ai/docs/devboxes/ssh) |
| **Preview URLs** (A port can be reached on an HTTPS URL.) | Yes: Every bound port is forwarded; previews load for your org, or on a public link with an expiry. (read at docs.remotehost.ai/docs/platform) | Yes: `host <port>` publishes a stable HTTPS URL on on.ascii.dev, token-protected by default with --public and --private options. (read at docs.ascii.dev/box/hosting) | Yes: getHost(port) returns a public URL; public by default, can require auth with allow_public_traffic=false. (read at docs.e2b.dev/network/public-url) | Yes: Preview URLs for any port; authenticated unless the sandbox is marked public. (read at www.daytona.io/docs/en/preview) | Yes: encrypted_ports give TLS tunnels; Sandbox Connect Tokens add authentication. (read at modal.com/docs/guide/sandbox-networking) | Yes: Up to 15 ports exposed via `ports`/--publish-port; sandbox.domain(port) returns a public URL (no auth documented). (read at vercel.com/docs/sandbox/sdk-reference) | Yes: exposePort() yields preview URLs on your domain, public unless you add auth. (read at developers.cloudflare.com/sandbox/guides/expose-services/) | Yes: Every Sprite gets a sprites.app URL, org-authenticated by default and switchable to public; one service can hold the HTTP port. (read at docs.sprites.dev/concepts/networking/) | Yes: Public HTTP ports get an auto-TLS code.run domain; IP policies and basic auth can be applied. (read at northflank.com/docs/v1/application/network/configure-ports) | Yes: Preview URLs on *.preview.bl.run, public or private (token by query param or header). (read at docs.blaxel.ai/Sandboxes/Preview-url) | Yes: Tunnels give an HTTPS URL per port, with auth_mode open (public) or authenticated (bearer token). (read at docs.runloop.ai/docs/devboxes/tunnels) |
| **Shared session** (More than one person can attach to the same live session.) | Yes: A teammate attaches to your sandbox and lands in the same panes. ([source](https://remotehost.ai/#product)) | No: Desktop streaming is explicitly single-viewer; no shared terminal session feature is documented. (read at docs.ascii.dev/box/desktop-streaming) | Not documented: No documentation found for multiple humans sharing one live session or terminal. (read at docs.e2b.dev/llms-full.txt) | Not documented: The web terminal is restricted to org members, but simultaneous shared-session use is not documented. (read at www.daytona.io/docs/en/web-terminal) | Not documented: No documentation found for multiple humans attaching to one live Sandbox session; collaboration is documented only for Notebooks. (read at modal.com/llms-full.txt) | Not documented: No documentation of multiple humans attaching to one live terminal; dashboard offers a single-user browser terminal. (read at vercel.com/changelog/connect-to-and-manage-sandboxes-from-the-dashboard) | Yes: Multiple browser clients can attach to one session's terminal, all seeing the same output and able to send input. (read at developers.cloudflare.com/sandbox/concepts/terminal/) | Not documented: TTY sessions can be detached and reattached, but no doc describes several humans attached to one session at once. (read at docs.sprites.dev/working-with-sprites/) | Not documented: No documented shared live terminal or session feature found. (read at northflank.com/docs/v1/application/sandboxes/sandboxes-on-northflank) | Not documented: Sessions are scoped tokens for frontend clients; no documented shared live terminal feature found. (read at docs.blaxel.ai/Sandboxes/Overview) | No: PTY sessions are single-attach; a second concurrent client is rejected. (read at docs.runloop.ai/docs/devboxes/pty) |
| **Clients** (First-party ways in.) | Yes: API, CLI, TUI, web console, desktop app (macOS, Linux, Windows). ([source](https://remotehost.ai/downloads)) | Yes: HTTP API, Python and TypeScript SDKs, CLI, web dashboard; no desktop app documented. (read at box.ascii.dev) | Yes: JS/TS and Python SDKs, E2B CLI, web console; no desktop app. (read at docs.e2b.dev/cli) | Yes: TypeScript, Python, Ruby and Go SDKs, REST API, Daytona CLI, web dashboard; no desktop app. (read at www.daytona.io/docs/en/getting-started) | Yes: Python SDK, JS and Go SDKs (Beta), `modal` CLI, web dashboard; no desktop app. (read at modal.com/docs/guide/sdk-javascript-go) | Yes: JS SDK, Python SDK, `sandbox` CLI (also `vercel sandbox`), and dashboard (Observability > Sandboxes); no desktop app. (read at vercel.com/docs/sandbox) | Yes: TypeScript SDK inside a Worker, Wrangler CLI, and the Cloudflare dashboard; no desktop app. (read at developers.cloudflare.com/containers/get-started/) | Yes: REST API with Go, JavaScript, Python and Elixir SDKs, the `sprite` CLI, and a web dashboard; no desktop app (a VS Code extension exists). (read at sprites.dev/api) | Yes: Web UI, CLI, REST API, JavaScript SDK, GitOps; no desktop app. (read at northflank.com/product/sandboxes) | Yes: REST API, Python and TypeScript SDKs, `bl` CLI, web console, MCP servers; no desktop app. (read at docs.blaxel.ai/Overview) | Yes: API + Python/TypeScript SDKs, CLI (rli), web dashboard (platform.runloop.ai); no desktop app documented. (read at docs.runloop.ai/docs/devboxes/overview) |
| **Billing** (Granularity, and any monthly minimum.) | Partly: Allocated runtime displayed in compute-hours; second-accurate invoice reconciliation is not yet verified. ([source](https://remotehost.ai/pricing)) | Yes: Per-second billing only while running; $20 a month minimum ($20 = 2,000,000 VM-seconds); 7-day free trial. (read at box.ascii.dev) | Yes: Per second while running; Hobby $0 a month, Pro $150 a month base, Enterprise custom. (read at docs.e2b.dev/billing) | Yes: Per second, usage-based, no monthly base fee listed; $200 free credits. (read at www.daytona.io/pricing) | Yes: Per second; Starter $0 plus compute, Team $250 plus compute a month, Enterprise custom. (read at modal.com/pricing) | Yes: Active CPU $0.128/hr and Provisioned Memory $0.0212/GB-hr (iad1), memory billed in 1-minute minimum increments; Hobby free allotment, Pro usage drawn from the $20/month plan credit. (read at vercel.com/docs/sandbox/pricing) | Yes: Billed per 10 ms of active running, on top of the $5 a month Workers Paid plan, which includes a monthly allotment. (read at developers.cloudflare.com/containers/platform/pricing/) | Yes: Metered on actual CPU, RAM and storage while awake, no per-Sprite charge or minimum on pay-as-you-go; optional subscription plans carry a monthly fee. (read at fly.io/pricing/) | Yes: Pro-rated to the second, no base fee stated; free tier includes 2 services; CPU $0.01667 per vCPU-hour, memory $0.00833 per GB-hour. (read at northflank.com/pricing) | Yes: Per second by GB of RAM ($0.0000115 per GB-second active); no monthly minimum stated; up to $200 free credits. (read at blaxel.ai/pricing) | Yes: Per-second usage ($0.00003/CPU-sec, $0.000007/GB-sec); Basic plan is free + usage, Pro is $250/month + usage. (read at www.runloop.ai/pricing) |
| **Regions** (Where a sandbox can run.) | Yes: EU Central (Germany, Finland) and US East (Virginia); Enterprise on your own hosts. ([source](https://remotehost.ai/pricing)) | Yes: EU only: Germany, Finland, France. (read at docs.ascii.dev/box/faq) | Yes: US (default, all plans), EU and APAC (Pro and above, enabled by support). (read at docs.e2b.dev/client) | Yes: Shared regions: United States and Europe; dedicated and bring-your-own-cloud regions via sales. (read at www.daytona.io/docs/en/regions) | Yes: us, eu, ap broad regions plus narrower ones including uk, ca, jp, au, me, sa, af, mx; pinning costs 1.15x to 1.75x. (read at modal.com/docs/guide/region-selection) | Yes: 19 regions: USA (iad1, cle1, pdx1, sfo1), Canada, Brazil, UK, Ireland, France, Germany, Sweden, South Africa, UAE, India, Singapore, Hong Kong, Japan (2), South Korea, Australia; default iad1. (read at vercel.com/docs/sandbox/concepts/regions) | Yes: Runs nearest the request; placement can be constrained to a region (ENAM, WNAM, EEUR, WEUR, APAC, SAM, ME, OC, AFR) or a jurisdiction (eu, fedramp). (read at developers.cloudflare.com/containers/concepts/placement/) | Not documented: No region selection appears in the docs, the CLI or the API's create request. (read at docs.sprites.dev/cli/commands/) | Yes: 17 managed-cloud regions across the US, Canada, Europe (Frankfurt, Netherlands, Zurich), Asia, Australia, South America, Africa; plus bring-your-own-cloud. (read at northflank.com/cloud/northflank/regions) | Yes: Oregon, N. Virginia, London, Frankfurt; not all self-service by default. (read at docs.blaxel.ai/Infrastructure/Regions) | Yes: Homepage claims multi-region and deploy-to-your-cloud (AWS/GCP/Azure), but no list of hosted regions/countries is published in the docs. (read at runloop.ai/) |
| **No session cap** (A session can run as long as you like; partly means a cap on some plans.) | Partly: A session runs up to 24 hours on Starter, Pro and Business, 72 on Max, uncapped on Enterprise; the sandbox itself persists. ([source](https://remotehost.ai/pricing)) | Yes: No hard maximum: the numeric TTL caps at 30 days but ttlSeconds=null disables auto-stop entirely (trial accounts capped at 2 h); synchronous exec calls cap at 600 s. (read at docs.ascii.dev/box/long-running-tasks) | No: 1 hour (Hobby) or 24 hours (Pro) continuous; pause and resume resets the window. (read at docs.e2b.dev/faq/sandbox-lifetime) | Yes: No hard maximum; auto-stop set to 0 runs indefinitely, an optional wall-clock TTL destroys at a deadline. (read at www.daytona.io/docs/en/sandboxes) | No: 24 hours maximum per Sandbox. (read at modal.com/docs/guide/sandbox) | No: Per session: 45 minutes on Hobby, 24 hours on Pro/Enterprise; the limit resets on each stop/resume so total sandbox lifetime is unbounded. (read at vercel.com/docs/sandbox/pricing) | Yes: No fixed maximum runtime, but no run length is guaranteed either (host restarts can stop instances); default idle stop is 10 minutes. (read at developers.cloudflare.com/containers/faq/) | Not documented: No maximum run time is documented; a Task hold keeps a Sprite active for at most 1 hour per task and must be refreshed for longer work. (read at docs.sprites.dev/keeping-sprites-running/) | Not documented: No maximum session duration is documented for sandboxes. (read at northflank.com/docs/v1/application/sandboxes/sandboxes-on-northflank) | Partly: No hard maximum on higher tiers; Tier 0 and Tier 1 enforce expiry of up to 7 and 30 days. (read at docs.blaxel.ai/Sandboxes/Expiration) | Not documented: Default lifetime is 1 hour and keep_alive_time_seconds is configurable; no documented upper cap was found. (read at docs.runloop.ai/docs/devboxes/start-stop) |

## Links

- Pricing: https://remotehost.ai/pricing
- Switch to RemoteHost: https://remotehost.ai/switch
- Start for free: https://console.remotehost.ai
