Compare / AWS Lambda

Lizard vs AWS Lambda — the Lizard logo beside the AWS Lambda logo

The AWS Lambda alternative that never times out

AWS Lambda is excellent at short, spiky, event-driven work and stops being excellent the moment the job takes longer than 15 minutes, needs a warm process, or wants a real filesystem. Lizard runs the same code as a long-lived process in its own container, with no invocation to end and no per-request charge.

Why developers look for a AWS Lambda alternative

Fifteen minutes is a hard ceiling

A Lambda invocation is terminated at 900 seconds. Video transcoding, large imports, model inference, and long ETL jobs all get split into a state machine to work around a limit that a process does not have.

Cold starts are structural

A function that has not run recently pays initialisation on the next request. Provisioned concurrency fixes it by paying for a warm instance — at which point you are paying for a server without getting one.

Nothing survives between invocations

Warm state survives only inside one execution environment, and only until it is recycled — you cannot count on a cache or a pool being there. Each concurrent environment opens its own database connections, which is why RDS Proxy exists.

Always-warm gets expensive

A 1 GB function running continuously is about $43.80 a month of duration charges before requests. On Lizard the same 1 GB is about $10 a month of memory, plus CPU only while the process works — cents a month for a warm service that mostly waits.

Lizard vs AWS Lambda

Every figure read off AWS Lambda’s published pricing and our own. Last verified: 27 August 2026.

Compared byLizardAWS Lambda
Maximum run timeNone — the process stays up15 minutes per invocation
Memory ceilingScale to what the plan allows, up to 40 GB on Pro10 GB on default compute; 32 GB and 16 vCPUs on Managed Instances
Cold startsNone — the process is already runningOn first request, unless you pay for provisioned concurrency
FilesystemFull read-write root/tmp, 512 MB to 10 GB — plus EFS or S3 Files mounted read-write under /mnt
Compute price$0.0278 per vCPU-hour, $0.0139 per GB-hour, on measured use$0.0000166667 per GB-second on x86, $0.0000133334 on Arm (us-east-1)
RequestsNot billed$0.20 per million
Always-warm 1 GB workloadAbout $15 a month at 1 GB and 0.25 vCPU averageAbout $43.80 a month of duration, before requests
Free tier$5 of credit, no card1 million requests and 400,000 GB-seconds a month
WebSockets and streamingOrdinary long-lived connectionsResponse streaming direct from function URLs; WebSockets need API Gateway, billed per message and per connection-minute
Database connectionsOne pool, in one processOne per concurrent invocation — RDS Proxy is the usual fix

When AWS Lambda is the better choice

Genuinely spiky, event-driven work: an S3 trigger, a Kinesis consumer, a cron that runs for four seconds a day, a webhook receiver that is idle 23 hours out of 24. Lambda scales to zero for real, the free tier of 1 million requests and 400,000 GB-seconds covers a lot, and the integration with the rest of AWS is something no third party matches. For that shape, a server you keep running is the wrong tool.

Moving from AWS Lambda

No Dockerfile required — lizardpack detects the stack and writes one on the build node. If your repo already has a Dockerfile, it is used as it stands.

$npm i -g @lizard-build/cli
$lizard up
$lizard add postgres redis
AWS App Runner 2026: maintenance mode, pricing, alternatives

Frequently asked questions

It depends on why you are leaving. For work that outgrew the 15-minute limit or needs a warm process, a platform that runs containers — Lizard, Railway, Render, or AWS Fargate. For staying serverless with fewer limits, Google Cloud Run. For edge-shaped request handling, Cloudflare Workers.

Usually because the function is effectively always running, or because provisioned concurrency is on. Duration is billed per GB-second, so a 1 GB function that never idles costs about $43.80 a month before the $0.20 per million requests — and at that point you are paying continuously for something billed as if it were occasional.

Inside AWS: Lambda MicroVMs run a single job up to 8 hours, on their own API, ARM64 only, in five regions. Durable functions span up to a year for multi-step work, but each invocation is still capped at 15 minutes, so you split the job into checkpointed steps. Otherwise Step Functions, Fargate, or EC2. Outside AWS, you run it as an ordinary process: on Lizard a worker service has no time limit and no HTTP port, so a long import or a transcode job just runs to completion.

Yes. Wrap the handler in a small HTTP server or a worker loop, then run lizard up — lizardpack detects Node, Python, Go, Java, Ruby, or Rust and writes the Dockerfile. What changes is the shape: one process handling many requests instead of many invocations handling one each, which usually simplifies the connection pooling and the caching.

No. Lizard bills measured CPU, memory, and disk by the second, plus egress past the plan allowance at $0.05 per GB and object storage at $0.015 per GB-month — and nothing per request or per invocation. The trade is that a service bills every second it is up, where a Lambda that nobody calls costs nothing.

Build with AI. Ship with Lizard.

You don't need a platform team to go live. Your whole cloud, one CLI command away.

Try for free

No credit card required

We use cookies for essential site functionality and analytics. See our Cookie Policy.