An honest look at mashines.dev versus the platforms developers reach for when they need to run something. The short version: they all restart your workload to move it. We live-migrate it.
| Capability | mashines.dev | Fly Machines | E2B / Modal / Daytona | AWS Fargate / Cloud Run | Railway / Render |
|---|---|---|---|---|---|
| Isolation model | microVMown kernel (cloud-hypervisor/KVM) | microVMFirecracker/KVM | microVM / sandboxvaries by vendor | Containershared-kernel | Containershared-kernel |
| Live migration (RAM + disk + connections preserved) | Yes~ms downtime, no restart | Nostop → start, cold | Norecreated | Notask rescheduled | Noredeployed |
| Survives host maintenance without cold start | Yes | No | No | No | No |
| Max execution time | Unlimited | Unlimited | Time-boxedsandbox TTL | LimitedCloud Run request cap | Unlimited |
| Persistent state | Volumes follow VM | Volume pinned to host | Mostly ephemeral | External only (EFS/GCS) | Volume pinned |
| Cold-start on scale-up | Sub-second from snapshot | Sub-second | Fast | Seconds | Seconds–minutes (build/deploy) |
| Scale-to-zero billing | Yes | Yes | Yes | Cloud Run only | No (always-on) |
| Safe for untrusted / agent-generated code | Yes, VM boundary | Yes | Yes | Container escape risk | Container escape risk |
| Public IPv6 per workload | Yesown address per machine | Yesdedicated v6 | Nobehind API | Via load balancer | Noplatform proxy |
| Direct SSH / interactive shell | Yesmashines enter + real sshd | Yesfly ssh console | SDK exec only | ECS / Cloud Run exec | Limited |
| Pricing model | Usage, per-secondscale-to-zero | Usage, per-second | Usage, per-second | Usage, per-second/request | Usage + always-on base |
| Est. price · 1 vCPU·2GB always-on | ~$29/moegress free | ~$31/mo | ~$30–100/motime-boxed | ~$36–76/mo | ~$40/mo |
| Best for | Stateful, long-running, always-on | Stateless & stateful apps | Ephemeral agent sandboxes | Stateless services | PaaS-style web apps |
Prototype comparison for illustration. Competitor capabilities reflect general platform design as of 2026 and may change; verify current specifics with each vendor.
Fly popularized the per-second microVM and it's a great fit for stateless and stateful apps alike. But moving a Fly Machine between hosts means a stop/start, your process restarts and in-memory state is gone. mashines.dev runs the same class of microVM and adds the part Fly leaves out: live migration that keeps the VM running. If your workload holds state in memory and can't afford a restart, that's the gap.
These are purpose-built for ephemeral agent sandboxes: spin up, run code, tear down. Excellent for short tasks. They fall short when an agent needs to be long-lived and stateful, sandboxes are time-boxed and disposable, so persistent memory and always-on agents don't map cleanly. mashines.dev keeps the agent's VM and volume alive indefinitely, surviving host moves.
Hyperscaler serverless containers scale well but share a kernel, lean on external storage for state, and (for Cloud Run) cap request duration. There's no notion of moving a running workload without rescheduling it. mashines.dev offers a real VM boundary, in-VM persistent disk, no runtime ceiling, and migration instead of rescheduling.
Beautiful developer PaaS for shipping web apps, but they run shared-kernel containers, bill an always-on base, and a platform deploy or node change redeploys (and cold-starts) your service. mashines.dev trades some PaaS polish for VM-grade isolation, scale-to-zero usage billing, and migrations that never redeploy your app.
If your workload is short-lived and stateless, almost anything works. If it has to stay up and keep its state, through maintenance, rebalancing, and resizes, mashines.dev is the only one that doesn't restart it.