Data / API

Load any dataset into your own code

Each of the 76 datasets on this site is a JSON file at a fixed address, with field types that stay fixed. Code on any site can read it, with no key and no sign-in.

The id of a dataset is its address with dots for slashes, so /power/states.csv is power.states. Its current rows are at https://jesseahawkins.com/data/v1/datasets/power.states.json. A field of numbers holds numbers, and an empty cell holds null.

curl
curl -s https://jesseahawkins.com/data/v1/datasets/power.states.json | jq '.rows[0]'
Python
import pandas as pd, requests

r = requests.get("https://jesseahawkins.com/data/v1/datasets/power.states.json").json()
df = pd.DataFrame(r["rows"])
df.shape  # (51, 16)
JavaScript
const r = await fetch("https://jesseahawkins.com/data/v1/datasets/power.states.json").then((x) => x.json());
console.table(r.rows.slice(0, 5));
R
df <- read.csv("https://jesseahawkins.com/power/states.csv")
dim(df)  # 51 16

Addresses

https://jesseahawkins.com/data/v1
AddressWhat it holds
/index.jsonEvery dataset: its id, title, fields and types, row count, terms, the day it was checked, the day it is due again, and its links.
/datasets/{id}.jsonThe current rows, the same facts, the sha256 of the CSV they came from, and whether that CSV is the latest fixed release.
/datasets/{id}/releases.jsonEvery fixed release, oldest first, with its sha256 and the rows and fields that changed.
/datasets/{id}/releases/{release}.jsonOne fixed release as JSON. It never changes, so a citation can point to it.
/openapi.jsonThe four addresses above as OpenAPI 3.1, with every dataset id.

For AI assistants

/llms.txt →

/llms.txt lists every section and dataset in plain text. https://jesseahawkins.com/data/mcp is a Model Context Protocol server over Streamable HTTP. Add it to an assistant as a remote server; it needs no key and keeps no session. It reads the same files as this API, and it cannot write.

ToolWhat it gives
list_datasetsList the open datasets: id, title, section, what one row is, the row count, fields with their types, terms, the day each was checked, and its links. Filter by section or by words in the id or title.
read_datasetRead the current rows of one dataset by its id (from list_datasets). Gives 100 rows by default and 1000 at most; use offset for the next page. "where" keeps only rows whose fields equal the given values.
read_seriesRead one time series: its unit, frequency, source, licence and every reading, oldest first. Call it with no id to list the series. "from" and "to" limit the periods, inclusive.
find_entityFind the page of a company, data center, country, US state, occupation, AI model, chip plant, process node, AI accelerator, AI vendor, AI law, chart, term or dataset by name. Best matches first.

What stays fixed in version 1

v1
  • A dataset keeps its id, and a field keeps its name and its type. A field of numbers stays numbers.
  • New fields can appear, so read fields by name and ignore the ones you do not use.
  • A release file never changes after it is published. It carries its own field types, read from its own rows, and an old release can type a field differently from the current rows.
  • A dataset that stops is listed under retired in the index, with the day it stopped.
  • A change that would break any of these gets a new version at a new address, and version 1 stays.

Where each value comes from

tier

Each field in a dataset file has a tier. A field that is an identifier or a place, and most text fields, have null. When one field holds values of two tiers, tier is null and tierBy names the field of the same row that decides, with the tier of each of its values.

quoted
The source publishes this value, and this site copies it. A change of unit or of rounding is allowed. Nothing else is.
derived
This site calculates the value from quoted values with fixed arithmetic: a sum, an average, a share, a change, a count or a rank.
modelled
An estimate from a model, made by the source or by this site. A value calculated from a modelled value is modelled.

Each dataset file also has freshness: the state that /status/ shows, with a notice when the data is due or late. The files are static, so the state is true for asOf, the day of the build. The dataset is due from next and late from late; compare those dates with the day you read the file.

Every dataset id

index.json →
IdDatasetSectionFieldsRowsTiersStateFiles
buildout.promises AI campuses, planned against reached Buildout 18 91 modelled late JSONReleases
buildout.sites AI data centers Buildout 19 95 modelled late JSONReleases
buildout.spending US data-center construction spending, every release Buildout 10 706 quoted, derived late JSONReleases
power.bill Commercial and industrial power prices, and a year’s bill Power 15 233 derived, modelled late JSONReleases
power.capacity PJM capacity price by zone Power 17 110 quoted, derived current JSONReleases
power.grids Fuel mix of US grids with AI sites Power 19 25 derived, modelled current JSONReleases
power.nuclear Nuclear power agreements for AI Power 19 22 quoted, derived due JSONReleases
power.plants Power plants planned, added and retired near AI sites Power 18 461 quoted late JSONReleases
power.queue ERCOT large-load queue: MW by ERCOT’s status words and by year, from each monthly operational overview Power 13 957 quoted current JSONReleases
power.states Power prices and AI capacity by state Power 16 51 derived, modelled late JSONReleases
power.tariffs Large-load tariffs and rules for data centers Power 23 44 quoted current JSONReleases
power.utilities Utilities serving counties with AI sites Power 14 245 quoted, derived, modelled current JSONReleases
power.world Power mix of every country that hosts AI Power 25 55 quoted, derived, modelled due JSONReleases
machine.chip-plants Chip plants Machine 11 456 — current JSONReleases
machine.chips Chip prices, output and parts Machine 12 2,022 quoted, modelled current JSONReleases
machine.imports US imports of servers and chips Machine 9 1,560 quoted late JSONReleases
machine.sales Monthly sales of Taiwan’s AI hardware makers Machine 14 78 quoted current JSONReleases
machine.supercomputers AI computing power by site Machine 10 74 modelled late JSONReleases
chips.accelerators The accelerator record: each AI chip’s figures and dates, quoted Chips 21 178 quoted, derived current JSONReleases
chips.books Chip makers’ books: capital spending, research, inventory and sales to China Chips 20 423 quoted, derived current JSONReleases
chips.controls The US Entity List at every version, and BIS chip rules Chips 15 261 derived current JSONReleases
chips.cost Die and package cost lab Chips 17 115 modelled current JSONReleases
chips.cycle The chip cycle board: ten monthly series, how many improve, and which lead Chips 13 629 derived current JSONReleases
chips.fab-spending Construction spending at US chip, electronics and electrical plants, by month, with data centers Chips 11 404 quoted, derived late JSONReleases
chips.fabs The fab record: each plant’s dated fields and public money, quoted Chips 15 130 quoted current JSONReleases
chips.inference-gains AI chips on the inference benchmark: each chip’s best result per chip in two compatible rounds Chips 25 64 derived current JSONReleases
chips.inference AI chips on the inference benchmark: each MLPerf® Inference: Datacenter result, with this site’s figure per chip Chips 23 1,441 quoted, derived current JSONReleases
chips.market The market desk: chip readings furthest from normal, and when this site first held each release’s reading Chips 21 24 quoted, derived current JSONReleases
chips.materials Chip materials: production, prices and export controls Chips 13 290 quoted, derived current JSONReleases
chips.memory-prices Memory chip prices at the EU border, and Micron’s price and bit index from its own words Chips 16 644 quoted, derived current JSONReleases
chips.memory The memory desk: makers’ quarters, Taiwan memory sales, Korea’s memory exports Chips 16 255 quoted, derived current JSONReleases
chips.nodes The process-node record: each promise and delivery, quoted Chips 18 72 quoted, derived current JSONReleases
jobs.occupations US occupations and AI exposure Jobs 26 832 quoted, derived, modelled due JSONReleases
ledger.ledger Job cuts blamed on AI Ledger 13 63 quoted current JSONReleases
frontier.catch-up Days until open weights matched each leader Frontier 11 63 derived due JSONReleases
frontier.clock Benchmark saturation clock Frontier 12 15 quoted, derived due JSONReleases
frontier.downloads-labs Open-weight downloads by Frontier lab, read each week from the Hugging Face Hub Frontier 13 14 derived due JSONReleases
frontier.downloads Open-weight downloads: the top models on the Hugging Face Hub and each Frontier lab’s top ten, read each week Frontier 15 194 quoted, derived due JSONReleases
frontier.reigns First place on the Arena leaderboards Frontier 10 81 derived due JSONReleases
frontier.retirements Model retirements: each AI vendor’s deprecation and retirement dates, quoted Frontier 27 611 quoted, derived late JSONReleases
vendors The AI vendor record: what each vendor’s own pages say on training and retention, quoted Vendors 14 174 quoted current JSONReleases
vendors.federal-by Federal AI contracts: obligations by awarding agency and by recipient, for each reading and window Vendors 12 202 quoted, derived current JSONReleases
vendors.federal Federal AI contracts: US contract obligations whose record names artificial intelligence, by month Vendors 8 109 quoted current JSONReleases
vendors.questionnaire The AI vendor questionnaire, answered: each vendor’s answer to nine buyer questions, quoted Vendors 18 189 quoted late JSONReleases
vendors.status-incidents AI service reliability: every incident on AI vendors’ status pages, kept Vendors 19 338 derived due JSONReleases
rules.enforcement.enforcement The AI enforcement record: each FTC, SEC, Justice Department and FCC action that names AI, quoted Rules 22 39 quoted current JSONReleases
rules.rules The AI rules calendar: each dated duty of the EU AI Act and US state AI laws, quoted Rules 23 42 quoted due JSONReleases
asia.asia The Asia desk: official releases from China, Taiwan, South Korea and Japan on chips, export controls and AI, quoted Asia 16 25 quoted current JSONReleases
dispatch.scores Dispatch event scores Dispatch 21 5 quoted, derived on demand JSONReleases
records Records: where each series stands Records 18 18 quoted, derived late JSONReleases
records.capex Records series: Capital spending of 9 AI spenders Records 8 10 derived due JSONReleases
records.chip-output Records series: US chip output Records 8 116 quoted current JSONReleases
records.chip-utilization Records series: US chip plants’ use of capacity Records 8 116 quoted current JSONReleases
records.grads Records series: Unemployment of recent graduates Records 8 90 quoted due JSONReleases
records.hires Records series: US hires rate Records 8 92 quoted due JSONReleases
records.home-power Records series: US home power price Records 8 127 derived late JSONReleases
records.imports-servers Records series: US imports of servers, twelve months Records 8 93 derived late JSONReleases
records.imports Records series: US imports of AI hardware, twelve months Records 8 93 derived late JSONReleases
records.layoffs Records series: US layoffs rate Records 8 92 quoted due JSONReleases
records.log Records log: each new high and low Records 16 8 quoted, derived late JSONReleases
records.openings Records series: US job openings rate Records 8 92 quoted due JSONReleases
records.payrolls Records series: US payroll jobs Records 8 93 quoted due JSONReleases
records.postings Records series: US job postings on Indeed Records 8 81 quoted due JSONReleases
records.ppi-boards Records series: Producer prices: circuit boards and modules Records 8 273 quoted current JSONReleases
records.ppi-chips Records series: Producer prices: chips Records 8 715 quoted current JSONReleases
records.ppi-servers Records series: Producer prices: servers Records 8 261 quoted current JSONReleases
records.ppi-storage Records series: Producer prices: storage drives Records 8 405 quoted current JSONReleases
records.spending Records series: US data-center construction Records 8 152 quoted late JSONReleases
records.states-log Records by state: each new high and low Records 16 38 derived late JSONReleases
records.states Records by state Records 15 51 derived late JSONReleases
records.unemployment Records series: US unemployment rate Records 8 92 quoted due JSONReleases
series Grapher: every reading of every series Grapher 9 3,906 quoted, derived late JSONReleases
companies Companies across every dataset Companies 29 18 quoted, derived, modelled late JSONReleases
explorer.campuses Explorer: AI campuses Explorer 14 95 modelled late JSONReleases
explorer.countries Explorer: countries Explorer 16 54 derived, modelled due JSONReleases
explorer.supercomputers Explorer: supercomputers Explorer 10 453 modelled due JSONReleases

Terms

—

Each dataset carries its terms in terms, in the words of its own sources. Credit the source a dataset names when you reuse it. The files are static, so fetch them as often as you need, and use the release files when a result must not change.