AWS Lambda Web Functions is now available
AWS launched Lambda Web Functions, which run Node.js 24 on Arm64 and serve up to 128 concurrent requests per environment with active CPU billing.
By Dillip Chowdary โข Oct 13, 2026 โข Source: AWS News Blog
AWS launched AWS Lambda Web Functions, a new form factor that runs a standard HTTP web application on Lambda without rewriting it into an event handler, according to AWS News Blog's report. A port-listening server built with Express, Hono, Fastify, Next.js, or any Node.js framework deploys with one command. Lambda then handles scaling, multi-region distribution, and active CPU billing, with no adapters, no infrastructure to manage, and no framework lock-in.
This piece covers Event Functions, Web Functions, and MicroVMs on Firecracker, the 128-request cap, active CPU billing, the 90/10 canary, and CloudFront origin access control. It is for developers running an Express, Hono, Fastify, or Next.js server on Lambda in the same account as Event Functions and MicroVMs.
What shipped in AWS Lambda Web Functions is now available
AWS is introducing the name Event Functions for the Lambda functions developers already know. An Event Function is a single-concurrent, event-driven handler with wall-clock billing: it receives an event, processes it, and returns a response. It fits event processing, queue consumers, and invocations from other AWS services. Web Functions use an HTTP-native model with multi-concurrent execution and active CPU billing. The process listens on a port for web applications, API backends, and interactive HTTP workloads. MicroVMs are isolated, stateful sandboxes with customer-managed lifecycles for untrusted or user-generated code, on the same Firecracker isolation.
The sample is the Express server the AWS News Blog runs locally with node index.js, and it has no Lambda adapter. It imports express, splits AWS_LAMBDA_HTTP_ENDPOINT on a colon into host and port, and calls app.listen. Lambda sets that variable to the bind address. GET / returns {"message":"Hello from Lambda Web Functions!"}. Locally, set AWS_LAMBDA_HTTP_ENDPOINT=127.0.0.1:3000 and start node index.js. curl https://<domain-id>.<shard-id>.lambda-web.us-east-1.on.aws/ returned that JSON. A revision is an immutable code snapshot. An endpoint is the HTTPS URL that routes to a revision or splits traffic across revisions.
What improved in AWS Lambda Web Functions is now available
Teams typically assembled infrastructure, set up multi-region deployment and latency-based routing, and tuned billing to avoid paying for I/O wait. Lambda Web Functions removes that assembly. Each environment handles up to 128 concurrent requests, so a burst can share warm environments. CPU billing follows time the code uses, so a database query or API call consumes little CPU. Memory is metered for the life of the environment. Server-side rendering, API backends, and AI inference endpoints that stream token responses are the cases where this can reduce compute cost.
| Measure | Before | Lambda Web Functions |
|---|---|---|
| Concurrent requests per environment | Single-concurrent handler | Up to 128 |
| Billing | Wall-clock | Active CPU time |
| Wait on a database query or API call | Included in wall-clock time | Consumes little CPU |
| Memory | โ | Metered for the life of the execution environment |
| First live HTTPS URL | Prior resource setup | Under a minute, with no prior resource setup |
| Code change to live | Assembled infrastructure | Seconds on the same deploy command |
| Canary split | Additional tooling | 90% current revision, 10% new revision |
| Sample region deploy | Manual multi-region and latency-based routing | us-east-1, eu-west-1, ap-northeast-1, routed automatically |
Passing --regions us-east-1,eu-west-1,ap-northeast-1 replicates code to those Regions and sets latency-based routing. Requests use the caller's lowest-latency Region, on a best-effort basis, via <domain-id>.lambda-web.global.on.aws. That deploy serves users in Europe and Asia. After a code change, the same command makes the CLI detect the function, upload a revision, and point the endpoint at it, in seconds. aws lambda-web update-web-function-endpoint with --auto-deployment-mode Disabled and weights 90 and 10 sends 90 percent to the current revision and 10 percent to the new one, with no extra tooling.
What you gain from AWS Lambda Web Functions is now available

Event Functions take asynchronous backend processing, Web Functions take the user-facing API and server-side rendering, and MicroVMs take interactive execution of untrusted or user-generated code, in one AWS account under the same operational model. Express, Hono, Fastify, Next.js, or any Node.js framework runs with no adapter and no framework lock-in. The first aws lambda-web deploy needs no prior resources: it bundles source, creates the Web Function, publishes the first revision, attaches an endpoint, and returns a live HTTPS URL in under a minute. The next deploy of that name points the endpoint at the new revision in seconds.
CloudFront can take a Web Function endpoint as origin for an app that mixes static and dynamic content. Static assets come from the cache. Dynamic requests go to the Web Function. Origin access control attaches to the endpoint: CloudFront signs requests, and the endpoint accepts calls only from that distribution. That is the private-origin pattern CloudFront already uses for Amazon Simple Storage Service (Amazon S3). The Web Function URL does not have to be public, and the app does not add custom authorization for this check.
Advertisement
Tech Pulse Daily
Get tomorrow's pulse first
Join engineers who read Tech Pulse before stand-up. Free, weekday mornings.
How to get AWS Lambda Web Functions is now available
Lambda sets AWS_LAMBDA_HTTP_ENDPOINT to the host and port the process must bind. Locally, run AWS_LAMBDA_HTTP_ENDPOINT=127.0.0.1:3000 node index.js against the Express server that reads the variable. aws lambda-web deploy --name my-web-app --code ./my-app bundles the directory, creates the function, publishes the first revision, attaches the endpoint, and returns a live HTTPS URL in under a minute, with no prior resources. aws lambda-web deploy --name hello-world --hello-world is the announcement's first-function command, also under a minute. The launch runtime is Node.js 24 (nodejs24.x) on Arm64, and the function can use Amazon VPC connectivity.
import express from 'express';
const app = express();
const [host, port] = process.env.AWS_LAMBDA_HTTP_ENDPOINT.split(':');
app.get('/', (req, res) => {
res.json({ message: 'Hello from Lambda Web Functions!' });
});
app.listen(port, host, () => {
console.log(Server running on port ${port});
});AWS_LAMBDA_HTTP_ENDPOINT=127.0.0.1:3000 node index.jsaws lambda-web deploy --name hello-world --hello-worldaws lambda-web deploy --name my-web-app --code ./my-appaws lambda-web deploy --name my-web-app --code ./my-app \
--regions us-east-1,eu-west-1,ap-northeast-1aws lambda-web update-web-function-endpoint \
--function-name my-web-app \
--endpoint-name dev \
--auto-deployment-mode Disabled \
--revision-weights '[{"revisionId": "<current-revision-id>", "weight": 90}, {"revisionId": "<new-revision-id>", "weight": 10}]'curl https://<domain-id>.<shard-id>.lambda-web.us-east-1.on.aws/Add --regions us-east-1,eu-west-1,ap-northeast-1 to replicate into those three Regions and serve <domain-id>.lambda-web.global.on.aws with latency-based routing. Running aws lambda-web deploy --name my-web-app --code ./my-app again detects the existing function, uploads a new revision, and points the endpoint at it. The canary command is aws lambda-web update-web-function-endpoint with --function-name my-web-app, --endpoint-name dev, --auto-deployment-mode Disabled, and weights 90 and 10 on <current-revision-id> and <new-revision-id>. That split is 90 percent and 10 percent of endpoint traffic. curl of the us-east-1 host returned the hello JSON message.
What to watch after AWS Lambda Web Functions is now available
Launch runtime is Node.js 24 (nodejs24.x) on Arm64. Regions are US East (N. Virginia), US East (Ohio), US West (Oregon), Asia Pacific (Tokyo), and Europe (Ireland). The worked example passes us-east-1, eu-west-1, and ap-northeast-1 for users in Europe and Asia, and the curl host is <domain-id>.<shard-id>.lambda-web.us-east-1.on.aws. The global name is <domain-id>.lambda-web.global.on.aws, with best-effort routing to the lowest-latency configured Region. Pricing details sit on the AWS Lambda pricing page. The announcement does not list dollar rates. VPC connectivity lets the function reach resources already inside a VPC.
Waiting on a database query or an API call consumes little CPU, and memory is metered for the life of the execution environment. Each environment handles up to 128 concurrent requests, and Lambda automatically handles scaling. A canary needs the revision ids, endpoint name dev, --auto-deployment-mode Disabled, and weights 90 and 10. Origin access control lets CloudFront sign requests so only that distribution can invoke the endpoint, as with Amazon S3. Static assets stay in the CloudFront cache while dynamic routes hit the function.
Developer Action Items
- โ Diff the official changelog for Amazon / AWS / Framework 127.0.0.1 before you bump โ APIs, defaults, and removed flags only.
- โ Install through the vendor's documented channel in staging; keep a one-command rollback and time-box the canary.
- โ Grep your repo for old flag names, lockfile pins, and plugin versions that the notes mark as breaking.
- โ Prefer the first patch cut over the day-zero tag unless you have a reason to be on the leading edge.
- โ If AWS News Blog did not name a region, plan, or SKU, screenshot the official availability line before you promise it to users.
AWS Lambda Web Functions is now available FAQ
What is AWS Lambda Web Functions?
It is a Lambda form factor that runs a standard port-listening HTTP application, including Express, Hono, Fastify, Next.js, or any Node.js framework, without an event-handler rewrite. Lambda handles scaling, multi-region distribution, and active CPU billing. Event Functions, Web Functions, and MicroVMs all use Firecracker.
Which Regions and runtime does AWS Lambda Web Functions support at launch?
The Regions are US East (N. Virginia), US East (Ohio), US West (Oregon), Asia Pacific (Tokyo), and Europe (Ireland). Functions run Node.js 24 (nodejs24.x) on Arm64 and can use Amazon VPC connectivity to reach resources inside a VPC.
How many concurrent requests can one Lambda Web Functions environment serve?
Up to 128 concurrent requests per execution environment. A burst can share a warm environment instead of placing each request on its own environment. CPU uses active CPU billing, and memory is metered for the life of that environment.
What AWS CLI command deploys a Lambda Web Function?
aws lambda-web deploy --name my-web-app --code ./my-app bundles the app, creates the function, publishes the first revision, and returns a live HTTPS URL in under a minute. aws lambda-web deploy --name hello-world --hello-world is the no-project start. Add --regions us-east-1,eu-west-1,ap-northeast-1 to replicate those three Regions.
How do you send 10 percent of traffic to a new Lambda Web Functions revision?
Call aws lambda-web update-web-function-endpoint for function my-web-app and endpoint dev, set --auto-deployment-mode Disabled, and pass revision weights of 90 for the current revision id and 10 for the new revision id. That sends 90 percent of endpoint traffic to the current revision and 10 percent to the new one.
Sources
Author
Dillip Chowdary
Writes Tech Bytes coverage of AI, engineering, and the tools that actually ship. Editor of Tech Pulse Daily.
Related on Tech Bytes
Advertisement