Skip to content
Serverless

AWS Lambda Releases

Track AWS Lambda runtime versions, deprecation timelines, custom runtime guidance, performance tiers, and cold start comparison per runtime language.

Total Versions

Supported

Latest

Version Timeline

All tracked releases with lifecycle status and EOL dates.

Loading version data…

Lifecycle Timeline

Visual overview of active support and maintenance windows.

python3.9
python3.10
python3.11
python3.12
nodejs18.x
nodejs20.x
nodejs22.x
java21
2023 2024 2025 2026 2027 2028 2029
Active
Maint
Active
Maint
Active
Maint
Active
Maint
Active
Maint
Active
Maint
Active
Maint
Active
Maint
Active / LTS
Maintenance
Today

Upgrade Paths

Migration guidance between major versions — breaking changes, effort estimates, and tips.

python3.9 / nodejs18.x (AL2) python3.12 / nodejs20.x (AL2023) Medium Difficulty
Est. 1-3 hours per function (more with native extensions)

Breaking Changes

  • Base OS changed from AL2 to AL2023
  • OpenSSL 1.1.1 → 3.0 (breaks some native extensions)
  • Python: removed deprecated modules (imghdr, cgi, etc.)
  • Node.js: fetch() now built-in, some npm packages affected
  • System library paths changed
  • AWS SDK v3 bundled instead of v2 (Node.js)

Migration Notes

The AL2→AL2023 base change is the biggest risk. Native extensions compiled on AL2 may not work. Test with Lambda layers rebuilt for AL2023. For Python, check for removed stdlib modules. For Node.js, the AWS SDK v2→v3 bundling change means you may need to bundle v2 yourself if you depend on it.

java11 / java17 java21 Low-Medium Difficulty
Est. 1-2 hours per function

Breaking Changes

  • Java module system stricter enforcement
  • Deprecated APIs removed
  • SnapStart behavior changes between JDK versions
  • AL2023 base OS (if coming from java11 on AL2)

Migration Notes

Java runtime upgrades on Lambda are smoother than most. The main concern is SnapStart compatibility: re-test snapshot restoration with the new JDK. If using native libraries or JNI, verify they work on AL2023.

Version Risk Assessment

Evaluate risk factors before choosing a version for production.

Version EOL Risk CVE Risk Ecosystem Cloud Support Overall Recommended Action
AWS Lambda python3.8 / nodejs16 Critical High Deprecated Phase 2 Critical Cannot update — migrate immediately
AWS Lambda python3.9 / nodejs18 High Medium Maintenance Active High Deprecation approaching — migrate to 3.12/20.x
AWS Lambda python3.10-3.11 Low Low Active Active Low Supported — upgrade at convenience
AWS Lambda python3.12 / nodejs20 None Low Active Active Low Current recommended — AL2023 base
AWS Lambda nodejs22.x / java21 None Low Active Active Low Latest — recommended for new functions

AWS Lambda runtime deprecation follows the upstream language EOL schedule plus a grace period. Deprecated runtimes receive no security patches. Assessed March 2026.

Lambda Runtime Comparison

Side-by-side feature differences across major versions.

Feature python3.9 python3.12 nodejs18 nodejs20 java21
Base OS AL2 AL2023 AL2 AL2023 AL2023
Cold start (128MB) ~200ms ~150ms ~250ms ~200ms ~3s (500ms w/SnapStart)
Max memory 10GB 10GB 10GB 10GB 10GB
SnapStart N/A N/A N/A N/A Supported
Bundled AWS SDK boto3 boto3 SDK v2 SDK v3 SDK v2
OpenSSL 1.1.1 3.0 1.1.1 3.0 3.0
ARM64 (Graviton) Yes Yes Yes Yes Yes
Deprecation (est.) Sep 2025 Feb 2028 Sep 2025 Oct 2026 Jan 2028

Embed Badges

Add live AWS Lambda status badges to your README, docs, or dashboard.

Health Status

Overall support health

AWS Lambda Health Status
![AWS Lambda Health Status](https://img.releaserun.com/badge/health/aws-lambda.svg)

EOL Countdown

Next end-of-life date

AWS Lambda EOL Countdown
![AWS Lambda EOL Countdown](https://img.releaserun.com/badge/eol/aws-lambda.svg)

Latest Version

Current stable release

AWS Lambda Latest Version
![AWS Lambda Latest Version](https://img.releaserun.com/badge/v/aws-lambda.svg)

CVE Status

Known vulnerabilities

AWS Lambda CVE Status
![AWS Lambda CVE Status](https://img.releaserun.com/badge/cve/aws-lambda.svg)

Frequently Asked Questions

Common questions about AWS Lambda releases and lifecycle.

What happens when a Lambda runtime is deprecated?
AWS deprecates Lambda runtimes in two phases. Phase 1: you cannot create new functions, but existing ones still run and can be updated. Phase 2: you cannot update existing functions. Functions continue to run but receive no security patches. AWS has never forcibly stopped functions on deprecated runtimes, but running unpatched code in production is a security risk. You typically get 6-12 months warning before Phase 1.
Which Lambda runtime has the best cold start performance?
Compiled runtimes (provided.al2023 with Rust, Go, or C++) have the fastest cold starts: 5-50ms. Python is next at 100-200ms. Node.js is similar at 100-250ms. Java has the worst cold starts (1-5 seconds) unless you use SnapStart (brings it down to 200-500ms). .NET with Native AOT is 100-300ms. For latency-sensitive workloads, choose Python/Node.js or compiled runtimes.
Should I use managed runtimes or custom runtimes?
Use managed runtimes (python3.12, nodejs20.x, etc.) unless you need a specific language version, a language not supported by AWS (Rust, Go, C++), or want full control over the runtime. Managed runtimes get automatic security patches from AWS. Custom runtimes (provided.al2023) require you to manage patching. The provided.al2023 base is the recommended custom runtime base.
What is Lambda SnapStart?
SnapStart (Java only, GA since 2022) takes a snapshot of the initialized function after the init phase and caches it. Subsequent cold starts restore from the snapshot instead of re-initializing, reducing cold start from 3-5 seconds to 200-500ms. It works with Corretto 11, 17, and 21. Trade-off: you need to handle state restoration carefully (connections, random seeds, unique IDs).
How do I migrate between Lambda runtime versions?
Update the runtime setting in your function configuration (or SAM/CDK/Terraform template). Test thoroughly: each runtime version may include breaking changes in the language itself (e.g., Python 3.9→3.12 removed deprecated modules), changes in included SDK versions, and OS-level changes (AL2 to AL2023 base). Use Lambda aliases and gradual deployment (CodeDeploy) to roll out safely.
What is the difference between AL2 and AL2023 Lambda runtimes?
Newer runtimes (python3.12+, nodejs20.x+, java21) use Amazon Linux 2023 as the base OS. Older runtimes use AL2. AL2023 has a newer kernel, OpenSSL 3.0, and different system libraries. This can break Lambda functions that depend on specific system library versions or compile native extensions. Test your function on the new runtime before switching.

Related Tools