Home / Open data

CGNAT.wtf open data: ISP CGNAT, static IP and IPv6 dataset (JSON)

Everything on this site is built from static JSON files you can read directly: 41 US home ISPs with CGNAT defaults, public IPv4 opt-outs, static IP options and prices, IPv6, upload, inbound ports 25/80/443 and the terms on servers, each with its sources. No key, no sign-up.

FileWhat's in itShape
/data/isps.jsonEvery ISP and every field: value, note, sources (URL + source type), quote, last-checked date, CGNAT confidence, ASNs, states served.Object: generated, count, isps[]
/data/selfhost.jsonYes / maybe / no / unknown per ISP and use (website, mail, game, media, remote desktop, cameras, files, voice/video), with the reasons and sources.Object: uses, verdicts, isps
/data/hostreport.jsonCompact per-ISP row behind the checker's report: CGNAT default, opt-out, static IP and price, IPv6, server terms, public-IP guide.Object keyed by ISP slug
/data/asn.jsonISP slug to network numbers (ASNs) and organization-name fallbacks, checked against public network registry records. The checker uses it to name your ISP.Array of {slug, name, asn[], names[]}
/data/states.jsonUS state code to its state page (only states with a page).Object keyed by state code
/changes/feed.xmlDated, cited ISP policy changes and our own data updates.Atom feed

How to use it

Example

Fetch https://cgnat.wtf/data/isps.json, find the ISP by slug in isps, and read a field such as cgnat:

{"slug": "cox", "cgnat": {"v": "some", "conf": "low", "note": "...", "src": [{"url": "https://...", "kind": "community"}], "checked": "2026-10-16"}, ...}

Linking and reuse

You're welcome to link to these files and to the ISP pages, and to quote individual facts with a link back to the ISP's page on cgnat.wtf. An open license for bulk reuse hasn't been chosen yet; until then the dataset is all rights reserved. Found a mistake? Submit a correction.