Application platforms / Heroku alternative

A Heroku alternative for the agent’s persistent execution environment

Heroku is an application platform with deployment, routing, worker processes, managed data, and an add-on ecosystem. A dyno’s local filesystem is ephemeral. Sandbox0 targets the different requirement of an agent that retains installed tools and system changes in its own durable Linux environment.

Reviewed 2026-10-19 · Published by the Sandbox0 team

When Heroku fits

Heroku fits teams deploying an application with its managed release workflow, routing, data services, scaling, and operational ecosystem. Keep it when those application-platform features are the central requirement; a sandbox runtime does not replace them automatically.

When to consider Sandbox0

Consider Sandbox0 for isolated per-user agent execution whose writable RootFS must persist and grow across tasks. It can serve as an agent execution layer while the application and its databases remain on an appropriate hosting platform.

Capabilities

Heroku and Sandbox0: what persists?

Feature comparison with documentation and verification status
Environment and runtime lifetimeHerokuCedar dynos undergo daily cycling after twenty-four hours plus up to 216 minutes of jitter. Fir can opt out of daily cycling; deployments and other restart events remain separate.View evidence ↗Sandbox0ttl and hard_ttl default to 0 (disabled). Configure idle pause and deletion policies for the same persistent sandbox identity; an idle running sandbox still accrues compute charges.Read documentation →
Persistent filesHerokuThe dyno-local filesystem is ephemeral; external databases/object stores are separate services.View evidence ↗Sandbox0The writable RootFS survives successful checkpoints, including software, system configuration, dependencies, and user data.Read documentation →
Whole RootFSHerokuFiles written to the dyno are discarded on stop/restart; deployment artifacts are not a returning writable RootFS.View evidence ↗Sandbox0Persistence extends beyond /workspace to paths such as /usr/local, /etc, and /home. Runtime tmpfs and virtual filesystems are excluded.Read documentation →
Release compute, keep stateHerokuScaling or sleeping dynos is not a retained-filesystem/process checkpoint pause contract.View evidence ↗Sandbox0Pause compute between tasks; resume on available capacity. Default resume starts fresh processes from the saved filesystem.Read documentation →
Memory and process stateHerokuThe reviewed dyno restart model does not retain the prior process or local writable state.View evidence ↗Sandbox0Experimental memory checkpoints can preserve compatible process state. Use memory: true on both pause and resume on a compatible deployment. A filesystem checkpoint alone does not preserve running processes.Read documentation →

Online RootFS growth

On growth-enabled images, Sandbox0 automatically expands the writable RootFS as free space runs low, within a configured sparse logical ceiling up to 64 TiB. Agent processes keep running. Growth is enabled in the qualified Cloud region; confirm activation for other regions. Existing images and snapshots retain their captured storage geometry. The ceiling is logical capacity, not preallocated host disk.

A dyno’s ephemeral scratch filesystem is not automatically growing durable agent storage. Sandbox0’s persistent whole RootFS can retain tools and system configuration across tasks; managed app routing, deployment, and external data services remain separate concerns.

Files while compute is paused

Sandbox0's Files API reads persistent files without resuming compute. Filesystem-only pauses also permit edits; retained-memory pauses are read-only and reject mutations with 409. SSH, SFTP, file watching, and runtime-only mounts require running compute.

See paused file operations →

A running dyno can write files, but restart is a hard state boundary

Heroku gives each dyno a fresh copy of deployed code and an ephemeral writable filesystem. Local files disappear when that dyno stops or restarts and are not shared with another dyno. Persist application data in an external store, and bake reproducible dependencies into deployment artifacts rather than expect ad hoc agent-installed state to return.

Eco sleeping is a cost policy, not a machine checkpoint

Eco provides one shared pool of 1,000 dyno-hours per month for eligible personal apps. Web dynos sleep after 30 minutes without traffic; worker-only apps do not use that web-idle rule. Waking or restarting does not turn the ephemeral disk into a retained RootFS or preserve arbitrary process memory. Always-on service availability and uninterrupted agent process state are different requirements.

Dyno prices cover an application-platform unit

The current Cedar table lists Eco, Basic, and Standard plans with different availability and scaling behavior. Data services, add-ons, AI usage, and private infrastructure can add separate charges. Shared dyno classes are not directly interchangeable with a published vCPU count or another provider’s memory-based runtime rate.

Daily cycling and service availability are different

Cedar dynos cycle after twenty-four hours plus a random delay of up to 216 minutes. Deployments and configuration changes can restart them sooner and reset the timer. Fir offers an option to bypass daily cycling, while other lifecycle events can still restart execution. An always-on service plan therefore does not promise one uninterrupted agent process.

Pricing

Compare billing models, then price your workload

CPU allocation, memory, billing minimums, disk, plan fees, and supported workload differ. These meters are not equal-performance machine quotes. Confirm region, resource units, and included allowances before estimating a total.

Heroku

Pricing reviewed 2026-10-19

Eco personal-app pool
$5 per month for 1,000 shared dyno-hours
One account-wide pool, not 1,000 hours per app; sleep and eligibility rules apply.
Rate source ↗
Cedar Basic dyno
$7 per month
0.5 GB RAM; always-on application dyno, not a durable writable machine.
Rate source ↗
Cedar Standard-1X dyno
$25 per month
0.5 GB RAM; additional platform/scaling features and shared compute behavior differ.
Rate source ↗
Durable data and other services
Separate service/add-on charges
Rate source ↗

These are selected Cedar prices, not a universal Fir/private-space quote. Eco is a shared monthly hour pool; Basic and Standard are different product entitlements. Do not compare their RAM labels as equal CPU throughput or assume database, inference, and add-on costs are included.

Check current Heroku pricing ↗

Sandbox0

$0.015/GiB-hour compute (billed by the second at approximately $0.000004167/GiB-second), plus $0.02/GiB-month of retained incremental RootFS and memory checkpoint data. Shared base images and platform recovery retention are excluded; paused sandboxes accrue storage charges only.

Compute / GiB-hour
$0.015
Retained data / GiB-month
$0.02
Paused compute
$0.00

A 4 GiB agent, 100 running hours

$6.00 compute

4 GiB × 100 hours, billed by the second. Keeping 20 GiB of billable incremental data for a full billing month adds $0.40. CPU is derived from memory by the platform; choose a tier that fits your workload.

Understand storage billing →

Before migrating from Heroku

  1. Separate application hosting and databases from the agent execution task, and export required external data, credentials, files, and deployment configuration.
  2. Package the agent’s compatible tools in a Sandbox0 template and integrate per-user sandbox lifecycle, commands, files, and service access from the application.
  3. Validate repeated system changes, long jobs, RootFS growth, paused file access, and total costs for application hosting, agent compute, data, and model usage.

Common questions

Is Sandbox0 a drop-in Heroku replacement?

Evaluate API compatibility and product scope. These products serve different core workflows, so a change may require a different architecture.

Does keeping files also keep a running agent?

Filesystem state and volatile process state are separate. Sandbox0 requires explicit compatible memory checkpoints to preserve running processes; its default filesystem resume starts fresh processes.

Sources and review scope

The Boat team's Battleships directory is the discovery source. References below describe the product and plan discussed on this page. Check current availability, regional terms and billing units before migrating. Where the cited material does not establish a capability or price, the comparison identifies that uncertainty.

Related comparisons