NumPy 2.1 dies August 19 —
and it takes Python 3.11 off NumPy’s floor with it.
NumPy 2.1 reaches end of life on August 19, 2026. Under NEP 29 — NumPy’s deprecation policy, shared across the scientific Python ecosystem as SPEC 0 — every minor version gets 24 months from release, and 2.1 shipped on August 18, 2024. The schedule is published to the day: “On Aug 19, 2026 drop support for NumPy 2.1.” Its final release, 2.1.3, was in November 2024; there will not be another.
That much is routine. What is not routine is what happens on the same date one column over. NEP 29 runs two clocks at once — one for NumPy versions, one for Python versions — and on August 19 both tick. From that day, NumPy’s support floor is Python 3.12+ with NumPy 2.2+. Python 3.11 has fourteen months of its own life left, but its last supported NumPy overlap ends with 2.1. This is the part single-deadline coverage misses, and it is the part that determines whether your upgrade is a version bump or a project.
The NumPy clock: 24 months, every version
NEP 29’s NumPy rule, in its own words: “all minor versions of numpy released in the 24 months prior to the project, and at minimum the last three minor versions.” There is no LTS; every minor gets the same two years. Applied to the current line:
| Version | Released | End of life | Latest | Risk score |
|---|---|---|---|---|
| 2.5 | 2026-06-21 | 2028-06-22 | 2.5.2 | 10 |
| 2.4 | 2025-12-20 | 2027-12-21 | 2.4.6 | 10 |
| 2.3 | 2025-06-07 | 2027-06-08 | 2.3.5 | 10 |
| 2.2 | 2024-12-08 | 2026-12-09 | 2.2.6 | 18 |
| 2.1 | 2024-08-18 | 2026-08-19 | 2.1.3 | 25 |
| 2.0 | 2024-06-16 | 2026-06-17 | 2.0.2 | 35 |
Note how little 2.2 buys as an upgrade target: it becomes the minimum supported NumPy on August 19 and expires on December 9, 2026 — four months later. Anyone moving off 2.1 “to the next one” schedules a second move before the year is out.
The Python clock: the floor that moves the same day
The second NEP 29 rule: “all minor versions of Python released 42 months prior to the project, and at minimum the two latest minor versions.” Python 3.11 was released October 24, 2022, so its 42 months ran out on April 24, 2026 — NEP 29’s drop schedule records exactly that. From that date the floor was 3.12+, but NumPy 2.1 (which still built for 3.11) remained supported, so 3.11 users kept a live overlap. August 19 removes it. The support table’s row for that day reads 3.12+ / 2.2+.
Meanwhile Python 3.11 itself is supported until October 31, 2027. That gap — fourteen months in which the interpreter is fine but its ecosystem has moved on — is the recurring trap of the scientific Python stack: a language version outlives its libraries’ willingness to support it by more than a year. If you are on 3.11 and reading this, the NumPy upgrade and the Python upgrade are one piece of work, and the NumPy side is the one with the earlier date.
If you are on Python 3.10, your NumPy died last June
The same rule already ran its course one version earlier, and it is worth spelling out because it is the situation a lot of long-lived environments are quietly in. Python 3.10 dropped from NumPy’s floor on April 4, 2025. The last NumPy minor to support it was 1.25 — which reached its own end of life on June 18, 2025. So a Python 3.10 environment has had no supported NumPy for over a year, while Python 3.10 itself does not expire until October 31, 2026. It scores 45 on our risk scale, and every month adds to it.
That is the compound-clock problem in one line: your interpreter’s EOL date is not your stack’s EOL date. The libraries move first, and NEP 29 publishes exactly when.
What to do
If you are on NumPy 2.1 with Python 3.12 or newer: upgrade to 2.5 — supported to June 22, 2028, the longest runway available. Skip 2.2 unless something pins you to it; it buys four months.
If you are on Python 3.11: the NumPy upgrade requires the Python upgrade — 2.2 and later are 3.12+. Treat August 19 as the date, not October 2027, and plan the interpreter move now.
If you are on Python 3.10: you have been unsupported at the NumPy layer since June 2025 and the interpreter itself ends October 31, 2026. This is overdue rather than upcoming; both moves at once, to 3.12+ and NumPy 2.5.
If you cannot move now: commercial extended support for end-of-life NumPy exists — the extended-support market covers the scientific Python stack — and for a pinned research or production environment it can be the right bridge while the interpreter migration is scheduled. Tell us your situation via the form on this page and we will reply with matched options, free and independent.
Every NumPy release, its dates and its EOL Risk Score are on the NumPy lifecycle page; the Python side is on the Python lifecycle page and in our Python end-of-life guide.
Frequently Asked Questions
When does NumPy 2.1 reach end of life?
August 19, 2026. NumPy's NEP 29 deprecation policy supports each minor version for 24 months from release; 2.1 shipped on August 18, 2024, and NEP 29's published drop schedule reads 'On Aug 19, 2026 drop support for NumPy 2.1'. Its final release was 2.1.3 in November 2024.
How long is a NumPy version supported?
Under NEP 29 (the policy the scientific Python ecosystem shares as SPEC 0), NumPy supports all minor versions released in the prior 24 months, and at minimum the last three minors. Python versions are supported for 42 months from release, at minimum the two latest minors. Both windows roll forward on a published schedule.
Which Python versions does NumPy support after August 19, 2026?
From August 19, 2026 NEP 29's support table reads Python 3.12+ with NumPy 2.2+. Python 3.11 dropped from the floor on April 24, 2026 under the 42-month rule, and 2.1's retirement makes 2.2 the oldest supported NumPy — so on the same day, Python 3.11 users lose their last overlap. Python 3.10 left the floor on April 4, 2025; NumPy 1.25 was the last minor to support it, and 1.25 itself reached end of life on June 18, 2025.
What should I upgrade NumPy 2.1 to?
NumPy 2.5 (supported to June 22, 2028) if your interpreter is 3.12 or newer — it is the longest runway available. NumPy 2.2 is the minimum supported version from August 19 but ends December 9, 2026, so it only buys four months. If you are on Python 3.11 or older, the NumPy upgrade and the Python upgrade are the same project.