October 15, 2026 / Nirav Shah
For over a decade, running a normal web application on AWS Lambda felt like forcing a square peg into a round hole. You had to wrap your Express or Fastify app in adapter layers, wire up API Gateway, and accept that every request got its own execution environment — even if that request was just waiting on a database.
That changed in October 2026. AWS announced Lambda Web Functions, a brand-new type of Lambda function that runs a standard Node.js HTTP server exactly as you wrote it. One deploy command. A public HTTPS endpoint. No adapters, no servers, no load balancers to manage.
In this post, we’ll break down what AWS Lambda Web Functions are, the problems they solve, how they’re billed, and when you should (and shouldn’t) use them for your next web application.
AWS Lambda Web Functions are a new type of Lambda function, launched in October 2026, that lets your code run as a standard HTTP server listening on a port — instead of an event handler that gets invoked once per event.
That single change is what makes them special. Web frameworks like Express, Fastify, and Hono run completely unmodified. Next.js in standalone mode needs only a tiny entry file. Your app reads the host and port from an environment variable, calls server.listen(), and that’s it — the same code that runs on your laptop runs on Lambda.
A Web Function is made up of three resources:
At launch, Web Functions run Node.js 24 on Arm64 with 2 vCPUs and 2 GB of memory per execution environment, and they support VPC connectivity so your app can reach private databases and internal services.
Deployment is one command:
aws lambda-web deploy --name my-web-app --code .
The AWS CLI bundles your code, creates the function and an endpoint, and hands you a live public HTTPS URL.
Lambda launched in 2014 with a brilliantly simple model: upload your code, and AWS handles everything else. But that code ran as an event handler — invoked once per event, such as a queue message or a file landing in S3. AWS now calls this an Event Function, and it remains the right choice for event-driven workloads.
For web applications, though, this model created real friction:
The result? Many teams who loved the serverless operating model still reached for containers (ECS, Fargate, App Runner) the moment they needed to host a “normal” web app. Lambda Web Functions close that gap.
Your code is a plain HTTP server. Express, Fastify, Hono, and plain Node.js servers run without modification. You develop locally with npm start, test on localhost:3000, and deploy the exact same code.
Each execution environment handles up to 128 concurrent requests (default 64), not one at a time. In AWS’s own load test, 300 streaming requests with 200 open simultaneously were served by just 5 execution environments — where Event Functions would have needed up to 200. You can tune maxConcurrencyPerEnvironment, cap total environments with maxEnvironments, and set a rateLimit to protect downstream databases and APIs.
This is the headline feature. You pay for requests, memory, and actual CPU time consumed — not wall-clock duration. When your code waits on a database, a downstream API, or an AI inference call, it uses almost no CPU, so the wait costs very little. In AWS’s test, a fleet serving 484 requests consumed only about 4.8 seconds of total CPU.
Web Function environments stay alive and warm. They can hold streaming connections open (server-sent events, long polling) and run background tasks outside the request path — things Event Functions simply couldn’t do.
Add --endpoint-type MultiRegion --regions us-east-1,eu-west-2 to your deploy command, and Lambda replicates your code to each region and gives you a single global URL with latency-based routing via Route 53. In AWS’s demo, a caller in the UK dropped from 90 ms (single-region US endpoint) to 16 ms (routed to London) — with zero load balancers or DNS records to configure.
Choose ApplicationManaged (public endpoint, your code handles OAuth/JWT/Cognito) or IamAuth (AWS validates every request with SigV4 — ideal for service-to-service APIs). For custom domains, caching, and AWS WAF, put CloudFront in front of the endpoint.
| Web Functions | Event Functions | |
|---|---|---|
| Programming model | Standard HTTP server listening on a port | Event handler invoked per event |
| Requests per environment | Up to 128 concurrent (default 64) | 1 at a time |
| Between requests | Environment stays alive; background tasks keep running | Environment frozen; background work stops |
| Billing | Requests + memory + active CPU time | Requests + memory × wall-clock duration |
| Streaming connections | Many per environment | One occupies a whole environment |
| Adapters needed | None — Express/Fastify/Hono run as-is | Adapter or shim for web frameworks |
| Multi-region endpoint | Built in, single global URL | Build it yourself (Route 53, etc.) |
| Best for | Web apps, APIs, SSR, streaming, microservices | Queue processing, S3 triggers, event-driven work |
Event Functions aren’t going anywhere — they’re still the right tool for event-driven workloads. Web Functions simply give web applications a model that fits how they actually work.
Here’s how simple the whole flow is:
Step 1 — Write a normal Node.js server. The runtime provides the address in the AWS_LAMBDA_HTTP_ENDPOINT environment variable:
const [host, port] = (process.env.AWS_LAMBDA_HTTP_ENDPOINT || "0.0.0.0:3000").split(":");
server.listen(Number(port), host);
Step 2 — Test locally with npm start and open http://localhost:3000. No emulators, no SAM local, no mocking API Gateway events.
Step 3 — Deploy with one command:
aws lambda-web deploy --name my-web-app --code .
The CLI bundles your code, creates the function, an execution role, and a dev endpoint, and prints a live HTTPS URL in the format https://<id>.<shard>.lambda-web.<region>.on.aws.
Step 4 — Go global (optional):
aws lambda-web deploy --name my-web-app --code . --endpoint-name global --endpoint-type MultiRegion --regions us-east-1,eu-west-2
Lambda replicates your code and environment variables to each region, centralizes logs in your home region, and serves everything from one global URL.
You can also define everything in AWS CloudFormation for infrastructure-as-code pipelines, and the runtime writes per-environment summary metrics (request count, peak concurrency, CPU time) to CloudWatch Logs every minute.
Web Functions are a great fit for:
Stick with Event Functions for queue processing, S3 triggers, scheduled jobs, and anything genuinely event-driven. And for very heavy, sustained CPU workloads running 24/7 at near-full utilization, dedicated containers or EC2 may still be more economical — serverless wins when traffic is variable.
One current limitation to note: at launch, Web Functions support Node.js 24 on Arm64 only. If your stack is Python, Java, or .NET, you’ll need to wait for additional runtime support or use the classic Lambda + adapter approach for now.
Web Functions bill three things separately:
The key insight: an environment can stay alive for minutes holding open connections, yet consume only a fraction of a second of CPU. If your API spends 900 ms of a 1-second request waiting on a database, you’re billed CPU for roughly the 100 ms of real work — not the full second. For I/O-heavy web workloads (which is most of them), this can be dramatically cheaper than wall-clock billing.
For current rates, check the AWS Lambda pricing page.
AWS Lambda Web Functions remove the last big excuse for not running web applications serverless. You write a standard Node.js HTTP server, deploy it with one command, and get a scalable, pay-for-what-you-use HTTPS endpoint with global routing built in — no adapters, no load balancers, no idle servers burning money at 2 a.m.
For teams already on AWS, this is worth evaluating today for new APIs, SSR frontends, and streaming workloads. For teams weighing Lambda against containers, the economics just shifted meaningfully in Lambda’s favor for I/O-heavy web apps.
Thinking about moving your web applications to serverless? As an AWS Partner, Eternal Soft Solutions helps businesses design, build, and migrate applications on AWS — from Lambda and serverless architectures to full cloud modernization. Get in touch to discuss whether Lambda Web Functions fit your stack.
Source: AWS Compute Blog — Exploring AWS Lambda Web Functions for building web applications (13 Oct 2026)

Nirav Shah is the Director of Eternal Web Pvt Ltd, an AWS Advanced Consulting Partner and certified Odoo Partner based in the UK. With over a decade of experience in cloud computing, digital transformation, and ERP implementation, Nirav helps enterprises adopt the right technology to solve complex business challenges. He specialises in AWS infrastructure, Odoo ERP, and web development solutions for businesses across the UK and beyond.
Have queries about your project idea or concept? Please drop in your project details to discuss with our AWS Global Cloud Infrastructure service specialists and consultants.