PyPI uptime
PyPI, checked by StatOSS every 5 minutes from Aarhus and Copenhagen in Denmark, Falkenstein in Germany, Ashburn in the USA, Singapore, and Sydney in Australia. Measured from outside, with every outage dated in UTC.
PyPI is up.
Up for 6 d 3 h. Last checked 2026-10-06 11:37 UTC from Singapore: 200 in 10 ms.
Last 24 hours
Up for 6 d 3 h100% passed
287 checks, median 29 ms from Falkenstein, all passed
95% under 41 ms
Response time by region
Medians over this range, on one scale up to 100 ms. Europe's places are scaled to Falkenstein, its fastest shared place.
Last 90 days
Up for 6 d 3 h100% passed
1,764 checks, median 23 ms from Aarhus, all passed
95% under 39 ms
Response time by region
Medians over this range, on one scale up to 100 ms. Europe's places are scaled to Aarhus, its fastest shared place.
In the last 24 hours PyPI passed 288 of 288 checks, 100%.
No outage since checks began on 30 Sep 2026.
Availability
The share of checks that passed, and the outages that began, in each window up to now.
| Last | Passed | Checks | Outages |
|---|---|---|---|
| 24 hours | 100% | 288 of 288 | 0 |
| 7 days | Not enough history yet: checks began on 30 Sep 2026 | ||
| 30 days | Not enough history yet: checks began on 30 Sep 2026 | ||
| 90 days | Not enough history yet: checks began on 30 Sep 2026 | ||
A year of checks is kept; the year's figure appears here once there is a year of them.
Response time by location
Over the last 7 days, from the checks that passed: the time from the start of the request to the answer's headers, with the DNS lookup, the connection and TLS included.
| From | Median | 95th percentile | Mean | Checks |
|---|---|---|---|---|
| Falkenstein, Germany | 30 ms | 37 ms | 31 ms | 202 |
| Ashburn, USA | 23 ms | 40 ms | 26 ms | 561 |
| Copenhagen, Denmark | 29 ms | 43 ms | 31 ms | 169 |
| Singapore | 9 ms | 15 ms | 10 ms | 556 |
| Sydney, Australia | 12 ms | 20 ms | 13 ms | 84 |
| Aarhus, Denmark | 25 ms | 44 ms | 29 ms | 192 |
Outages
None detected since checks began on 30 Sep 2026.
What is checked
The Python Package Index, where pip, uv and Poetry find and download Python packages.
StatOSS sends GET https://pypi.org/simple/pip/ and counts the check as passed on status 200 within 10 seconds. The Simple index page for pip: the file list an installer reads before it downloads anything. It is served through PyPI's CDN, as installs are.
Package files come from files.pythonhosted.org, which is not checked, and uploads go through a different path.
PyPI reports its own incidents at status.python.org. The figures here are measured from outside and can differ from it in both directions.
How it is measured
- One check every 5 minutes, from one location at a time in turn: Aarhus and Copenhagen in Denmark, Falkenstein in Germany, Ashburn in the USA, Singapore, and Sydney in Australia.
- A check fails when no answer comes within 10 seconds, when the connection or TLS fails, or when the answer is not status 200.
- A failed check is repeated at once from a second location, and counts only when that location fails too, or cannot answer within 20 seconds.
- Two failed checks in a row make an outage, dated from the second, and the first check that passes ends it. A failure shorter than 10 minutes may not make one, and times are good to about 5 minutes.
- Availability is the share of checks that passed. There are no maintenance windows: every check counts.
It is the same check a StatOSS status page runs for its owner, with the same rules; the docs on checks have the details.