Find a provider that does everything you need

Runs in your browser. Nothing is sent anywhere.

Isolation
Sizes and regions
Lifecycle
Snapshots and forks
Storage
Idle and waking
Reaching it
Custom domains
Outbound network
Keys and secrets
Ways to drive it
Built-in agents
Teams and accounts
Billing models
Trials and free tiers
The company

Tick one or more capabilities.

    The machine

    What you are actually renting, and how much of it you can choose.

    The machine: capabilities by provider
    CapabilityAgent 37BlaxelBoatboxdCloudflare SandboxDaytonaDigitalOceanE2BInstaBoxLizardModalMorphRuntimeSandboxerSpritesTensorlakeVercel Sandbox
    Its own virtual machineAgent 37: With a catch. gVisor; VM costs 2.5x. The standard machine is a gVisor container, which is not a computer of its own; a true virtual machine with its own kernel is a separate type at 2.5 times the price.Blaxel: Yes. microVMBoat: Yes. full VM, own kernelboxd: Yes. KVM microVMCloudflare Sandbox: Yes. Firecracker microVMDaytona: With a catch. containers by default. By default each sandbox is a container sharing the host's kernel; a real virtual machine is a separate kind you have to choose.DigitalOcean: Yes. full VM, own kernelE2B: Yes. Firecracker microVMInstaBox: Yes. Firecracker microVMLizard: Yes. Firecracker microVMModal: With a catch. gVisor by default. The default is a gVisor container, which is not a computer of its own; a true virtual machine with its own kernel is a separate runtime you have to ask for.Morph: Yes. full VMRuntime: Yes. Firecracker microVMSandboxer: Yes. Cloud Hypervisor microVMSprites: Yes. microVMTensorlake: With a catch. VM, except GPU. The ordinary machines are real virtual machines, but the graphics-card machines you have to ask for are containers instead.Vercel Sandbox: Yes. Firecracker microVM
    Root accessAgent 37: Yes. root on requestBlaxel: Yes. root by defaultBoat: Yes. passwordless sudoboxd: Yes. passwordless sudoCloudflare Sandbox: Yes. every process is rootDaytona: Yes. root in the sandboxDigitalOcean: Yes. root over SSHE2B: Yes. root via template. The default template runs as an ordinary user called user, not root; root has to be set in the template.InstaBox: Yes. passwordless sudoLizard: Yes. root by defaultModal: Yes. always rootMorph: Yes. root shellRuntime: Yes. sudo, then rootSandboxer: Yes. sudo insideSprites: Yes. sudoTensorlake: Yes. sudo or --user rootVercel Sandbox: Yes. full root
    Docker insideAgent 37: With a catch. VM type only. Docker only works on the 2.5x VM type; the default machine cannot run a Docker daemon.Blaxel: Yes. docker-in-sandbox imageBoat: Yes. Docker, Compose, BuildKitboxd: Yes. Docker preinstalledCloudflare Sandbox: With a catch. docker:dind, no iptables. Docker works through a special image, but the firewall tool Docker normally uses is turned off, so container networking is limited.Daytona: Yes. Docker-in-DockerDigitalOcean: Yes. Docker 1-Click or aptE2B: Yes. Docker image documentedInstaBox: Yes. Docker on default imageLizard: Not publishedModal: With a catch. VM runtime only. Docker needs the VM runtime; the default gVisor sandbox cannot run it.Morph: Yes. Docker-in-DockerRuntime: Yes. enable-dockerSandboxer: Yes. Docker preinstalledSprites: With a catch. Docker, with limits. Docker runs, but some containers fail and the usual service manager is missing, so services need the provider's own manager instead.Tensorlake: Yes. needs ubuntu-systemd imageVercel Sandbox: Yes. Docker inside
    Nested virtualisationAgent 37: With a catch. VM type only. Starting a virtual machine inside needs hardware virtualisation, which only the 2.5x VM type has.Blaxel: Not publishedBoat: Yes. /dev/kvm, no flagboxd: Not publishedCloudflare Sandbox: Not publishedDaytona: With a catch. Linux VM class only. Nested virtual machines only work on the Linux VM class, and the feature has to be switched on for your organisation.DigitalOcean: Not publishedE2B: Not publishedInstaBox: Not publishedLizard: Not publishedModal: With a catch. Enterprise plan only. Nested virtual machines are an Enterprise-plan option that must be switched on when the sandbox is created.Morph: With a catch. experimental. Running another operating system or a virtual machine inside is described as experimental.Runtime: Yes. /dev/kvmSandboxer: Yes. /dev/kvmSprites: Not publishedTensorlake: Yes. /dev/kvmVercel Sandbox: Not published
    Your own imageAgent 37: Yes. Dockerfile or registryBlaxel: Yes. Dockerfile imagesBoat: No. one image for everyone. There is no way to bring your own image or build recipe; you install what you need and save a copy of the machine instead.boxd: With a catch. snapshot only. You cannot bring a Docker image; the way to get your own setup is to customise a machine and start new ones from a snapshot of it.Cloudflare Sandbox: Yes. your own DockerfileDaytona: Yes. Dockerfile or OCI imageDigitalOcean: Yes. qcow2/VMDK, up to 100 GBE2B: Yes. any Docker imageInstaBox: With a catch. operator-built templates. You pick from fixed images or a saved copy; a different starting image needs an operator to build one for you.Lizard: No. fixed template catalog. You choose from a fixed list of templates and cannot upload your own image.Modal: Yes. any registry imageMorph: With a catch. templates and snapshots. There is no documented way to import your own image; you start from a template or from a snapshot you saved.Runtime: Yes. custom imagesSandboxer: With a catch. snapshot templates. You cannot start from your own image; you set a machine up and save its disk as a template.Sprites: No. fixed base image. There is no documented way to start a Sprite from your own image.Tensorlake: Yes. Dockerfile buildsVercel Sandbox: Yes. custom image or snapshot
    Any size you likeAgent 37: No. 4 fixed shapes. You choose from four fixed combinations of cores and memory, and anything else comes back as the nearest shape.Blaxel: With a catch. memory only, cores follow. You set the memory and the number of cores is decided for you, so you cannot pick a memory-heavy or core-heavy machine.Boat: No. 4 fixed sizes. There are four fixed sizes and no way to ask for anything between them.boxd: No. 4 fixed sizes. There are four fixed sizes; naming either cores or memory picks the pair.Cloudflare Sandbox: With a catch. custom within 4 cores / 12 GiB. You can set your own cores and memory, but only inside a ceiling of 4 cores and 12 GB, and each core needs at least 3 GB.Daytona: With a catch. presets, custom on request. You pick from fixed sizes, and anything different needs a custom limit arranged through support.DigitalOcean: With a catch. v5: 1-8 shared vCPU. Only v5 Droplets size CPU, memory and disk independently, and v5 is offered in four US datacenters, none in the EU.E2B: With a catch. up to 8 cores / 8 GiB. You can choose cores and memory, but only up to 8 of each; more needs a conversation with support.InstaBox: No. fixed pairs by plan. Each plan sells fixed pairs of cores and memory, and any other combination is refused.Lizard: No. 3 fixed sizes. There are three fixed sizes and no custom option.Modal: Yes. any cores and MiBMorph: Yes. cores, memory, diskRuntime: Yes. any combination in boundsSandboxer: No. 4 fixed sizes. There are four fixed sizes and no custom size.Sprites: No. one shape. There is one shape: 8 cores, memory assigned automatically, and no choice.Tensorlake: Yes. any cores and memoryVercel Sandbox: With a catch. even cores only, 2 GB each. You choose cores in steps of two and each core comes with exactly 2 GB of memory, so memory cannot be set on its own.
    Large machinesAgent 37: With a catch. 4 cores; 16 on the VM type. One page caps every machine at 4 cores, while another prices a 16-core, 32 GB machine on the 2.5x VM type, so the large size is unclear.Blaxel: With a catch. up to 256 GB by arrangement. The standard sizes stop at 16 GB of memory; anything larger is a custom deployment you have to arrange.Boat: Yes. 16 cores / 32 GB. Only on the $100-a-month plan or above.boxd: Yes. 8 cores / 32 GiBCloudflare Sandbox: No. 4 cores / 12 GiB. The largest machine is 4 cores and 12 GB of memory, so a 16-core or 32 GB machine is not available.Daytona: With a catch. 4 cores / 8 GiB; more with GPUs. A normal sandbox stops at 4 cores and 8 GB; larger machines only come attached to graphics cards.DigitalOcean: Yes. up to 64 vCPU / 512 GBE2B: No. 8 cores / 8 GiB. The ceiling is 8 cores and 8 GB of memory, so a 32 GB machine cannot be bought.InstaBox: Yes. 32 cores / 64 GiB. Only on the $500-a-month plan or above.Lizard: No. 8 cores / 16 GB. The largest machine is 8 cores and 16 GB, so a 32 GB machine is not offered.Modal: Yes. no published ceilingMorph: With a catch. ceiling not published. The plan allows up to 1024 cores across the account, but the largest single machine is not published.Runtime: Yes. 16 cores / 64 GiBSandboxer: Yes. 16 cores / 32 GB. Only on the $100-a-month plan or above.Sprites: No. 8 cores / 16 GB. The machine is fixed at 8 cores and up to 16 GB of memory, below the 32 GB mark.Tensorlake: Yes. 16 cores / 64 GB. Only on the $250-a-month plan or above.Vercel Sandbox: With a catch. 32 cores on Enterprise only. Machines above 8 cores and 16 GB need the Enterprise plan; the self-serve plans stop there.
    Resize while runningAgent 37: With a catch. resize, but memory is lost. You can change the size without stopping the machine, but it may move to another host and everything running in memory is lost.Blaxel: With a catch. memory change resets it. You can change the memory, but the sandbox resets, so anything running is lost.Boat: No. stop first. Changing the size means stopping the machine and starting it again.boxd: No. reboot to apply. A size change reboots the machine, so running programs are lost.Cloudflare Sandbox: No. no resize. The size is fixed when the sandbox is deployed; changing it means deploying again.Daytona: With a catch. grow only, support must enable. You can add cores and memory while it runs, but you cannot shrink them, and the feature has to be switched on by support first.DigitalOcean: No. power off first. Resizing powers the Droplet off first, and the disk can never be made smaller.E2B: No. fixed at creation. The machine keeps the size it was created with; there is no resize.InstaBox: With a catch. only while stopped. Cores and memory change only while the machine is stopped, and take effect at its next start; the free plan cannot resize at all.Lizard: No. fixed size. The size is chosen when the sandbox is created and cannot be changed.Modal: No. fixed at creation. Resources are fixed when the sandbox is created; changing them means starting a new one.Morph: With a catch. disk live; cores need reboot. Disk space can grow while the machine runs, but changing cores or memory means restarting it.Runtime: With a catch. memory, while paused. You can change the memory only while the machine is paused, not while it is working.Sandboxer: No. stop and recreate. There is no way to change a running machine's size; you create a new one and copy your files across.Sprites: No. one fixed shape. The shape is fixed, so there is nothing to resize.Tensorlake: Yes. cores, memory, disk liveVercel Sandbox: No. fixed for the session. The size is set when the sandbox is created and cannot be changed during its life.
    GPUsAgent 37: No. no GPU. No graphics processor is offered on any machine or plan.Blaxel: Not publishedBoat: No. no GPU. No size has a graphics processor, at any price.boxd: No. no GPU. There is no graphics processor option.Cloudflare Sandbox: No. no GPU. There is no graphics processor option; the largest machine is 4 cores of CPU.Daytona: Yes. up to 8 GPUsDigitalOcean: Yes. H100 $4.41/h; RTX 4000 $0.76/hE2B: No. CPU only. There is no graphics processor option in any plan, tool or template.InstaBox: No. no GPU. No graphics processor is offered on any plan.Lizard: No. CPUs only. Sandboxes run on processors only; there is no graphics option.Modal: Yes. up to 8 GPUsMorph: Not publishedRuntime: No. no GPU. Runtime lists a GPU request as an example of something it cannot do.Sandboxer: No. no GPU. There are no graphics processors.Sprites: No. no GPU. Sprites are not a graphics environment; Fly sells graphics machines as a separate product.Tensorlake: With a catch. by request. Graphics machines exist but you have to ask on Slack to be given access, and they cannot be resized or run virtual machines inside.Vercel Sandbox: No. no GPU. No graphics processor option is published for sandboxes.
    Choose the regionAgent 37: Yes. 3 regionsBlaxel: With a catch. 4 regions, not all open. Four regions are listed, but not all of them are available to self-service accounts without asking.Boat: No. no region choice. Machines run in Germany, Finland or France, and you cannot say which.boxd: No. one EU region. There is one region, in Germany, and no way to choose another.Cloudflare Sandbox: No. placement is automatic. Cloudflare puts each sandbox near the request, and a sandbox cannot be pinned to a location.Daytona: Yes. US or EUDigitalOcean: Yes. 16 datacentersE2B: With a catch. 4 regions, support needed. Four regions exist, but outside the United States you have to contact support to be switched on.InstaBox: No. no region setting. There is no region setting anywhere in the tools or docs, so you cannot ask for a European machine.Lizard: Yes. 2 regionsModal: Yes. broad or narrow regionsMorph: Not publishedRuntime: No. one region. Everything runs in one place, in Virginia in the United States.Sandboxer: Yes. US East or EU CentralSprites: No. placement automatic. You cannot choose where a Sprite runs; placement is decided for you.Tensorlake: Yes. US or EUVercel Sandbox: Yes. 19 regions
    Runs in the EUAgent 37: With a catch. France, backups in US. There is a French region, but backups and the account's control records are kept in the United States.Blaxel: Yes. London and FrankfurtBoat: Yes. Germany, Finland, Franceboxd: Yes. GermanyCloudflare Sandbox: With a catch. EU locations, cannot pin. Cloudflare has European locations, but a sandbox cannot be required to stay in one, so it may run outside the EU.Daytona: Yes. eu regionDigitalOcean: Yes. Amsterdam, FrankfurtE2B: Yes. europe-west1InstaBox: No. US only. There is no European region and no way to ask for one.Lizard: Yes. EU West (Limburg)Modal: Yes. eu regionsMorph: Not publishedRuntime: No. US only. Everything runs in Virginia in the United States.Sandboxer: Yes. HelsinkiSprites: With a catch. EU possible, not chosen. A Sprite may run in Europe because placement follows you, but you cannot require it to.Tensorlake: Yes. EU endpointVercel Sandbox: Yes. European regions

    YesWith a catchNoNot publishedHover or select a mark to see the catch.

    State and storage

    What survives when the machine is not running, and where it lives.

    State and storage: capabilities by provider
    CapabilityAgent 37BlaxelBoatboxdCloudflare SandboxDaytonaDigitalOceanE2BInstaBoxLizardModalMorphRuntimeSandboxerSpritesTensorlakeVercel Sandbox
    Pause keeps memoryAgent 37: With a catch. A sleep usually comes back where it left off, but a wake that has to rebuild starts fresh and loses what was running.Blaxel: Yes. Standby: 25 ms. Network connections do not survive; only files and processes do.Boat: Noboxd: Yes. 85 ms wake. A hibernated machine wakes in about 85 ms; standby is faster still.Cloudflare Sandbox: NoDaytona: With a catch. Only the full virtual machine can be paused with memory; a container sandbox loses what was running.DigitalOcean: With a catch. Managed Agents only. A Droplet has no pause: powering off loses memory and running processes and still bills in full. Only Managed Agents sessions pause and resume.E2B: YesInstaBox: With a catch. RAM; 1 s resume. A resume can come back without the running programs, and the machine reports that it did.Lizard: Yes. A fast pause keeps only the files, so it is the option to avoid if work must survive.Modal: NoMorph: YesRuntime: YesSandboxer: With a catch. 2 min window. Memory comes back only if a machine of the same processor type is free within two minutes; otherwise it boots fresh with the files.Sprites: Yes. 100–500 ms. After a longer idle spell it is stopped and memory is dropped, and you are not told which happened.Tensorlake: Yes. Only named sandboxes can be suspended; an unnamed one runs until it ends.Vercel Sandbox: No
    Pre-started poolsAgent 37: NoBlaxel: NoBoat: Noboxd: NoCloudflare Sandbox: NoDaytona: With a catch. Pools exist, but they must be switched on for your organisation by asking support.DigitalOcean: With a catch. autoscale pools. Autoscale pools keep Droplets running behind a load balancer, but there is no way to hand a pre-started machine to a job.E2B: NoInstaBox: NoLizard: Not publishedModal: With a catch. You have to build and run the pool yourself; there is no setting that keeps machines waiting.Morph: NoRuntime: With a catch. There is no pool to size or refill; you keep spare paused machines yourself and wake one for each task.Sandboxer: With a catch. The provider keeps machines ready, but you cannot say how many or which setup; a size the region does not keep boots instead.Sprites: NoTensorlake: YesVercel Sandbox: No
    Starts in under a secondAgent 37: Not publishedBlaxel: Yes. Under 25 msBoat: No. A few seconds. A resume or a new machine takes a few seconds, not under one.boxd: Yes. Sub-millisecondCloudflare Sandbox: Not publishedDaytona: Yes. Under 90 msDigitalOcean: With a catch. ~1 min; 1 s sessions. A Droplet takes about a minute to boot; only Managed Agents sessions start in about a second.E2B: Not publishedInstaBox: With a catch. About a second. A resume usually takes about a second, which is not under one.Lizard: Yes. 228 ms medianModal: Yes. Sub-secondMorph: Not publishedRuntime: Yes. About 0.1 sSandboxer: Yes. 0.18 s medianSprites: Yes. 100–500 msTensorlake: Yes. Hundreds of msVercel Sandbox: Yes. Sub-second
    Snapshots of filesAgent 37: With a catch. No snapshots; 7 backups. There is no snapshot you can save under a name; the only restore points are seven nightly copies of the home folder.Blaxel: With a catch. Snapshots work but are in private preview, so the provider does not recommend them for production.Boat: Yes. Every minuteboxd: YesCloudflare Sandbox: With a catch. 20 GB; 30 days. Snapshots are in public beta, hold at most 20 GB, and are deleted 30 days after they were made or last used.Daytona: YesDigitalOcean: Yes. $0.06/GB-monthE2B: YesInstaBox: YesLizard: YesModal: Yes. 30 days defaultMorph: YesRuntime: YesSandboxer: YesSprites: YesTensorlake: YesVercel Sandbox: Yes. 30-day default
    Snapshots with memoryAgent 37: NoBlaxel: With a catch. A snapshot keeps memory and running programs, but the whole feature is in private preview.Boat: Noboxd: Yes. Under 200 msCloudflare Sandbox: NoDaytona: With a catch. Memory snapshots are only for full virtual machines; container sandboxes get files only.DigitalOcean: No. disk only. A snapshot copies the disk, not memory or running processes.E2B: YesInstaBox: NoLizard: YesModal: With a catch. Experimental; 7 days. Memory snapshots are still labelled experimental and are deleted after seven days, which cannot be extended.Morph: YesRuntime: YesSandboxer: YesSprites: NoTensorlake: YesVercel Sandbox: No
    Copy a running machineAgent 37: Yes. The copy has the same files, but nothing that was running keeps running.Blaxel: With a catch. You can copy a running machine, but the feature is in private preview.Boat: Yes. The copy has the same files, but nothing that was running keeps running.boxd: Yes. 100–200 msCloudflare Sandbox: NoDaytona: YesDigitalOcean: With a catch. fork from a checkpoint. Managed Agents forks a new session from a checkpoint; nothing copies a running Droplet.E2B: Yes. Up to 20 at once. The source pauses while it is copied and its open connections drop.InstaBox: With a catch. A few seconds. A copy is made in a few seconds and carries the files but not the running programs.Lizard: Yes. 1–100 copies. A fork is refused when the source has a volume attached.Modal: NoMorph: YesRuntime: Yes. The source is frozen while the copy is captured, so it pauses for a moment.Sandboxer: With a catch. A fork copies the files and boots fresh; the running programs are not copied.Sprites: NoTensorlake: YesVercel Sandbox: With a catch. A fork starts from a snapshot of the current state, and taking one stops the session it copies.
    Pick an older snapshotAgent 37: With a catch. 7 nightly backups. You can pick one of seven nightly copies, but you cannot save a snapshot of your own and return to it later.Blaxel: YesBoat: With a catch. You cannot roll a machine back to an older point; an older saved copy can only start a new machine.boxd: NoCloudflare Sandbox: With a catch. 30-day expiry. You have to store each snapshot’s ID yourself, and every snapshot is deleted 30 days after it was made or last used.Daytona: YesDigitalOcean: Yes. kept until deletedE2B: YesInstaBox: YesLizard: YesModal: YesMorph: YesRuntime: YesSandboxer: With a catch. The automatic copies keep only the latest two; anything older you have to save yourself under a name.Sprites: Yes. v0, v1, v2…Tensorlake: YesVercel Sandbox: Yes. Keep last 1–10
    Reusable templatesAgent 37: YesBlaxel: YesBoat: Yesboxd: YesCloudflare Sandbox: With a catch. You can start any number of machines from an image you build, but saving a running machine as a reusable template only works through snapshots, which are in beta, keep files only, and expire after 30 days.Daytona: YesDigitalOcean: Yes. snapshot -> new DropletE2B: YesInstaBox: YesLizard: YesModal: YesMorph: YesRuntime: YesSandboxer: YesSprites: NoTensorlake: YesVercel Sandbox: Yes
    Automatic backupsAgent 37: Yes. Nightly; 7 slots. Covers only /home/node, and a restore puts the files back in place.Blaxel: NoBoat: With a catch. Every minute. These are automatic snapshots kept with the machine, not an off-site backup, and only the newest one is kept, so there is no history to go back through.boxd: Yes. Off by default; you turn a schedule on for each machine.Cloudflare Sandbox: With a catch. On stop, 30 days. A snapshot can be saved automatically when a sandbox stops, but there is no schedule and snapshots expire after 30 days.Daytona: NoDigitalOcean: Yes. 20% weekly, 30% dailyE2B: NoInstaBox: NoLizard: NoModal: NoMorph: NoRuntime: Yes. Daily, or your cron. Backups cover volumes only; a sandbox's own disk has no copy.Sandboxer: With a catch. Every 10 minutes. These are automatic snapshots kept on the same host as the machine, not an off-site backup, so they do not survive losing that host.Sprites: NoTensorlake: With a catch. Only the storage you mount is saved automatically; a machine's own disk has no copy.Vercel Sandbox: With a catch. On every stop. A copy is saved each time the machine stops, but there is no schedule and only the last few are kept.
    Files survive a stopAgent 37: Yes. The disk bills at $0.09 per GB-month until you delete the instance.Blaxel: YesBoat: Yes. 14 days. The disk is deleted 14 days after a stop unless you saved it.boxd: YesCloudflare Sandbox: NoDaytona: YesDigitalOcean: Yes. disk survives power-offE2B: NoInstaBox: YesLizard: NoModal: NoMorph: NoRuntime: Yes. A stopped disk is billed and kept until you delete the sandbox.Sandboxer: YesSprites: Yes. 100 GBTensorlake: With a catch. 48 h after terminate. A terminated machine can be brought back for 48 hours; after that its files are gone.Vercel Sandbox: Yes
    Separate volumesAgent 37: NoBlaxel: Yes. Only one volume attaches to a sandbox, and it attaches to one sandbox at a time.Boat: Noboxd: Yes. A disk attaches to one machine at a time and lives on one host.Cloudflare Sandbox: With a catch. 20 GB disk. There is no separate disk that outlives the machine; a bucket can be mounted, and a snapshot lasts 30 days.Daytona: Yes. Volumes are network filesystems, not block disks, so a database table store is a poor fit.DigitalOcean: Yes. 1 GiB-16 TiB, $0.10/GiB-moE2B: With a catch. Volumes exist but are in private beta and need access from support.InstaBox: NoLizard: Yes. 1–50 GB. A volume attaches to one sandbox at a time and lives on one node.Modal: Yes. Up to 1 TiB freeMorph: With a catch. The volume is object storage reached over S3, not a disk attached to the machine.Runtime: Yes. Up to 4Sandboxer: NoSprites: NoTensorlake: YesVercel Sandbox: Yes
    One volume, several machinesAgent 37: NoBlaxel: With a catch. Shared storage is a separate product called Agent Drive; a volume itself serves one machine at a time.Boat: Noboxd: NoCloudflare Sandbox: With a catch. The shared option is a bucket, not a disk, so files are not locked and two machines can overwrite each other.Daytona: Yes. Writes are not transactional, so two machines writing one file means the last write wins.DigitalOcean: No. one Droplet at a time. A volume attaches to one Droplet at a time, so two agents cannot share it.E2B: With a catch. One volume can serve several sandboxes, but volumes are in private beta.InstaBox: NoLizard: NoModal: Yes. Hundreds of writers. Two machines writing the same file means the last write wins.Morph: With a catch. Sharing happens through an S3 bucket, not a disk several machines mount.Runtime: With a catch. Only one machine can write a volume at a time; others can hold a read-only copy taken when they start.Sandboxer: NoSprites: NoTensorlake: Yes. Same-path writes are last-writer-wins, so two machines editing one file can clash.Vercel Sandbox: With a catch. Only one machine can write a drive; others get a read-only copy taken when they mount it.
    Mount outside storageAgent 37: NoBlaxel: NoBoat: Noboxd: NoCloudflare Sandbox: YesDaytona: YesDigitalOcean: With a catch. S3 client, not a mount. Spaces is S3-compatible, but DigitalOcean does not document mounting a bucket as a folder on a Droplet.E2B: With a catch. Mounting a bucket needs a custom template with the right filesystem tool installed; it is not built in.InstaBox: NoLizard: NoModal: YesMorph: NoRuntime: YesSandboxer: NoSprites: NoTensorlake: NoVercel Sandbox: No
    Large diskAgent 37: No. 80 GB max. The largest shape offers 80 GB of disk, short of 100 GB.Blaxel: Not publishedBoat: Yes. 251 GBboxd: Yes. 100 GBCloudflare Sandbox: No. 20 GB max. The largest disk is 20 GB, short of 100 GB.Daytona: No. 10 GiB cap. The organisation ceiling is 10 GiB of disk per sandbox, though some Windows presets list 50 GiB.DigitalOcean: Yes. 16 TiB volumeE2B: No. 20 GiB max. The largest included disk is 20 GiB, short of 100 GB.InstaBox: Yes. Up to 1024 GiBLizard: No. 50 GB max. The largest size offers 50 GB of disk, short of 100 GB.Modal: Yes. 512 GiBMorph: Not publishedRuntime: Yes. 400 GiBSandboxer: Yes. 251 GBSprites: Yes. 100 GBTensorlake: Yes. 100 GB rootVercel Sandbox: Yes. 1 TiB drive

    YesWith a catchNoNot publishedHover or select a mark to see the catch.

    Staying on

    The timers between an agent that answers and one that has quietly stopped.

    Staying on: capabilities by provider
    CapabilityAgent 37BlaxelBoatboxdCloudflare SandboxDaytonaDigitalOceanE2BInstaBoxLizardModalMorphRuntimeSandboxerSpritesTensorlakeVercel Sandbox
    Can stay on indefinitelyAgent 37: Yes. Auto-sleep is off unless you turn it on.Blaxel: With a catch. 7 or 30 days on low tiers. On the two lowest tiers a sandbox is deleted after 7 or 30 days; only higher tiers allow it to wait indefinitely.Boat: Yesboxd: Yes. 4 h default, or neverCloudflare Sandbox: With a catch. 6 h max. An instance stops when nothing has used it for up to 6 hours, the setting is lost on a restart, and Cloudflare promises no set running time.Daytona: YesDigitalOcean: Yes. no session limitE2B: With a catch. 1 h Hobby, 24 h Pro. A sandbox cannot run longer than an hour on the free plan or 24 hours on Pro, whether or not it is busy.InstaBox: With a catch. Paid plans only. Only paid plans can switch off the idle pause; on the free plan a machine always pauses after 30 idle minutes, though nothing is deleted and it wakes when used.Lizard: YesModal: With a catch. 24 h maximum. No sandbox can run longer than 24 hours, however busy it is.Morph: YesRuntime: YesSandboxer: YesSprites: With a catch. 30 s idle. A Sprite pauses about 30 seconds after its last activity; a task can hold it awake, but you cannot switch the pause off.Tensorlake: With a catch. 2 h free, 24 h credits. A free sandbox stops after 2 idle hours and a credit-plan sandbox after 24; only Pro and Enterprise are unlimited.Vercel Sandbox: With a catch. 45 min Hobby, 24 h Pro. A single session cannot last beyond 45 minutes on the free plan or 24 hours on paid plans.
    Choose the idle timeoutAgent 37: Yes. 5 min to 1 day, or offBlaxel: NoBoat: With a catch. 1 h from start. The clock counts from when the machine started, not from when it was last used, so a busy machine is stopped too.boxd: Yes. Any seconds, or offCloudflare Sandbox: With a catch. Up to 6 h. You can set the wait up to 6 hours, but the setting is lost when the object restarts and there is no never.Daytona: Yes. Minutes, or 0DigitalOcean: Yes. nothing stops itE2B: With a catch. 5 min, max 24 h. The clock counts down from creation and commands do not reset it, and the default action is to kill rather than pause.InstaBox: With a catch. 5–30 min or off. Only paid plans can choose; the free plan is fixed at 30 minutes and cannot turn it off.Lizard: NoModal: With a catch. You can set an idle timeout, but reaching it ends the machine rather than pausing it.Morph: With a catch. You can switch the idle pause off, but the docs never say how long it waits or what values you can set.Runtime: Yes. 300 s, or neverSandboxer: Yes. 15–120 min, or 0Sprites: NoTensorlake: YesVercel Sandbox: No
    Wakes on a requestAgent 37: YesBlaxel: YesBoat: Noboxd: YesCloudflare Sandbox: With a catch. A request starts a fresh machine, not the one that stopped; files come back only from a snapshot your code saved.Daytona: NoDigitalOcean: With a catch. Managed Agents resume. A powered-off Droplet stays off until something calls the API; only Managed Agents sessions wake on new input.E2B: YesInstaBox: With a catch. Only a machine the platform paused for being idle wakes on a request; one you paused yourself has to be resumed.Lizard: NoModal: NoMorph: YesRuntime: YesSandboxer: YesSprites: YesTensorlake: YesVercel Sandbox: Yes
    Scheduled runsAgent 37: YesBlaxel: Yes. 100 per sandboxBoat: Noboxd: With a catch. A schedule runs inside the machine, so it only fires while that machine is awake.Cloudflare Sandbox: YesDaytona: NoDigitalOcean: With a catch. cron inside the VM. Scheduling means cron inside a Droplet that is already on; nothing starts a machine on a timer, and scheduled triggers exist only for Managed Agents sessions.E2B: NoInstaBox: NoLizard: NoModal: YesMorph: NoRuntime: YesSandboxer: With a catch. A cron or timer runs inside the machine, so it never fires while the machine is stopped or paused.Sprites: NoTensorlake: NoVercel Sandbox: Yes

    YesWith a catchNoNot publishedHover or select a mark to see the catch.

    Access and network

    How you and your agent reach each other, and who else can.

    Access and network: capabilities by provider
    CapabilityAgent 37BlaxelBoatboxdCloudflare SandboxDaytonaDigitalOceanE2BInstaBoxLizardModalMorphRuntimeSandboxerSpritesTensorlakeVercel Sandbox
    Public link to a portAgent 37: Yes. Any portBlaxel: Yes. Public or privateBoat: Yes. Up to 50 portsboxd: Yes. No sign-in at allCloudflare Sandbox: With a catch. Through your Worker. There is no address for the machine itself; you publish a small program of your own and anyone who can open that address gets in.Daytona: Yes. public flagDigitalOcean: Yes. public IPv4 per DropletE2B: Yes. Anyone with the linkInstaBox: Yes. 16 portsLizard: No. Every preview link needs the machine's access token, so there is no open address to share.Modal: With a catch. Open raw port only. A normal web port needs a connect token; only a port exposed as raw traffic is open to anyone.Morph: Not publishedRuntime: Yes. Paid top-upSandboxer: Yes. --publicSprites: Yes. public or org-onlyTensorlake: Yes. Per-port switchVercel Sandbox: Yes. Exposed ports
    Private linkAgent 37: Yes. Key or signed linkBlaxel: Yes. Token per previewBoat: Yes. Token in linkboxd: No. Every machine address is open to the internet, and the provider offers no token or login to put in front of it.Cloudflare Sandbox: With a catch. Login is your code. You have to write the login check in your own small program; the machine brings no token or password of its own.Daytona: Yes. Token or signed linkDigitalOcean: With a catch. firewall by address. A cloud firewall can limit access to your own addresses, but there is no token or login link in front of a port.E2B: No. There is no built-in lock: anyone who has the link can open it.InstaBox: Yes. Token in linkLizard: Yes. One token per machineModal: Yes. Connect tokenMorph: Not publishedRuntime: Yes. Token by defaultSandboxer: Yes. Token in linkSprites: Yes. Org tokenTensorlake: Yes. Project keyVercel Sandbox: No. An exposed port is open to anyone with the link; there is no token or login in front of it.
    Real SSHAgent 37: Yes. Over one connectionBlaxel: No. There is no SSH address or SSH server; the only shell is the provider's own terminal.Boat: Yes. Port 22boxd: Yes. Real SSHCloudflare Sandbox: With a catch. One provider tool. You cannot point a normal SSH client at the machine; the only way in is a Cloudflare command-line tool.Daytona: Yes. Token, 60 minDigitalOcean: Yes. standard SSHE2B: With a catch. You build the image. SSH only works if you build a custom image with an SSH server and a relay inside it.InstaBox: Yes. Gateway, short certLizard: With a catch. Own client only. Its shell command works, but it is the provider's own client rather than a standard SSH connection, so ordinary SSH tools cannot connect.Modal: With a catch. Install it yourself. The machine has no SSH server; you have to install one and open a port for it.Morph: Yes. Built inRuntime: With a catch. Through the CLI. The connection goes through the provider's own command rather than a plain SSH address.Sandboxer: Yes. sshEndpointSprites: With a catch. Install a server. You must install an SSH server inside the machine and reach it through the provider's proxy.Tensorlake: Yes. Standard sshVercel Sandbox: With a catch. SSH-like shell. The command line is the provider's own tool that feels like SSH; a standard SSH client cannot connect.
    Terminal in the browserAgent 37: Yes. Port 7681Blaxel: Yes. Console tabBoat: Not publishedboxd: Yes. Console terminalCloudflare Sandbox: With a catch. You build it. The provider gives you code for a terminal you host yourself, not a terminal on its own website.Daytona: Yes. DashboardDigitalOcean: Yes. Droplet ConsoleE2B: Not publishedInstaBox: Yes. DashboardLizard: Yes. Terminal tabModal: Not publishedMorph: Not publishedRuntime: Yes. ConsoleSandboxer: Yes. Dashboard tabSprites: Not publishedTensorlake: Not publishedVercel Sandbox: Yes. Dashboard tab
    Tunnel to your computerAgent 37: Yes. ssh -LBlaxel: Not publishedBoat: Yes. ssh -Lboxd: Yes. ssh -LCloudflare Sandbox: No. There is no way to map a port inside the machine onto your own computer.Daytona: Not publishedDigitalOcean: Yes. ssh -L, no serviceE2B: Not publishedInstaBox: Yes. ssh -L, yours onlyLizard: Not publishedModal: Not publishedMorph: Yes. ssh -LRuntime: Yes. Through the APISandboxer: Yes. sbx forwardSprites: Yes. sprite proxyTensorlake: Yes. Local tunnelVercel Sandbox: No. Exposed ports are reachable on the internet, but there is no documented way to map one onto your own computer.
    Non-web portsAgent 37: No. Only web traffic gets through; a database or game server cannot be reached directly.Blaxel: Not publishedBoat: Yes. IPv6 only sometimesboxd: Yes. 3 forwardsCloudflare Sandbox: No. Web traffic only: no other kind of connection can be made to the machine from outside.Daytona: Not publishedDigitalOcean: Yes. any port except SMTPE2B: Not publishedInstaBox: With a catch. Preview, 5 per workspace. Raw non-web traffic is in a preview only administrators can use, and later will be paid-plan only with five ports per workspace.Lizard: No. Preview links carry web traffic only, so a database or game port cannot be published.Modal: Yes. Raw tunnelsMorph: Not publishedRuntime: Yes. 5 per machineSandboxer: With a catch. Through SSH only. There is no public non-web port; you reach one by opening a tunnel from your own computer.Sprites: With a catch. Through your computer. You can map a database port onto your own computer, but there is no public address for non-web traffic.Tensorlake: With a catch. Through a tunnel. The public address carries web traffic and SSH only; a database needs a tunnel from your own computer.Vercel Sandbox: No. Only web ports can be exposed, so a database or game server cannot be reached from outside.
    Your own domainAgent 37: With a catch. Dedicated domain only. You must hand over the whole domain and the records that direct it, so it cannot also run your website or email, and it needs $100 of top-ups first.Blaxel: Yes. Wildcard subdomainsBoat: No. Custom domains are explicitly unsupported; a redirect from your domain to the provider's name does not work either.boxd: Yes. Per machine or orgCloudflare Sandbox: With a catch. Through your Worker. You point a catch-all address at your own small program rather than at the machine, so routing is yours to run.Daytona: With a catch. Own proxy. You have to run your own forwarding service under your domain; the provider does not attach the domain for you.DigitalOcean: Yes. DNS + A recordE2B: With a catch. Own proxy. You have to run a server of your own in front of the machine to use your domain.InstaBox: Not publishedLizard: With a catch. Apps only. Custom domains work for deployed apps, not for a sandbox's preview link.Modal: With a catch. Team+, manual. Only Team and Enterprise plans get it, and you must move the domain's name servers and ask support to finish setup.Morph: Not publishedRuntime: Yes. Your hostnameSandboxer: With a catch. CNAME and your certificate. You point a name at the provider's address and supply the security certificate yourself; a native feature is only planned.Sprites: Not publishedTensorlake: Not publishedVercel Sandbox: Not published
    Automatic HTTPSAgent 37: Yes. Platform certificateBlaxel: Yes. Issued per domainBoat: No. There is no custom domain, so there is no certificate for the provider to manage.boxd: Yes. AutomaticCloudflare Sandbox: Yes. Zone certificateDaytona: No. You run the forwarding service, so you also get and renew the certificate.DigitalOcean: With a catch. LB/Spaces only. Automatic certificates exist only on Load Balancers and Spaces; a plain Droplet needs Caddy or Certbot.E2B: No. The certificate is obtained by the server you run in front of the machine, not by the provider.InstaBox: Not publishedLizard: With a catch. Apps only. Certificates are handled for deployed apps, but a sandbox preview has no domain to certify.Modal: With a catch. Team+, manual. Certificates come with the domain, but only on Team and Enterprise plans and after a manual setup step.Morph: Not publishedRuntime: Yes. Let's EncryptSandboxer: No. You point the name and terminate the certificate yourself.Sprites: Not publishedTensorlake: Not publishedVercel Sandbox: Not published
    Outbound data includedAgent 37: Not published. No rate publishedBlaxel: Yes. Included in planBoat: Yes. $0boxd: Not publishedCloudflare Sandbox: Yes. 1 TB a monthDaytona: Not publishedDigitalOcean: Yes. 500 GiB-11,000 GiBE2B: Not publishedInstaBox: Yes. 100 GiB freeLizard: Yes. 2 TB per 30 daysModal: Yes. 1 TiB, then $0.04Morph: Not published. Charged, no rateRuntime: Yes. 100 GiB a monthSandboxer: Yes. Not billedSprites: Yes. Not meteredTensorlake: Not publishedVercel Sandbox: With a catch. 20 GB a month. Only 20 GB a month is included; beyond that, traffic costs $0.15 a gigabyte.
    Allow only some sitesAgent 37: Yes. 100 IPv4 entriesBlaxel: With a catch. Proxy filter. The filter only sees programs that use its settings; anything else gets out unless stricter enforcement is switched on.Boat: With a catch. Firewall inside. The rules live inside the machine, where the agent has administrator rights and can undo them, and they are lost when the machine is restored.boxd: Yes. 256 entriesCloudflare Sandbox: Yes. Hosts or handlerDaytona: Yes. Domain or address listDigitalOcean: Yes. firewall by addressE2B: Yes. Domain or address listInstaBox: No. There is no setting that limits which sites a machine may reach.Lizard: Not publishedModal: Yes. Domain or address listMorph: Not publishedRuntime: Yes. Allow listSandboxer: No. There is no allowlist or outbound firewall setting; every machine can reach the whole internet.Sprites: Yes. Domain listTensorlake: Yes. Domains or addressesVercel Sandbox: Yes. Domain or address list
    Turn the internet offAgent 37: Yes. deny-allBlaxel: Not publishedBoat: With a catch. Firewall inside. You can block traffic with the machine's own firewall, but the agent has administrator rights there and the rules are lost on restore.boxd: Yes. Allowlist noneCloudflare Sandbox: Yes. Off by defaultDaytona: Yes. block-allDigitalOcean: Yes. deny-all egress ruleE2B: Yes. On/off switchInstaBox: Not publishedLizard: Not publishedModal: Yes. block_networkMorph: Not publishedRuntime: Yes. internet: falseSandboxer: With a catch. Firewall inside. There is no provider setting; you block traffic with the machine's own firewall, which the agent can undo.Sprites: With a catch. Deny every domain. You can deny every domain by policy, but the machine keeps its network and the rule works by refusing name lookups.Tensorlake: Yes. --no-internetVercel Sandbox: Yes. deny-all
    Fixed outgoing IPAgent 37: Not publishedBlaxel: With a catch. Private preview. Dedicated addresses are in a private preview you must ask to join, and can only be attached when a machine is created.Boat: Not publishedboxd: Not publishedCloudflare Sandbox: Not publishedDaytona: Not publishedDigitalOcean: Yes. public IPv4 for its lifeE2B: No. There is no dedicated or fixed outbound address on any plan, including Enterprise.InstaBox: Not publishedLizard: Not publishedModal: With a catch. Team+, 5 addresses. Only Team and Enterprise plans get it, and each account can create one or three gateways holding up to five addresses each.Morph: Not publishedRuntime: Yes. $5 a monthSandboxer: No. Shared host address. Outbound traffic shares the host machine's address with every other sandbox on it, so other services see one shared address.Sprites: Not publishedTensorlake: Not publishedVercel Sandbox: Not published
    Stored secretsAgent 37: Yes. Environment variablesBlaxel: Yes. Variables and secretsBoat: Yes. Variables and filesboxd: Yes. Org-wideCloudflare Sandbox: With a catch. Worker bindings. There is no saved secret inside the machine; you keep the value in your own small program and add it on the way out.Daytona: Yes. Stored secretsDigitalOcean: With a catch. Managed Agents only. A Droplet has no secret store, so keys sit in cloud-init, files or environment variables; only Managed Agents stores and injects secrets.E2B: Yes. Per projectInstaBox: Yes. Org secretsLizard: Yes. At create timeModal: Yes. Inline secretsMorph: Yes. Template managerRuntime: Yes. Stored onceSandboxer: Yes. Variables and filesSprites: Not publishedTensorlake: No. There is no saved secret: you pass the value with each command or session.Vercel Sandbox: With a catch. Passed each time. There is no saved list of secrets for a sandbox; you pass the values each time you create or run one.
    Secrets the agent cannot readAgent 37: No. There is no service that adds keys for you; a key you give the machine is a key the agent can print.Blaxel: With a catch. Public preview. The feature is a public preview, and programs that ignore its settings can bypass it.Boat: With a catch. Model keys only. Only model-provider keys go through the key service; other API keys are ordinary variables the agent can read.boxd: Yes. Stand-in stringCloudflare Sandbox: Yes. Added by your WorkerDaytona: Yes. Header onlyDigitalOcean: With a catch. Action Gateway only. Only Action Gateway brokers credentials so the model never sees them; an agent on a Droplet can read the keys in its own environment.E2B: Yes. Outside the machineInstaBox: Yes. Web headers onlyLizard: No. There is no service that adds keys for you; keys are variables the agent can read.Modal: With a catch. Beta. The feature that hides keys is in beta and cannot be changed once set up.Morph: Not publishedRuntime: Yes. PlaceholderSandboxer: No. Keys are written into the machine as variables and files, so the agent can read them.Sprites: With a catch. Catalogue only. Only the services in its catalogue are covered; any other key has to go into the machine.Tensorlake: No. There is no service that adds keys to requests; the machine holds whatever you pass it.Vercel Sandbox: Yes. Outside the machine
    Limited API keysAgent 37: With a catch. Workspace only. A key is limited to one workspace but can do everything in it, and there is no read-only key.Blaxel: With a catch. Workspace only. A service-account key is limited to one workspace but has no narrower permissions.Boat: Yes. Action setsboxd: With a catch. No scopes. Keys are per person and can be revoked, but there is no way to make one read-only or limit it to one machine.Cloudflare Sandbox: Yes. Account tokensDaytona: Yes. Permission scopesDigitalOcean: Yes. custom token scopesE2B: With a catch. One key per team. A key belongs to one team and there is no published read-only or per-machine scope.InstaBox: Yes. Per-resource scopesLizard: Yes. Project or workspaceModal: With a catch. Workspace role. Permissions come from a person's workspace role, not from a key that can only do one thing.Morph: Yes. Token scopesRuntime: Yes. Read-only keysSandboxer: Yes. Action and machine setsSprites: Not publishedTensorlake: Yes. Project-scopedVercel Sandbox: With a catch. Team tokens. Tokens are limited to a team, but no read-only or sandbox-only scope is published.

    YesWith a catchNoNot publishedHover or select a mark to see the catch.

    Running it

    The surfaces you drive it with, the agents already inside, and the controls a team needs.

    Running it: capabilities by provider
    CapabilityAgent 37BlaxelBoatboxdCloudflare SandboxDaytonaDigitalOceanE2BInstaBoxLizardModalMorphRuntimeSandboxerSpritesTensorlakeVercel Sandbox
    Create from the websiteAgent 37: YesBlaxel: YesBoat: Noboxd: NoCloudflare Sandbox: NoDaytona: YesDigitalOcean: Yes. control panelE2B: NoInstaBox: YesLizard: YesModal: NoMorph: YesRuntime: YesSandboxer: NoSprites: NoTensorlake: NoVercel Sandbox: No
    Command-line toolAgent 37: YesBlaxel: YesBoat: Yesboxd: YesCloudflare Sandbox: With a catch. The only command-line tool is Wrangler, which deploys the Worker and can open a shell; it does not create or manage sandboxes.Daytona: YesDigitalOcean: Yes. doctlE2B: YesInstaBox: YesLizard: YesModal: YesMorph: YesRuntime: YesSandboxer: YesSprites: YesTensorlake: YesVercel Sandbox: Yes
    Python SDKAgent 37: YesBlaxel: YesBoat: Yesboxd: YesCloudflare Sandbox: NoDaytona: YesDigitalOcean: Yes. PyDoE2B: YesInstaBox: With a catch. A Python library is named in one place but has no page, package name or install command.Lizard: YesModal: YesMorph: YesRuntime: YesSandboxer: YesSprites: NoTensorlake: YesVercel Sandbox: Yes
    TypeScript SDKAgent 37: NoBlaxel: YesBoat: Yesboxd: YesCloudflare Sandbox: YesDaytona: YesDigitalOcean: Yes. DoTsE2B: YesInstaBox: YesLizard: YesModal: YesMorph: YesRuntime: YesSandboxer: YesSprites: YesTensorlake: YesVercel Sandbox: Yes
    Documented HTTP APIAgent 37: YesBlaxel: YesBoat: Yesboxd: No. The only wire API is gRPC, so a browser or a plain HTTP client cannot call it.Cloudflare Sandbox: No. There is no Cloudflare-hosted API to call; you write a Worker and call it yourself.Daytona: YesDigitalOcean: Yes. REST API v2E2B: YesInstaBox: YesLizard: YesModal: No. The documented interface is the SDK and its gRPC connection; there is no separate HTTP API to call.Morph: YesRuntime: YesSandboxer: YesSprites: YesTensorlake: YesVercel Sandbox: No. Sandbox is driven through the SDKs and the CLI; no HTTP API is documented.
    MCP serverAgent 37: No. MCP is a client feature here: instances reach out to Composio and Perflo, but nothing lets an assistant create an instance.Blaxel: YesBoat: No. The only MCP server searches the documentation; it cannot start or drive a sandbox.boxd: No. boxd installs other products' MCP servers into its agents; it publishes no server that creates machines.Cloudflare Sandbox: No. The MCP material is a separate Cloudflare code-mode project, not a server that starts sandboxes.Daytona: YesDigitalOcean: Yes. official MCP serversE2B: With a catch. E2B's MCP support runs other companies' tools inside a sandbox; nothing of E2B's lets your assistant create sandboxes.InstaBox: No. No MCP server is published for the InstaBox API, so an assistant cannot create machines through one.Lizard: YesModal: No. The only MCP guidance is how to deploy someone else's MCP server inside Modal.Morph: NoRuntime: YesSandboxer: YesSprites: NoTensorlake: NoVercel Sandbox: No. No MCP server manages sandboxes; Vercel's MCP material is about building MCP servers on Vercel.
    Interactive terminal over the APIAgent 37: YesBlaxel: YesBoat: Yesboxd: YesCloudflare Sandbox: With a catch. A live shell exists only inside a web page you build; there is no call that opens a terminal session for a script.Daytona: YesDigitalOcean: With a catch. attach, no PTY API. Harness Runtime can attach to a live session, but Droplets expose no PTY over the API; you use SSH.E2B: YesInstaBox: YesLizard: YesModal: YesMorph: YesRuntime: YesSandboxer: YesSprites: YesTensorlake: YesVercel Sandbox: Yes
    Files over the APIAgent 37: YesBlaxel: YesBoat: Yesboxd: YesCloudflare Sandbox: YesDaytona: YesDigitalOcean: With a catch. Harness upload/download. Only Harness Runtime uploads and downloads files over the API; a Droplet needs SSH or SFTP.E2B: YesInstaBox: YesLizard: YesModal: YesMorph: YesRuntime: YesSandboxer: YesSprites: YesTensorlake: YesVercel Sandbox: Yes
    Coding agents preinstalledAgent 37: Yes. 6 templatesBlaxel: No. The default image is a bare sandbox; agents are code you deploy or an MCP server you connect.Boat: Yes. 7 harnessesboxd: Yes. 3 agentsCloudflare Sandbox: No. The current base images ship no coding agent; you add one in your own Dockerfile, as the guides do.Daytona: With a catch. OpenClaw is in the default snapshot, but Claude Code and Codex are not; those need an install step.DigitalOcean: With a catch. OpenClaw/Hermes images. The default Ubuntu image has no coding agent; OpenClaw, Hermes and Docker Agent are separate 1-Click images.E2B: With a catch. A prebuilt Hermes template exists, but the default image has no agent and there is no Claude Code or Codex template.InstaBox: YesLizard: Yes. 5 agentsModal: No. Nothing is preinstalled and there is no agent API; the agent is code you run.Morph: No. Devboxes boot from templates you build; no agent is in the default image.Runtime: No. The default image ships languages and tools but no coding agent; you install the agent yourself.Sandboxer: Yes. 6 harnessesSprites: No. Sprites provide plugins and integrations for agents, but no agent is in the image.Tensorlake: No. The managed images ship an OS, a desktop and tooling; no coding agent is installed.Vercel Sandbox: Yes
    Send it a promptAgent 37: YesBlaxel: No. There is no prompt endpoint; Agent Runtime, the product that would run the loop, is marked Soon.Boat: Yesboxd: No. boxd runs the machine, not the agent loop; Anthropic or OpenAI runs the loop in the documented integrations.Cloudflare Sandbox: No. Your Worker holds the credentials and the agent runs as a process you start; there is no prompt endpoint.Daytona: No. No agent is hosted and there is no prompt call; you install and drive the agent.DigitalOcean: With a catch. Harness sessions. Managed Agents runs the harness and takes new input to resume a session, but a Droplet has no send-a-prompt call.E2B: No. Guides show agents running in a sandbox, but no API takes a prompt and runs one for you.InstaBox: No. There is no prompt endpoint; the API offers exec, files, desktop and snapshots.Lizard: With a catch. You can send a prompt from the command line, but the SDK and API have no prompt call, so a program cannot start an agent.Modal: No. Modal sells the computer, not an agent loop; the docs show SDK code you write.Morph: No. The tmux API lets your program type into an agent, but Morph runs no agent loop of its own.Runtime: No. Runtime has no agent-run API; its own docs say no bridge harness has run on it yet.Sandboxer: YesSprites: No. Sprites host an agent you install; there is no prompt endpoint.Tensorlake: No. Tensorlake exposes a sandbox as a tool for your own agent; it does not run an agent from a prompt.Vercel Sandbox: No. Agents are in the image but there is no API that runs one; you open a terminal or use the CLI.
    One-click HermesAgent 37: Yes. $0-99.99/moBlaxel: No. No Hermes template or guide is published; you would install it yourself.Boat: With a catch. Hermes is already installed on every machine, but you still need a terminal command to start it and prompt it.boxd: No. No Hermes template, harness or guide is documented.Cloudflare Sandbox: No. No Hermes template; you would install it in your own Dockerfile.Daytona: No. Daytona documents OpenClaw but not Hermes, so there is no one-click route.DigitalOcean: With a catch. Marketplace image. A 1-Click Hermes image exists, but its listing publishes no post-deploy steps, so how much needs a terminal is unclear.E2B: With a catch. A prebuilt template is ready, but you still create the sandbox with a command and pay by usage.InstaBox: No. No Hermes template, guide or one-click route is documented.Lizard: No. The deploy catalog has no Hermes template; only a manual install in a sandbox.Modal: No. Hermes lists Modal as a terminal backend, not as a one-click host.Morph: No. No Hermes template or guide is published.Runtime: No. No Hermes template or guide is published.Sandboxer: No. Its six harnesses do not include Hermes, and there is no template.Sprites: No. Hermes is named on the marketing page, but there is no template or guided route.Tensorlake: No. No Hermes template or guide is published.Vercel Sandbox: No. A Hermes guide exists, but you follow terminal steps; nothing is one click.
    One-click OpenClawAgent 37: Yes. $0-99.99/moBlaxel: No. A tutorial walks through OpenClaw in a sandbox, but it is terminal work, not one click.Boat: With a catch. OpenClaw is installed on every machine, but its gateway does not start by itself and you need a terminal.boxd: No. No OpenClaw template, harness or guide is documented.Cloudflare Sandbox: No. No OpenClaw template; the guides cover Claude Code, Codex, OpenCode and Pi.Daytona: With a catch. OpenClaw is in the default snapshot, but you still run a command to start and configure it.DigitalOcean: Yes. $12/month 1-ClickE2B: No. No OpenClaw template or guide is published.InstaBox: No. No OpenClaw template or guide is published.Lizard: YesModal: No. No OpenClaw template or guide is published.Morph: No. No OpenClaw template or guide is published.Runtime: No. No OpenClaw template or guide is published.Sandboxer: No. Its harness list does not include OpenClaw, and there is no template.Sprites: No. OpenClaw is named on the marketing page, but there is no template or guided route.Tensorlake: No. No OpenClaw template or guide is published.Vercel Sandbox: No. No OpenClaw template or one-click route is documented.
    Browser built inAgent 37: YesBlaxel: No. No browser is installed or offered; you would add Chrome to your own image.Boat: Yes. Chrome 151boxd: YesCloudflare Sandbox: No. The base images ship no browser; you install one in your own Dockerfile.Daytona: Not publishedDigitalOcean: With a catch. chromium in sessions. Harness Runtime sessions include chromium and a browser-automation tool; a Droplet image does not.E2B: With a catch. A browser comes with the desktop image or through Kernel cloud browsers, not in the default sandbox image.InstaBox: YesLizard: YesModal: No. No browser, desktop or computer-use API is documented; the sandbox is a headless container.Morph: With a catch. A documented example runs headless Chrome in a container, but no browser is installed for you.Runtime: YesSandboxer: YesSprites: No. No browser is installed or offered; a browser is something you run and reach through a proxy.Tensorlake: YesVercel Sandbox: No. No browser is documented in the image or as an API; agents in the image are terminal tools.
    Desktop for computer useAgent 37: YesBlaxel: No. No graphical desktop is documented; the browser surfaces are a terminal and preview URLs.Boat: Yes. 1080p 60 fpsboxd: YesCloudflare Sandbox: No. No desktop or computer-use surface is documented.Daytona: YesDigitalOcean: No. none. There is no graphical desktop on a Droplet or in a Harness Runtime session.E2B: YesInstaBox: YesLizard: YesModal: No. No desktop, VNC or computer-use API is documented.Morph: YesRuntime: YesSandboxer: YesSprites: No. No desktop is documented; interactive access is a terminal console.Tensorlake: YesVercel Sandbox: No. No desktop, VNC or computer-use API is published for Sandbox.
    Runs other platforms' agentsAgent 37: YesBlaxel: YesBoat: No. No page documents another platform's cloud agents using Boat as their machine.boxd: YesCloudflare Sandbox: YesDaytona: YesDigitalOcean: Not publishedE2B: YesInstaBox: No. No page documents another platform's cloud agents using InstaBox.Lizard: No. No page documents another platform's cloud agents using Lizard.Modal: YesMorph: No. No page documents another platform's cloud agents using Morph.Runtime: YesSandboxer: No. Its agent pages cover SDKs and frameworks, not another platform's hosted cloud agents.Sprites: No. Its ecosystem lists coding tools, not another platform's cloud agents.Tensorlake: YesVercel Sandbox: Yes
    Team workspaceAgent 37: YesBlaxel: YesBoat: Yesboxd: YesCloudflare Sandbox: With a catch. People share the Cloudflare account and its Workers, but there is no per-sandbox sharing or sandbox workspace.Daytona: YesDigitalOcean: Yes. teams share billingE2B: YesInstaBox: YesLizard: YesModal: YesMorph: YesRuntime: YesSandboxer: YesSprites: YesTensorlake: YesVercel Sandbox: Yes
    Roles and permissionsAgent 37: YesBlaxel: YesBoat: Yesboxd: YesCloudflare Sandbox: YesDaytona: With a catch. Roles decide who can manage the organisation, but any member or key can still run commands in any running sandbox.DigitalOcean: Yes. 6 roles + customE2B: Not publishedInstaBox: YesLizard: With a catch. Role-based access is listed only on the Enterprise plan; the Pro plan marks it not included.Modal: With a catch. Team plan and above. Role-based access starts on the Team plan; the free-to-start Starter plan has no roles.Morph: Not publishedRuntime: Yes. 4 rolesSandboxer: With a catch. Only two roles exist; there is no read-only role or finer permission.Sprites: YesTensorlake: With a catch. Admin and member only. Every plan gets two fixed roles, admin and member, at organization and project level; fuller role-based access is listed under the Enterprise plan.Vercel Sandbox: Yes
    Single sign-onAgent 37: Not publishedBlaxel: With a catch. Single sign-on works only after Blaxel switches on a setting for your account.Boat: Not publishedboxd: With a catch. SAML is sold on Enterprise and you have to ask for it.Cloudflare Sandbox: YesDaytona: With a catch. SSO is available only on the Enterprise plan for collaborative organisations.DigitalOcean: Yes. OIDC (Okta, Entra ID)E2B: Not publishedInstaBox: With a catch. Company sign-in, SAML and automatic user sync are listed only on the Enterprise plan.Lizard: With a catch. SSO and SAML are Enterprise-only; the Pro plan marks them not included.Modal: With a catch. Okta SSO is listed with audit logs and HIPAA on the Enterprise plan.Morph: Not publishedRuntime: YesSandboxer: Not publishedSprites: Not publishedTensorlake: With a catch. SSO is listed on the Enterprise plan, and the docs say access must be enabled for your organisation.Vercel Sandbox: With a catch. $300/month. SAML single sign-on is a paid add-on at $300 a month.
    Hard spending capAgent 37: No. There is no dollar limit you can set; per-instance budgets only cap model spending, and the prepaid wallet is the only ceiling.Blaxel: Not publishedBoat: With a catch. A personal account has no dollar cap; organisations can cap a member's machine time, which stops their new sandboxes.boxd: Not publishedCloudflare Sandbox: No. Budget alerts only send email; they do not pause or cap anything.Daytona: With a catch. The ceiling is a prepaid pool of computing resources rather than a dollar amount, and running sandboxes are not stopped when it runs out.DigitalOcean: No. alerts, not a cap. A spend alert emails you at a percentage of a budget; it cannot stop a Droplet or the bill.E2B: YesInstaBox: YesLizard: No. There is no spending cap at all; only sandbox, CPU, memory and disk caps.Modal: YesMorph: Not publishedRuntime: YesSandboxer: With a catch. A member's machine time can be capped, and a zero balance stops new sandboxes, but there is no account-wide dollar cap.Sprites: Not publishedTensorlake: With a catch. Prepaid credit packs cannot be overspent, but the Pro plan bills overage beyond its included usage.Vercel Sandbox: With a catch. Spend Management can pause projects at an amount you set, but it is a project pause rather than a sandbox stop.
    Usage alertsAgent 37: Not publishedBlaxel: Yes. 90% of quotaBoat: Not publishedboxd: Not publishedCloudflare Sandbox: YesDaytona: Not publishedDigitalOcean: Yes. email at % thresholdsE2B: Not publishedInstaBox: YesLizard: Not publishedModal: Not publishedMorph: Not publishedRuntime: With a catch. The console warns when credit or free usage is about to run out, but you cannot set your own threshold.Sandboxer: YesSprites: Not publishedTensorlake: Not publishedVercel Sandbox: Yes
    Audit logAgent 37: Not publishedBlaxel: Not publishedBoat: Not publishedboxd: With a catch. Audit logs are sold with SSO on the Custom/Enterprise line; on self-serve plans the only record is the SSH command history.Cloudflare Sandbox: YesDaytona: With a catch. The log exists, but exporting it for an audit is not shipped yet.DigitalOcean: With a catch. per-resource events. API actions are recorded per resource, but Droplets have no published account-wide audit log; audit logs are listed only for Managed Agents IAM.E2B: Not publishedInstaBox: With a catch. Audit logs are listed only on the Enterprise plan.Lizard: With a catch. Audit logs are Enterprise-only; the Pro plan marks them not included.Modal: With a catch. Audit logs are listed with SSO and HIPAA on the Enterprise plan.Morph: Not publishedRuntime: Yes. 400 daysSandboxer: Not publishedSprites: No. Fly states plainly that there is no customer-facing audit log of organisation activity or staff access.Tensorlake: With a catch. Audit logs are not self-serve: you ask support for them.Vercel Sandbox: With a catch. Audit Logs are a Vercel Enterprise feature; Sandbox-specific coverage is not established.

    YesWith a catchNoNot publishedHover or select a mark to see the catch.

    Money

    What the meter measures, and what it takes to try before you pay.

    Money: capabilities by provider
    CapabilityAgent 37BlaxelBoatboxdCloudflare SandboxDaytonaDigitalOceanE2BInstaBoxLizardModalMorphRuntimeSandboxerSpritesTensorlakeVercel Sandbox
    Billed per secondAgent 37: No. per minute. Usage is counted by the minute, not the second, so every short task rounds up.Blaxel: Yes. per secondBoat: Yes. per secondboxd: Yes. per secondCloudflare Sandbox: Yes. per 10 msDaytona: Yes. per secondDigitalOcean: Yes. per second, 60 s minimumE2B: Yes. per secondInstaBox: Yes. per secondLizard: Yes. per secondModal: Yes. per secondMorph: Yes. per secondRuntime: Yes. per secondSandboxer: Yes. per secondSprites: Yes. per secondTensorlake: Yes. per secondVercel Sandbox: With a catch. memory rounds to a minute. Memory is counted in whole minutes, so a 20-second task is charged for a full minute of memory.
    CPU billed only while workingAgent 37: No. full rate while awake. A running machine pays its full compute rate whether it is working or waiting.Blaxel: No. memory-based meter. The meter runs on the memory you allocated for as long as the sandbox is active, busy or not.Boat: No. flat rate per size. A running machine costs the same whether it is working or waiting.boxd: No. full cores while running. The processor is charged at the machine's full size for as long as it runs.Cloudflare Sandbox: Yes. active CPU onlyDaytona: No. reserved size. You pay for the cores and memory you reserved, not the ones the work used.DigitalOcean: No. billed while it exists. CPU is billed for every hour the Droplet exists, whether the agent is working or waiting.E2B: No. allocated size. The bill follows the cores and memory you gave the machine, not what it used.InstaBox: No. size while running. A waiting machine costs the same as a busy one of the same size.Lizard: No. idle is billed. Waiting time is charged at the same rate as working time.Modal: No. request or use, whichever is higher. A machine that reserves more than it uses pays for the reservation.Morph: No. largest resource counts. The rate follows the largest of cores, memory and disk, so spare capacity is paid for.Runtime: Yes. measured, 50 mcore floorSandboxer: No. flat rate per size. The price depends on the size you picked, not on how hard it works.Sprites: Yes. actual CPUTensorlake: Yes. active CPU onlyVercel Sandbox: Yes. active CPU only
    Paused costs only storageAgent 37: Yes. disk onlyBlaxel: Yes. storage onlyBoat: Yes. nothing for 14 daysboxd: With a catch. pause keeps paying for memory. Pausing keeps the memory in place and you keep paying for it; only hibernating or stopping brings the bill down to disk alone.Cloudflare Sandbox: Yes. nothing while stoppedDaytona: Yes. disk onlyDigitalOcean: No. full price when off. A powered-off Droplet bills exactly like a running one; only destroying it stops the charge.E2B: Yes. nothing while pausedInstaBox: Yes. storage onlyLizard: Yes. compute stopsModal: No. no pause. There is no pause: a sandbox bills until it is shut down, and its saved copy is stored separately.Morph: Yes. snapshot onlyRuntime: Yes. storage onlySandboxer: Yes. nothing while stoppedSprites: Yes. compute stopsTensorlake: Yes. storage onlyVercel Sandbox: Yes. compute stops
    No monthly feeAgent 37: Yes. noneBlaxel: Yes. noneBoat: No. $20 minimum plan. The smallest plan is $20 a month, and unused time expires, so a light month still costs $20.boxd: Yes. noneCloudflare Sandbox: No. $5 Workers plan. Sandboxes need the $5-a-month Workers Paid plan before anything can run.Daytona: Yes. noneDigitalOcean: Yes. no plan feeE2B: Yes. none on HobbyInstaBox: No. $20 minimum plan. The free plan is capped at one machine, and anything more needs a $20-a-month plan.Lizard: No. $19 plan. There is one plan at $19 a month, which includes $19 of usage.Modal: Yes. Starter $0Morph: Yes. Developer $0Runtime: Yes. noneSandboxer: No. $20 minimum plan. The smallest plan is $20 a month, and included time does not carry over.Sprites: Yes. noneTensorlake: Yes. prepaid creditVercel Sandbox: With a catch. Hobby free; Pro $20. The free Hobby plan is for personal projects only; commercial use needs the $20-a-month Pro plan.
    Flat monthly priceAgent 37: No. metered parts. The bill is cores plus memory plus disk, so it moves with the shape you choose.Blaxel: No. per GB-second. The price follows the memory you allocate and the seconds it runs.Boat: Yes. $26 a month for defaultboxd: No. three meters. Cores, memory and disk are metered separately, so there is no single monthly price.Cloudflare Sandbox: No. per 10 ms. The bill is a sum of active processor time, memory and disk.Daytona: No. metered parts. The bill is cores plus memory plus disk per second.DigitalOcean: Yes. $24/mo for 2 vCPU / 4 GiBE2B: No. per second parts. The bill is cores plus memory per second.InstaBox: No. metered parts. The bill is cores plus memory per second, plus storage.Lizard: Yes. $0.0324/h mediumModal: No. request or use. The bill follows the higher of what you asked for and what you used.Morph: No. one rate per unit. The price is a single rate per unit hour, not a fixed monthly price per machine.Runtime: No. measured parts. The bill is measured processor time plus reserved memory plus storage.Sandboxer: Yes. $26.28 a month defaultSprites: No. actual use. The bill follows the processor and memory actually used, so it varies with the work.Tensorlake: No. metered parts. The bill is processor time plus memory plus disk plus storage.Vercel Sandbox: No. active CPU plus memory. The bill is active processor time plus memory for as long as the sandbox runs.
    Ongoing free tierAgent 37: No. one-off $5 credit. There is no monthly free allowance; the only free usage is a one-off $5 credit.Blaxel: No. one-off credits. Free usage is a one-off promotional credit, not something that returns each month.Boat: No. trial only. There is no free tier; the only free usage is a seven-day trial that needs a card.boxd: No. one-off credit. Free usage is a one-off credit that needs a card, not a monthly allowance.Cloudflare Sandbox: No. none. Sandboxes only run on the paid Workers plan.Daytona: No. one-off $200. The $200 is a one-time credit, not something that returns every month.DigitalOcean: No. $5 credit only. Nothing keeps running for free each month; the only free usage is a one-off $5 credit.E2B: No. one-off $100. The $100 is a one-time credit, not a monthly allowance.InstaBox: Yes. 1 machine, 4 cores / 8 GiBLizard: No. 7-day trial. There is no free tier, only a seven-day trial that needs a card.Modal: With a catch. $30 a month, card needed. Thirty dollars of free compute returns each month, but a payment method must be on file before anything runs.Morph: With a catch. 300 hours claimed. The signup page promises 300 free hours a month, but the pricing page shows no free compute and asks you to buy units.Runtime: Yes. 100 hours a monthSandboxer: No. trial only. There is no free tier, only a seven-day trial that becomes a $20 plan.Sprites: No. one-off $30. Free usage is a one-time $30 credit, not a monthly allowance.Tensorlake: Yes. 1 machine, 1 core / 1 GBVercel Sandbox: With a catch. Hobby, personal use only. The free Hobby plan is limited to personal projects and stops creating sandboxes when its allowance runs out.
    Free starting creditAgent 37: Yes. $5Blaxel: Yes. up to $200Boat: No. none. There is no credit; the free offer is 25 hours of machine time inside a trial.boxd: Yes. €30Cloudflare Sandbox: No. none. There is no starting credit; you pay the $5 monthly plan from the start.Daytona: Yes. $200DigitalOcean: Yes. $5 for 90 daysE2B: Yes. $100InstaBox: No. none. There is no starting credit; the free plan is a machine, and paid plans include usage equal to their fee.Lizard: With a catch. $5 inside a trial. The $5 comes only as part of a seven-day trial and needs a card.Modal: Yes. $30 a monthMorph: With a catch. 300 hours claimed. One page promises 300 free hours a month, while the pricing page lists no free units.Runtime: With a catch. matched credit. There is no plain signup credit; whatever you add in your first 30 days is doubled, up to $1,000.Sandboxer: No. none. There is no credit; the trial is 25 hours of machine time that becomes a paid plan.Sprites: Yes. $30Tensorlake: No. none. There is no starting credit; the free plan is a small machine and credit is bought in packs.Vercel Sandbox: With a catch. $20 in a 14-day trial. The credit is part of a 14-day Pro trial, not a standing signup credit.
    Try without a cardAgent 37: No. card for the credit. A card is needed to get the credit that makes the first machine runnable.Blaxel: Yes. no cardBoat: No. card at checkout. Checkout asks for a card before the trial starts.boxd: Yes. 2 machines without oneCloudflare Sandbox: No. paid plan first. You need a paid Workers plan, which means a payment method, before a sandbox can run.Daytona: Yes. no cardDigitalOcean: No. card before Droplets. You must add a payment method before you can create a Droplet.E2B: Yes. no cardInstaBox: Yes. free planLizard: No. card for the trial. You add a card to start the trial, though nothing is charged at that point.Modal: No. card required. A payment method must be on file before you can use Modal at all.Morph: Not publishedRuntime: Yes. no cardSandboxer: No. card for the trial. The trial needs a card up front and becomes a paid plan after seven days.Sprites: Not publishedTensorlake: Yes. free plan, no cardVercel Sandbox: Not published

    YesWith a catchNoNot publishedHover or select a mark to see the catch.

    The company

    Who is behind the machine, and what happens when it breaks.

    The company: capabilities by provider
    CapabilityAgent 37BlaxelBoatboxdCloudflare SandboxDaytonaDigitalOceanE2BInstaBoxLizardModalMorphRuntimeSandboxerSpritesTensorlakeVercel Sandbox
    Public status pageAgent 37: YesBlaxel: YesBoat: Yesboxd: Not publishedCloudflare Sandbox: YesDaytona: YesDigitalOcean: Yes. status.digitalocean.comE2B: YesInstaBox: Not publishedLizard: YesModal: YesMorph: YesRuntime: YesSandboxer: YesSprites: YesTensorlake: YesVercel Sandbox: Yes
    Uptime promise (SLA)Agent 37: No. There is no uptime promise unless you negotiate one in writing.Blaxel: With a catch. A standard plan carries no numeric uptime promise; only the Custom plan lists custom SLAs.Boat: No. The terms disclaim uninterrupted service and no SLA is published.boxd: Not publishedCloudflare Sandbox: No. The 99.99% Workers SLA covers Workers only, not Containers or Sandboxes.Daytona: With a catch. 99.95%, Tier 4+. The 99.95% target exists, but service credits go only to Tier 4 and above.DigitalOcean: Yes. 99.99% per DropletE2B: With a catch. Uptime and support terms are set in the Enterprise agreement; Hobby and Pro have no public numeric SLA.InstaBox: With a catch. 99.9%, Enterprise. A 99.9% promise is listed only on the Enterprise plan, with no published measurement or credits.Lizard: With a catch. SLAs come with Enterprise support; no public numeric uptime promise exists.Modal: No. There is no public SLA; one is attached to the order only if you bought a plan that includes it.Morph: No. No public uptime target or credit schedule is published; a separately signed SLA would control.Runtime: Yes. 99% APISandboxer: No. There is no SLA during early access.Sprites: With a catch. Fly's 99.9% promise is for Enterprise plans and credits must be claimed; Sprites coverage is not named.Tensorlake: No. The only published SLA is a 24-hour response to a P1 support ticket, not an uptime promise.Vercel Sandbox: With a catch. 99.99%, Enterprise. The 99.99% Enterprise SLA covers the platform and does not name Sandbox.
    SOC 2 reportAgent 37: With a catch. Type I only. Only a SOC 2 Type I report is available, on request; Type II is still in progress.Blaxel: Yes. SOC 2, HIPAA, ISOBoat: No. SOC 2 is in progress, so there is no report to request yet.boxd: No. boxd says it is working on SOC 2 and ISO 27001 and offers security details by email instead.Cloudflare Sandbox: YesDaytona: Yes. Type IIDigitalOcean: Yes. SOC 2 Type II + SOC 3E2B: Yes. Type IIInstaBox: Not publishedLizard: No. The SOC 2 report is listed as coming soon.Modal: Yes. Type IIMorph: Not publishedRuntime: With a catch. The SOC 2 and ISO certificates belong to its Virginia data centre, not to Runtime, so there is no Runtime-owned report.Sandboxer: Not publishedSprites: With a catch. Fly's SOC 2 report describes the platform and does not name Sprites.Tensorlake: Yes. Type 2Vercel Sandbox: With a catch. Vercel holds SOC 2 Type 2, but Sandbox's place in the audit scope is not published.
    Data processing agreementAgent 37: Not publishedBlaxel: Not publishedBoat: With a catch. You have to email support to get a data processing agreement.boxd: YesCloudflare Sandbox: YesDaytona: YesDigitalOcean: Yes. DPA publishedE2B: YesInstaBox: Not publishedLizard: YesModal: YesMorph: Not publishedRuntime: YesSandboxer: With a catch. You have to write to privacy@ to get a data processing addendum.Sprites: YesTensorlake: YesVercel Sandbox: Yes
    Open source or self-hostableAgent 37: No. The platform is a hosted service; only template Dockerfiles and images are published.Blaxel: No. The sandbox platform is hosted only; there is no self-hosted or open-source edition.Boat: No. Boat runs its own machines in Germany, Finland and France; no self-hosted edition is published.boxd: Yes. Annual licenceCloudflare Sandbox: With a catch. The SDK is open source, but the platform it runs on is Cloudflare's and cannot be self-hosted.Daytona: With a catch. BYOC, Enterprise. Only the sandbox compute runs on your own machines, only after Daytona enables it, and the control plane stays Daytona's.DigitalOcean: No. hosted service only. Droplets are a hosted service; DigitalOcean publishes clients and tools, not a self-hostable platform.E2B: Yes. Embed, one machineInstaBox: No. InstaBox is a hosted service; no self-hosted or open-source edition is published.Lizard: No. Lizard is hosted only; the docs describe its own infrastructure and no self-hosted edition.Modal: No. The client libraries are open source; the platform is not.Morph: No. Morph Cloud is hosted; no self-hosted or open-source edition is published.Runtime: No. Runtime runs everything in its own Virginia region and publishes no self-hosted edition.Sandboxer: No. Sandboxer runs on dedicated servers it operates; no self-hosted edition is published.Sprites: No. Sprites is a hosted Fly product; no self-hosted edition is published.Tensorlake: With a catch. BYOC, Enterprise. Self-hosting is offered only on the Enterprise plan and only in your own AWS account; the software is not open source.Vercel Sandbox: No. Vercel Sandbox is hosted on Vercel; no self-hosted edition is published.

    YesWith a catchNoNot publishedHover or select a mark to see the catch.