T1

AWS Lambda — One Function, Billed by the Tenth of a Second

SourceAmazon.com, Inc.; vector by DraftSaturn15 (Wikimedia Commons) · Public domain (PD-textlogo) · View on Commons ↗

Metadata

Date
Decade
2010s
Tier
T1
Sources
07
Connections
02

AWS Lambda was announced on 13 November 2014, at Amazon's re:Invent 2014 conference, and released the same day as a preview. It ran a piece of code — a function — in response to an event, and charged only for the requests and the time the code actually ran, in units of 100 milliseconds. There was no server to choose, size or patch. Lambda left preview and was declared ready for production on 9 April 2015; support for a second language, Java, followed on 15 June 2015.

The idea now goes by the name serverless. In November 2014 it was a narrow service: one language, a 60-second limit and three regions.

What was announced

Jeff Barr's post on the AWS blog that day opened with the goal: to let developers focus on their code in a cloud environment where scalability and reliability could be "simply taken for granted". Accounts from the conference put the announcement in Werner Vogels's keynote on the second day, which also introduced the EC2 Container Service for running Docker containers.

The preview had clear limits:

ItemPreview (November 2014)
LanguageNode.js only
Memory128 MB to 1 GB per function
Maximum run time60 seconds
RegionsUS East (N. Virginia), US West (Oregon), Europe (Ireland)
Event sourcesAmazon S3, DynamoDB, Kinesis streams
BillingPer request, plus compute time in 100 ms units
Free tier1 million requests and up to 3.2 million seconds of compute a month

The memory setting did more than set memory. According to Barr, it also determined the share of CPU, network and I/O bandwidth a function received. The free tier's compute allowance depended on the memory chosen for the same reason.

How it worked

A Lambda function was a stateless piece of code. It could not keep durable data on the machine it ran on; Barr's post said functions should use S3 or DynamoDB instead. AWS started copies when events arrived and stopped them when they were done.

The examples were about reacting to things that had already happened inside AWS: an image uploaded to an S3 bucket that needed a thumbnail, a change in a DynamoDB table, a record arriving on a Kinesis stream. Barr stressed that there were no EC2 instances to launch or manage and no capacity to reserve. The bill covered the work alone.

That billing was the real change. Since S3 in 2006, AWS had sold capacity by the gigabyte-month and the instance-hour. Lambda sold it by the request and the tenth of a second.

From preview to production

On 9 April 2015 Barr announced that Lambda was in full production. The same update added:

  • Synchronous invocation, so a caller could wait for a function's result instead of only firing an event
  • Amazon SNS notifications as a trigger
  • Calling functions from the AWS Mobile SDK for Android and iOS
  • A simpler permission model built on a single IAM role
  • A default limit of 100 concurrent executions per account, up from 50 during the preview

Java was not yet in that release; the post listed it as coming soon. It arrived on 15 June 2015, when Barr wrote that developers could now write Lambda functions in Java 8.

DateMilestone
13 November 2014Announced at re:Invent; preview with Node.js
9 April 2015Production status; SNS triggers, synchronous calls, mobile SDK
15 June 2015Java 8 support

The first decade

When AWS marked Lambda's tenth anniversary, Barr recalled that it started from an informal conversation with Tim Wagner about letting developers focus on code rather than infrastructure, after which Wagner wrote the PRFAQ — Amazon's internal press-release-and-FAQ proposal — for the service. The anniversary post listed what came after the preview, year by year:

YearAdded, according to AWS
2016Python; longer time limits; access to resources in a VPC; environment variables; the SAM framework
2018Functions written in any programming language
2020Up to 10 GB of memory and 6 vCPUs; container images; billing in 1 ms units
2021Graviton (Arm) processors
2022SnapStart; HTTPS endpoints for functions
2023Faster scaling; response streaming

The billing unit is the clearest thread: from 100 ms in 2014 to 1 ms in 2020. AWS also gave a usage figure for 2024 — 1.5 million users and tens of trillions of invocations a month. That is AWS's own count.

Where Lambda sits

Lambda did not invent the idea of handing code to a platform and not managing servers. Google App Engine had done that for whole web applications in 2008. What Lambda changed was the unit — a single function, triggered by an event and billed per call — and that unit is what the word serverless came to mean.

It arrived in the same week as AWS's container service, and in the same year Google open-sourced Kubernetes. Functions and containers offered two different answers to the same question — how to run code without managing a whole machine — and the container answer had been made practical by Docker the year before.

The company is covered on Amazon, and the wider sequence on the cloud computing timeline.

Questions this page answers

When did AWS Lambda launch?
It was announced at re:Invent 2014 on 13 November 2014 and released the same day as a preview. It became production-ready on 9 April 2015.
What were Lambda's limits at launch?
Node.js was the only language, memory ran from 128 MB to 1 GB per function, the maximum run time was 60 seconds, and it was offered in three regions: US East, US West and Europe (Ireland). Events could come from S3, DynamoDB and Kinesis.
When did Lambda add Java?
On 15 June 2015. At the production release on 9 April 2015 Java was still listed as coming soon; that release added SNS triggers and synchronous invocation instead.
How has Lambda's billing unit changed?
At launch in 2014 it charged per request plus compute time in 100-millisecond units. According to AWS, billing moved to 1-millisecond units in 2020.

Sources

  1. PrimaryAWS Lambda – Run Code in the Cloud — Jeff Barr, AWS News Blog, Nov 13, 2014

    Announcement date; preview language, memory, run time, regions and event sources; billing and free tier

    Accessed 2026-10-05

  2. PrimaryAWS Lambda – In Full Production with New Features for Mobile Devs — Jeff Barr, AWS News Blog, Apr 9, 2015

    Production date; synchronous calls, SNS and the mobile SDK; concurrency 50 to 100; Java still coming soon

    Accessed 2026-10-05

  3. PrimaryAWS Lambda turns ten – looking back and looking ahead — AWS News Blog, 2024

    Tim Wagner's PRFAQ, features added 2016–2023, 1 ms billing, and usage figures (AWS's own)

    Accessed 2026-10-05

  4. SecondaryAWS re:Invent Keynote Day 2 Takeaways — The Agile Admin, Nov 13, 2014

    Lambda and the EC2 Container Service announced in Werner Vogels's day-two keynote

    Accessed 2026-10-05

  5. TertiaryAWS Lambda — Wikipedia

    Accessed 2026-08-03

Last updated:

Share