Skip to content
https://pypi.org

Infrastructure

· 9 checks — DNS, redirects, IPv6, crawlability, URL variants, and domain intelligence rolled into one auditable list.
SCORE
100
GRADE
A+
FIX
0
REVIEW
1
PASS
8
INFO
0
Probed from New York, United Stated
200 OK
Checks
9
8 PASS 1 REVIEW
B
TLS Certificate Expiry & Recommendations
282 days until leaf cert expires — 2 issues to address
REVIEW

Certificate validity

282
days left
0d 30d 60d 90d+

Recommended actions

  • Submit your domain to hstspreload.org to be added to the Chrome preload list
  • Enable OCSP stapling on your TLS server to remove a CA roundtrip and protect user privacy
A+
DNS Records
4 A records, 31 ms lookup
PASS
4 A records, 31 ms lookup
Info::
Resolves to 4 IPv4 address(es)
Got: 151.101.128.223, 151.101.0.223, 151.101.64.223, 151.101.192.223
Info::
Has 4 IPv6 (AAAA) record(s)
Got: 2a04:4e42:400::223, 2a04:4e42:200::223, 2a04:4e42:600::223, 2a04:4e42::223
Info::
4 nameserver(s) configured
Got: ns-96.awsdns-12.com, ns-897.awsdns-48.net, ns-1264.awsdns-30.org, ns-1702.awsdns-20.co.uk
Info::
5 mail exchanger(s) configured
Info::
CAA records not checked
CAA record lookup requires a specialized DNS resolver. This check will be available in a future update.
Info::
SPF record present in TXT
Info::
DNS resolution time: 31 ms
Got: 31 ms
A151.101.128.223, 151.101.0.223, 151.101.64.223, 151.101.192.223
AAAA2a04:4e42:400::223, 2a04:4e42:200::223, 2a04:4e42:600::223, 2a04:4e42::223
CNAME
NSns-96.awsdns-12.com, ns-897.awsdns-48.net, ns-1264.awsdns-30.org, ns-1702.awsdns-20.co.uk
MX
1 aspmx.l.google.com
5 alt2.aspmx.l.google.com
5 alt1.aspmx.l.google.com
10 aspmx3.googlemail.com
10 aspmx2.googlemail.com
TXT
google-site-verification=YdrllWIiutXFzqhEamHP4HgCoh88dTFzb2A6QFljooc
google-site-verification=ZI8zeHE6SWuJljW3f4csGetjOWo4krvjf13tdORsH4Y
SPF v=spf1 include:_spf.google.com include:amazonses.com include:helpscoutemail.com ...
CAALookup not available with standard resolver
Resolved in 31 ms

CAA record lookup requires a specialized DNS resolver. This check will be available in a future update.

Why this matters

Informational: CAA (Certification Authority Authorization) records weren't checked in this scan.

A+
Redirect Chain
No redirects — direct access
PASS
No redirects — direct access
Info::
No redirects — direct access
Got: https://pypi.org

https://pypi.org

11 ms · HTTP/1.1 FINAL

#URLStatusTimeProtocolServer
1https://pypi.org20011 msHTTP/1.1gunicorn
A+
IPv6 Readiness
IPv6 reachable (1 ms)
PASS
IPv6 reachable (1 ms)
Info::
IPv6 is configured and reachable at 2a04:4e42:400::223, 2a04:4e42:200::223, 2a04:4e42:600::223, 2a04:4e42::223
Got: 1 ms connect
IPv6 Ready
AAAA Records 2a04:4e42:400::223, 2a04:4e42:200::223, 2a04:4e42:600::223, 2a04:4e42::223 Connection Reachable (1 ms)
A+
Crawlability
robots.txt present, sitemap with 257 URLs
PASS
robots.txt present, sitemap with 257 URLs
Info::
robots.txt is present
Got: 325 bytes
Info::
sitemap.xml is present
Info::
sitemap.xml is valid XML
Info::
sitemap.xml contains 257 entries
Info::
Sitemap index with 257 child sitemaps
Info::
robots.txt references sitemap
robots.txt 200 OK
Size 325 B Sitemaps referenced 1 User-agents * Blocking No — crawling allowed
Sitemap: https://pypi.org/sitemap.xml

User-agent: *
Disallow: /simple/
Disallow: /packages/
Disallow: /_includes/authed/
Disallow: /project/*/submit-malware-report/
Disallow: /pypi/*/json
Disallow: /pypi/*/*/json
Disallow: /pypi*?
Disallow: /search*
Disallow: /_/
Disallow: /integrity/
Disallow: /account/
Disallow: /admin/

sitemap.xml 200 OK
Type Sitemap Index URLs 257 entries Valid XML Yes
Child Sitemaps:
A+
URL Variants
www/non-www, trailing slash, HTTP→HTTPS
PASS
www/non-www, trailing slash, HTTP→HTTPS
Info::
www/non-www redirect configured correctly (preferred: non-www)
Info::
HTTP correctly 301-redirects to HTTPS

www / non-www

301https://www.pypi.org/
200https://pypi.org/

Preferred variant: non-www

HTTP → HTTPS

301http://pypi.org/ https://pypi.org/

Consistent

A+
Domain Intelligence
pypi.org — via Gandi SAS, 10 years, 10 months old
PASS
pypi.org — via Gandi SAS, 10 years, 10 months old
Info::
Domain registered until Jul 24, 2032 (6 years, 4 months remaining)
Info::
DNSSEC is enabled
Info::
Registrar: Gandi SAS
Warning::
Registrar lock is NOT enabled
The domain can be transferred without an unlock step. Enable registrar lock (clientTransferProhibited) in your registrar's control panel to protect against unauthorized or accidental transfers.
Domain expiry

2231 days

July 24, 2032

SSL certificate

282 days

Issued by GlobalSign nv-sa

Domain age

10 years, 10 months

Registered July 24, 2015

DNSSEC

Enabled

Protects against DNS spoofing

Hosting

Unknown

2a04:4e42:200::223

Registrar

Gandi SAS

Unlocked 4 NS records
Expiry timeline
Today
+1 year
Domain expiry SSL expiry Danger zone (≤30 days)
Recommended actions
  • Enable registrar lock (clientTransferProhibited) to block unauthorized domain transfers
Registrar Gandi SAS
Created July 24, 2015 (10 years, 10 months ago)
Expires July 24, 2032 (6 years, 4 months)
Last Updated June 17, 2025
Name Servers ns-1264.awsdns-30.org, ns-1702.awsdns-20.co.uk, ns-897.awsdns-48.net, ns-96.awsdns-12.com
DNSSEC Enabled
Hosting
IP Address 2a04:4e42:200::223
Data source: rdap (0.3s)

The domain can be transferred without an unlock step. Enable registrar lock (clientTransferProhibited) in your registrar's control panel to protect against unauthorized or accidental transfers.

Why this matters

Without registrar lock, an attacker who phishes your registrar credentials can transfer the domain in minutes — total brand hijack.

Learn more

Registrar lock (clientTransferProhibited, clientUpdateProhibited, clientDeleteProhibited) requires extra verification before any transfer/update/delete. Every major registrar offers it free. Combined with 2FA on your registrar account, it's the strongest defense against domain hijacking.

Source: ICANN / domain-security best practice

A+
HTTP Probe Timing
Total 10 ms — DNS, TCP, TLS, TTFB, content transfer breakdown
PASS
DNS Lookup DNS Lookup — time to resolve the domain name to an IP address.
3 ms
TCP Connect TCP Connect — time to establish a TCP connection to the server.
1 ms
TLS Handshake TLS Handshake — time to complete the HTTPS encryption handshake.
3 ms
Time to First Byte Time to First Byte — how long the server takes to respond with the first byte of data.
10 ms
Total Time Total request time from DNS lookup through full response.
11 ms

Connection waterfall

DNS Lookup 3 ms TCP Connect 1 ms TLS Handshake 3 ms Server Processing 4 ms Content Transfer 0 ms
A+
CDN & Delivery
Fastly (MISS, HIT, HIT)
PASS
Fastly (MISS, HIT, HIT)
Info::
Site is served via Fastly CDN
Got: x-served-by: cache-iad-kjyo7100035-IAD, cache-iad-kjyo7100172-IAD, cache-lga21921-LGA
Info::
CDN cache status: MISS, HIT, HIT
CDN Detected: Fastly
Provider Fastly Cache Status MISS, HIT, HIT Evidence x-served-by: cache-iad-kjyo7100035-IAD, cache-iad-kjyo7100172-IAD, cache-lga21921-LGA
All checks on this page are automated. Results are estimates - run targeted manual reviews when the score affects a release decision.

Send Feedback