Data / Quality
Is the data correct and complete?
How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.Method →Code → datasets · How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.Method →Code → failing rows · weakest: Producer and holder rows at How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → · measured 12:28 UTC
01Scores
| Dataset | Score | Completeness | Correctness | Provenance | Freshness | Link health | Consistency |
|---|---|---|---|---|---|---|---|
| Producer and holder rows | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | 25 of 33 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.25 of 33 rows held.Method →Code → | not measured | 200 of 232 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.200 of 232 rows held.Method →Code → | not measured | 189 of 190 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.189 of 190 rows held.Method →Code → | 11 of 12 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.11 of 12 rows held.Method →Code → |
| Tickers and listings | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | 238 of 238 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.238 of 238 rows held.Method →Code → | 123 of 124 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.123 of 124 rows held.Method →Code → | 100 of 100 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.100 of 100 rows held.Method →Code → | 139 of 139 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.139 of 139 rows held.Method →Code → | 153 of 153 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.153 of 153 rows held.Method →Code → | 70 of 70 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.70 of 70 rows held.Method →Code → |
| Key-number series (corpus) | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | 17 of 17 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.17 of 17 rows held.Method →Code → | 1130 of 1138 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1130 of 1138 rows held.Method →Code → | 554 of 574 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.554 of 574 rows held.Method →Code → | 140 of 140 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.140 of 140 rows held.Method →Code → | 564 of 564 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.564 of 564 rows held.Method →Code → | 139 of 139 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.139 of 139 rows held.Method →Code → |
| Official statistics (BLS) | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | 6 of 6 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.6 of 6 rows held.Method →Code → | not measured | 6 of 6 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.6 of 6 rows held.Method →Code → | 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code → | 6 of 6 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.6 of 6 rows held.Method →Code → | 6 of 6 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.6 of 6 rows held.Method →Code → |
| Claims checked against series | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | not measured | not measured | 12 of 12 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.12 of 12 rows held.Method →Code → | 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code → | not measured | 12 of 12 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.12 of 12 rows held.Method →Code → |
| Dependencies (what needs what) | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | 14 of 17 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.14 of 17 rows held.Method →Code → | 47 of 47 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.47 of 47 rows held.Method →Code → | 50 of 50 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.50 of 50 rows held.Method →Code → | 50 of 50 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.50 of 50 rows held.Method →Code → | 47 of 47 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.47 of 47 rows held.Method →Code → | 50 of 50 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.50 of 50 rows held.Method →Code → |
| Accepted events | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | not measured | 22 of 24 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.22 of 24 rows held.Method →Code → | 24 of 24 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.24 of 24 rows held.Method →Code → | not measured | 24 of 24 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.24 of 24 rows held.Method →Code → | 24 of 24 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.24 of 24 rows held.Method →Code → |
| World production and reserves (USGS MCS) | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | 24 of 27 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.24 of 27 rows held.Method →Code → | 340 of 340 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.340 of 340 rows held.Method →Code → | 1031 of 1031 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1031 of 1031 rows held.Method →Code → | 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code → | 19 of 19 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.19 of 19 rows held.Method →Code → | 254 of 254 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.254 of 254 rows held.Method →Code → |
| Oil, gas, coal and hydro (EIA) | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | not measured | 968 of 968 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.968 of 968 rows held.Method →Code → | 977 of 977 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.977 of 977 rows held.Method →Code → | 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code → | 4 of 4 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.4 of 4 rows held.Method →Code → | 439 of 439 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.439 of 439 rows held.Method →Code → |
| Producers per country (USGS Minerals Yearbook) | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | 1486 of 1486 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1486 of 1486 rows held.Method →Code → | 1481 of 1486 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1481 of 1486 rows held.Method →Code → | 1486 of 1486 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1486 of 1486 rows held.Method →Code → | 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code → | 76 of 76 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.76 of 76 rows held.Method →Code → | 1486 of 1486 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1486 of 1486 rows held.Method →Code → |
| Producer sites on the globe (GeoNames placement) | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | 1167 of 1167 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1167 of 1167 rows held.Method →Code → | 997 of 997 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.997 of 997 rows held.Method →Code → | 997 of 997 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.997 of 997 rows held.Method →Code → | 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code → | 2 of 2 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.2 of 2 rows held.Method →Code → | 997 of 997 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.997 of 997 rows held.Method →Code → |
| Export restrictions (OECD) | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | 1042 of 1091 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1042 of 1091 rows held.Method →Code → | not measured | 1089 of 1091 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1089 of 1091 rows held.Method →Code → | 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code → | 2 of 2 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.2 of 2 rows held.Method →Code → | 1091 of 1091 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1091 of 1091 rows held.Method →Code → |
| Sanctions regimes (EU, OFAC) | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | not measured | not measured | 72 of 72 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.72 of 72 rows held.Method →Code → | 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code → | 297 of 298 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.297 of 298 rows held.Method →Code → | 72 of 72 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.72 of 72 rows held.Method →Code → |
| Science: readiness entries and the feed | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | 32 of 33 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.32 of 33 rows held.Method →Code → | not measured | 1922 of 1922 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1922 of 1922 rows held.Method →Code → | 15 of 15 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.15 of 15 rows held.Method →Code → | 14 of 14 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.14 of 14 rows held.Method →Code → | 14 of 14 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.14 of 14 rows held.Method →Code → |
| Jobs and the boards they come from | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | 138 of 138 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.138 of 138 rows held.Method →Code → | not measured | 2701 of 2701 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.2701 of 2701 rows held.Method →Code → | 2565 of 2565 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.2565 of 2565 rows held.Method →Code → | 131 of 132 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.131 of 132 rows held.Method →Code → | 2563 of 2563 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.2563 of 2563 rows held.Method →Code → |
| Training and learning paths | How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code → | not measured | not measured | 56 of 56 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.56 of 56 rows held.Method →Code → | 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code → | 51 of 51 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.51 of 51 rows held.Method →Code → | not measured |
02Each dataset
Producer and holder rows How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
config/substrata-coverage.ts · config/substrata-participants.ts · shown on /bottlenecks
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links (How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → refused robots)
- Completeness 25 of 33 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.25 of 33 rows held.Method →Code →
- Every bottleneck has at least one maker row with a primary source.
- Correctness —
- Not measured: A producer row links its source but stores no sentence to re-find on it, so it cannot be re-derived mechanically yet. Dependencies, events and series do store one.
- Provenance 200 of 232 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.200 of 232 rows held.Method →Code →
- Every producer, holder and directory row links a primary source; every non-material chokepoint cites a source for why it binds.
- Freshness —
- Not measured: Rows carry no read date — git dates the commit, not the reading. A gap: adding readOn per row would make this measurable.
- Link health 189 of 190 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.189 of 190 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
- Consistency 11 of 12 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.11 of 12 rows held.Method →Code →
- A mining row agrees with USGS: its country produces the resource (Mineral Commodity Summaries), and the company is named in that country’s Minerals Yearbook table.
Network looks are a rotation: the oldest verdict here is from 2026-10-12.
Every bottleneck has at least one maker row with a primary source 8 failing
- Uranium conversion and enrichmentno producer or holder rows at allOn this siteReport an error
- Battery-grade lithium chemicalsno producer or holder rows at allOn this siteReport an error
- Dysprosium metal5 maker row(s), none sourcedOn this siteReport an error
- Rare-earth magnet sinteringno producer or holder rows at allOn this siteReport an error
- Laser powder-bed fusion machinesno producer or holder rows at allOn this siteReport an error
- Semiconductor process engineersno producer or holder rows at allOn this siteReport an error
- Grid interconnection queuesno producer or holder rows at allOn this siteReport an error
- SMR first-of-a-kind licensingno producer or holder rows at allOn this siteReport an error
Every producer and holder row links a primary source 14 failing
- Liquid helium (He-4): Air Productsno source: an unverified leadOn this siteReport an error
- REBCO superconducting tape, 12 mm: MetOxno source: an unverified leadOn this siteReport an error
- Crucible-grade high-purity quartz sand: Shin-Etsu Quartzno source: an unverified leadOn this siteReport an error
- Neon, excimer laser grade: Baosteel Gasesno source: an unverified leadOn this siteReport an error
- Gallium, refined: Nyrstarno source: an unverified leadOn this siteReport an error
- Didymium (Nd-Pr) metal, magnet feed: Lynas Rare Earthsno source: an unverified leadOn this siteReport an error
- Didymium (Nd-Pr) metal, magnet feed: MP Materialsno source: an unverified leadOn this siteReport an error
- Didymium (Nd-Pr) metal, magnet feed: Neo Performance Materialsno source: an unverified leadOn this siteReport an error
- Didymium (Nd-Pr) metal, magnet feed: Solvayno source: an unverified leadOn this siteReport an error
- Dysprosium metal: China Rare Earth Groupno source: an unverified leadOn this siteReport an error
- Dysprosium metal: Shenghe Resourcesno source: an unverified leadOn this siteReport an error
- Dysprosium metal: Lynas Rare Earthsno source: an unverified leadOn this siteReport an error
2 more
- Dysprosium metal: Neo Performance Materialsno source: an unverified leadOn this siteReport an error
- Dysprosium metal: Less Common Metalsno source: an unverified leadOn this siteReport an error
Every non-material chokepoint cites a primary source for why it binds 18 failing
- EUV lithography scannersno source for the claimOn this siteReport an error
- EUV projection opticsno source for the claimOn this siteReport an error
- Advanced packaging capacityno source for the claimOn this siteReport an error
- High-bandwidth memory stacking yieldno source for the claimOn this siteReport an error
- Leading-edge foundry capacityno source for the claimOn this siteReport an error
- Photoresist formulationno source for the claimOn this siteReport an error
- Semiconductor process engineersno source for the claimOn this siteReport an error
- Large power transformer slotsno source for the claimOn this siteReport an error
- Grid interconnection queuesno source for the claimOn this siteReport an error
- Heavy-duty gas turbine order booksno source for the claimOn this siteReport an error
- High-voltage cable and switchgearno source for the claimOn this siteReport an error
- Rare-earth magnet sinteringno source for the claimOn this siteReport an error
6 more
- Precision reduction drivesno source for the claimOn this siteReport an error
- Robot-grade encoders and force sensorsno source for the claimOn this siteReport an error
- Battery-grade lithium chemicalsno source for the claimOn this siteReport an error
- Uranium conversion and enrichmentno source for the claimOn this siteReport an error
- Laser powder-bed fusion machinesno source for the claimOn this siteReport an error
- SMR first-of-a-kind licensingno source for the claimOn this siteReport an error
A mining row is named in the USGS Minerals Yearbook table for that country and resource 1 failing
- Liquid helium (He-4): QatarEnergy (QA)USGS 2020-21 lists 1 helium facility there; none names this companySourceOn this siteReport an error
Source links answer (3 tries; 401/403/429 counted apart) 1 failing
- Crucible-grade high-purity quartz sand: Russian QuartzUND_ERR_CONNECT_TIMEOUT: Connect Timeout Error (attempted address: russianquartz.com:443, timeout: 1SourceOn this siteReport an error
Tickers and listings How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
research/listings.json · shown on /exposure
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → of How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → re-verified at source · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links
- Completeness 238 of 238 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.238 of 238 rows held.Method →Code →
- Every company with a Markets page has a listing row, and every listed company has a primary line.
- Correctness 123 of 124 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.123 of 124 rows held.Method →Code →
- Every SEC line’s CIK still carries that ticker in the SEC ticker file; every FIGI still maps to the recorded ticker and exchange at OpenFIGI.
- Provenance 100 of 100 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.100 of 100 rows held.Method →Code →
- Every line carries its FIGI or CIK and a link to that record.
- Freshness 139 of 139 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.139 of 139 rows held.Method →Code →
- Every row was re-validated within the dataset’s maximum age.
- Link health 153 of 153 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.153 of 153 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
- Consistency 70 of 70 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.70 of 70 rows held.Method →Code →
- Pinned home lines agree with the file, and no two companies claim the same security.
Network looks are a rotation: the oldest verdict here is from 2026-10-13.
The SEC ticker file still gives each CIK its recorded ticker 1 failing
- air-liquide usCIK 1161167 is not in the SEC ticker fileSourceOn this siteReport an error
Key-number series (corpus) How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
research/series.json · shown on /data/series
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → of How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → re-verified at source · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links (How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → refused robots)
- Completeness 17 of 17 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.17 of 17 rows held.Method →Code →
- Every bottleneck binding now has at least one key-number series.
- Correctness 1130 of 1138 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1130 of 1138 rows held.Method →Code →
- Each quoted sentence states the value its point records, and is still on the source page.
- Provenance 554 of 574 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.554 of 574 rows held.Method →Code →
- Every point has a source URL, a verbatim quote, the publisher and its publication date.
- Freshness 140 of 140 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.140 of 140 rows held.Method →Code →
- Each series’ quotes were re-read within the declared maximum age.
- Link health 564 of 564 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.564 of 564 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
Network looks are a rotation: the oldest verdict here is from 2026-10-12.
Every point has a source URL, a quote, the publisher and the date it was published 20 failing
- zeiss-smt-headcount 2025source, quote, publisher or publication date missingSourceOn this siteReport an error
- zeiss-euv-development-partner-network 2025source, quote, publisher or publication date missingSourceOn this siteReport an error
- wacker-polysilicon-division-sales 2021source, quote, publisher or publication date missingSourceOn this siteReport an error
- wacker-polysilicon-division-sales 2022source, quote, publisher or publication date missingSourceOn this siteReport an error
- wacker-polysilicon-division-sales 2023source, quote, publisher or publication date missingSourceOn this siteReport an error
- wacker-polysilicon-division-sales 2024source, quote, publisher or publication date missingSourceOn this siteReport an error
- wacker-polysilicon-division-sales 2025source, quote, publisher or publication date missingSourceOn this siteReport an error
- wacker-semiconductor-grade-polysilicon-capacity-increase 2025-05source, quote, publisher or publication date missingSourceOn this siteReport an error
- wacker-polysilicon-division-employees 2025-12-31source, quote, publisher or publication date missingSourceOn this siteReport an error
- us-employment-semiconductor-related-device-manufacturing 2019-07source, quote, publisher or publication date missingSourceOn this siteReport an error
- us-employment-semiconductor-related-device-manufacturing 2020-07source, quote, publisher or publication date missingSourceOn this siteReport an error
- us-employment-semiconductor-related-device-manufacturing 2021-07source, quote, publisher or publication date missingSourceOn this siteReport an error
8 more
- us-employment-semiconductor-related-device-manufacturing 2022-07source, quote, publisher or publication date missingSourceOn this siteReport an error
- us-employment-semiconductor-related-device-manufacturing 2023-07source, quote, publisher or publication date missingSourceOn this siteReport an error
- us-employment-semiconductor-related-device-manufacturing 2024-07source, quote, publisher or publication date missingSourceOn this siteReport an error
- us-employment-semiconductor-related-device-manufacturing 2025-07source, quote, publisher or publication date missingSourceOn this siteReport an error
- us-employment-semiconductor-related-device-manufacturing 2026-07source, quote, publisher or publication date missingSourceOn this siteReport an error
- tok-global-share-euv-photoresists 2025source, quote, publisher or publication date missingSourceOn this siteReport an error
- tok-global-share-arf-photoresists 2025source, quote, publisher or publication date missingSourceOn this siteReport an error
- tok-global-share-krf-photoresists 2025source, quote, publisher or publication date missingSourceOn this siteReport an error
The quoted sentence is still on the source page 8 failing
- asml-euv-systems-with-revenue-recognized 2020the quoted text is not on the pageSourceOn this siteReport an error
- asml-euv-system-sales 2020the quoted text is not on the pageSourceOn this siteReport an error
- asml-euv-systems-shipped 2019-Q4the quoted text is not on the pageSourceOn this siteReport an error
- asml-euv-systems-shipped 2020-Q4the quoted text is not on the pageSourceOn this siteReport an error
- asml-euv-net-bookings 2020-Q4the quoted text is not on the pageSourceOn this siteReport an error
- asml-euv-net-bookings 2024-Q2the quoted text is not on the pageSourceOn this siteReport an error
- asml-euv-order-intake 2019the quoted text is not on the pageSourceOn this siteReport an error
- us-employment-semiconductor-related-device-manufacturing 2026-07the quoted text is not on the pageSourceOn this siteReport an error
Official statistics (BLS) How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
config/substrata-official-series.ts · research_series_points · shown on /data/series?origin=official
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links
- Completeness 6 of 6 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.6 of 6 rows held.Method →Code →
- Every declared series has points in the database.
- Correctness —
- Not measured: Values are the agency’s API response stored as published, re-fetched daily; a revision overwrites the value.
- Provenance 6 of 6 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.6 of 6 rows held.Method →Code →
- Every series names its BLS series id, which is its source link.
- Freshness 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code →
- The daily fetch ran within its schedule.
- Link health 6 of 6 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.6 of 6 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
Network looks are a rotation: the oldest verdict here is from 2026-10-13.
Claims checked against series How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
research/claims.json · shown on /data
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links
- Completeness —
- Not measured: There is no list of every quantitative sentence in the corpus to measure against yet.
- Correctness —
- Not measured: A claim’s correctness is its series agreeing with it — measured under consistency.
- Provenance 12 of 12 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.12 of 12 rows held.Method →Code →
- Every claim has a verdict and says how it was checked.
- Freshness 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code →
- Claims were re-checked within the declared maximum age.
- Link health —
- Not measured: Claims cite series, whose links are checked under Series.
- Consistency 12 of 12 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.12 of 12 rows held.Method →Code →
- Each claim’s sentence is still in its file, on a real bottleneck, against series that exist.
Dependencies (what needs what) How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
config/substrata-dependencies.ts · shown on /xray
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → of How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → re-verified at source · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links (How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → refused robots)
- Completeness 14 of 17 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.14 of 17 rows held.Method →Code →
- Every bottleneck binding now is joined to at least one dependent or input.
- Correctness 47 of 47 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.47 of 47 rows held.Method →Code →
- The quoted sentence is still on the source page.
- Provenance 50 of 50 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.50 of 50 rows held.Method →Code →
- Every row has a source URL, a verbatim sentence and a read date.
- Freshness 50 of 50 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.50 of 50 rows held.Method →Code →
- Every row was read within 180 days.
- Link health 47 of 47 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.47 of 47 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
Network looks are a rotation: the oldest verdict here is from 2026-10-12.
Every bottleneck binding now is joined to at least one dependent or input 3 failing
- Battery-grade lithium chemicalsno dependency row names itOn this siteReport an error
- Gallium, refinedno dependency row names itOn this siteReport an error
- Semiconductor process engineersno dependency row names itOn this siteReport an error
Accepted events How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
config/substrata-events.ts · config/substrata-events-accepted.json · shown on /events
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → of How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → re-verified at source · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links
- Completeness —
- Not measured: The universe of events is open; what is found and not yet read is the review queue, measured on /data/freshness.
- Correctness 22 of 24 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.22 of 24 rows held.Method →Code →
- The quoted sentence is still on the source page.
- Provenance 24 of 24 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.24 of 24 rows held.Method →Code →
- Every event has a source URL, a quoted sentence, its date and the date it was accepted.
- Freshness —
- Not measured: An event is dated when it happened; it does not go stale.
- Link health 24 of 24 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.24 of 24 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
- Consistency 24 of 24 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.24 of 24 rows held.Method →Code →
- Events name existing bottlenecks and companies, and happened before they were accepted.
Network looks are a rotation: the oldest verdict here is from 2026-10-11.
The quoted sentence is still on the source page 2 failing
- 2026-04-15 ASML plans to ship more than 60 EUV scanners in 2026, high-Nthe quoted text is not on the pageSourceReport an error
- 2026-09-05 Wacker’s 600-worker Charleston polysilicon plant may close athe quoted text is not on the pageSourceReport an error
World production and reserves (USGS MCS) How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
research/usgs-mcs.json · shown on /atlas
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → of How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → re-verified at source · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links
- Completeness 24 of 27 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.24 of 27 rows held.Method →Code →
- Every resource the atlas names has a world table (USGS or EIA), or its absence is declared.
- Correctness 340 of 340 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.340 of 340 rows held.Method →Code →
- Countries add up to the printed world total, and every value is on its country’s row in the chapter PDF.
- Provenance 1031 of 1031 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1031 of 1031 rows held.Method →Code →
- Every value keeps the text it was printed as, and its table names its source and unit.
- Freshness 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code →
- The edition was read within its declared maximum age.
- Link health 19 of 19 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.19 of 19 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
Network looks are a rotation: the oldest verdict here is from 2026-10-12.
Every resource the atlas names has a world table, or its absence is declared 3 failing
- High-purity quartzno USGS or EIA world table, and no declared gapOn this siteReport an error
- Neonno USGS or EIA world table, and no declared gapOn this siteReport an error
- Boronno USGS or EIA world table, and no declared gapOn this siteReport an error
Oil, gas, coal and hydro (EIA) How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
research/eia-energy.json · shown on /atlas
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links
- Completeness —
- Not measured: Checking against EIA’s full country list needs the bulk file; the script keeps every country EIA reports a value for.
- Correctness 968 of 968 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.968 of 968 rows held.Method →Code →
- No country produces more than the world total EIA prints.
- Provenance 977 of 977 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.977 of 977 rows held.Method →Code →
- Every value keeps the text it was printed as, and its table names its source and unit.
- Freshness 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code →
- The bulk file was read within its declared maximum age.
- Link health 4 of 4 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.4 of 4 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
Network looks are a rotation: the oldest verdict here is from 2026-10-13.
Producers per country (USGS Minerals Yearbook) How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
research/usgs-producers.json · shown on /atlas
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links
- Completeness 1486 of 1486 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1486 of 1486 rows held.Method →Code →
- Every facility names its operating company.
- Correctness 1481 of 1486 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1481 of 1486 rows held.Method →Code →
- Every company and location is a whole cell of the workbook, not a fragment of a wrapped line or a ditto mark.
- Provenance 1486 of 1486 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1486 of 1486 rows held.Method →Code →
- Every facility comes from a dated Yearbook table with its workbook link.
- Freshness 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code →
- The chapters were read within the declared maximum age.
- Link health 76 of 76 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.76 of 76 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
Network looks are a rotation: the oldest verdict here is from 2026-10-13.
Every company and location is a whole cell, not a fragment of a wrapped line or a ditto mark 5 failing
- india: Uranium Corp. Ltd. of India [Department of Atomic — Bagjata, Banduhurang, Bhatin, Jaduguda,reads as part of a wrapped cellSourceReport an error
- kazakhstan: Kazzinc Ltd. [Glencore plc, 69.7%, and NMC Tau-Ken — Lead plant, Ust-Kamenogorsk metallurgicalreads as part of a wrapped cellSourceReport an error
- tajikistan: JV Zeravshan LLC [Zijin Mining Group Co. Ltd. — Jilau and Taror mines, Zarafshonreads as part of a wrapped cellSourceReport an error
- vietnam: Asia Tungsten Products (Vietnam) Ltd. (ATC) — Plant in Tan Tien Industrial Zone, Vinh Bao,reads as part of a wrapped cellSourceReport an error
- vietnam: Nui Phao Mining Co. Ltd. (NPMC) [Masan — Nui Phao Mine, Thai Nguyenreads as part of a wrapped cellSourceReport an error
Producer sites on the globe (GeoNames placement) How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
research/producer-places.json · shown on /atlas
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links
- Completeness 1167 of 1167 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1167 of 1167 rows held.Method →Code →
- Every facility location the Yearbook prints is either placed or listed as unresolved; none is dropped without a trace.
- Correctness 997 of 997 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.997 of 997 rows held.Method →Code →
- No point lands inside another country, and a province named in the address holds the point.
- Provenance 997 of 997 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.997 of 997 rows held.Method →Code →
- Every point names the GeoNames entry it came from, by id, name and feature code, and states its precision.
- Freshness 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code →
- The places were matched within the declared maximum age.
- Link health 2 of 2 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.2 of 2 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
- Consistency 997 of 997 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.997 of 997 rows held.Method →Code →
- Every point joins back to a facility in the Yearbook file by country and printed location.
Network looks are a rotation: the oldest verdict here is from 2026-10-14.
Export restrictions (OECD) How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
research/oecd-export-restrictions.json · shown on /atlas
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links
- Completeness 1042 of 1091 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1042 of 1091 rows held.Method →Code →
- Every measure has the date it took effect.
- Correctness —
- Not measured: Re-deriving each measure means re-querying the SDMX API; the refresh script does that, not the scheduled check.
- Provenance 1089 of 1091 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1089 of 1091 rows held.Method →Code →
- Every measure names its legal instrument or legal basis.
- Freshness 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code →
- The inventory was read within its declared maximum age.
- Link health 2 of 2 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.2 of 2 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
Network looks are a rotation: the oldest verdict here is from 2026-10-13.
Every measure names its legal instrument or legal basis 2 failing
- tn copper Export taxthe inventory names no instrumentSourceReport an error
- tn copper Export taxthe inventory names no instrumentSourceReport an error
Every measure has the date it took effect 49 failing
- eg bauxite Other export measuresthe inventory gives no start dateSourceReport an error
- eg phosphates Other export measuresthe inventory gives no start dateSourceReport an error
- et antimony Licensing requirementthe inventory gives no start dateSourceReport an error
- et bauxite Licensing requirementthe inventory gives no start dateSourceReport an error
- et cobalt Licensing requirementthe inventory gives no start dateSourceReport an error
- et copper Licensing requirementthe inventory gives no start dateSourceReport an error
- et gallium Licensing requirementthe inventory gives no start dateSourceReport an error
- et gold Licensing requirementthe inventory gives no start dateSourceReport an error
- et nickel Licensing requirementthe inventory gives no start dateSourceReport an error
- et pgms Licensing requirementthe inventory gives no start dateSourceReport an error
- et silver Licensing requirementthe inventory gives no start dateSourceReport an error
- et tin Licensing requirementthe inventory gives no start dateSourceReport an error
37 more
- et tungsten Licensing requirementthe inventory gives no start dateSourceReport an error
- in bauxite Captive miningthe inventory gives no start dateSourceReport an error
- ng antimony Other export measuresthe inventory gives no start dateSourceReport an error
- ng antimony Export prohibitionthe inventory gives no start dateSourceReport an error
- ng antimony Licensing requirementthe inventory gives no start dateSourceReport an error
- ng bauxite Other export measuresthe inventory gives no start dateSourceReport an error
- ng bauxite Export prohibitionthe inventory gives no start dateSourceReport an error
- ng bauxite Licensing requirementthe inventory gives no start dateSourceReport an error
- ng cobalt Other export measuresthe inventory gives no start dateSourceReport an error
- ng cobalt Export prohibitionthe inventory gives no start dateSourceReport an error
- ng cobalt Licensing requirementthe inventory gives no start dateSourceReport an error
- ng copper Other export measuresthe inventory gives no start dateSourceReport an error
- ng copper Export prohibitionthe inventory gives no start dateSourceReport an error
- ng copper Licensing requirementthe inventory gives no start dateSourceReport an error
- ng gallium Other export measuresthe inventory gives no start dateSourceReport an error
- ng gallium Export prohibitionthe inventory gives no start dateSourceReport an error
- ng gallium Licensing requirementthe inventory gives no start dateSourceReport an error
- ng gold Other export measuresthe inventory gives no start dateSourceReport an error
- ng gold Export prohibitionthe inventory gives no start dateSourceReport an error
- ng gold Licensing requirementthe inventory gives no start dateSourceReport an error
- ng nickel Other export measuresthe inventory gives no start dateSourceReport an error
- ng nickel Export prohibitionthe inventory gives no start dateSourceReport an error
- ng nickel Licensing requirementthe inventory gives no start dateSourceReport an error
- ng pgms Other export measuresthe inventory gives no start dateSourceReport an error
- ng pgms Export prohibitionthe inventory gives no start dateSourceReport an error
- ng pgms Licensing requirementthe inventory gives no start dateSourceReport an error
- ng silver Other export measuresthe inventory gives no start dateSourceReport an error
- ng silver Export prohibitionthe inventory gives no start dateSourceReport an error
- ng silver Licensing requirementthe inventory gives no start dateSourceReport an error
- ng tin Other export measuresthe inventory gives no start dateSourceReport an error
- ng tin Export prohibitionthe inventory gives no start dateSourceReport an error
- ng tin Licensing requirementthe inventory gives no start dateSourceReport an error
- ng tungsten Other export measuresthe inventory gives no start dateSourceReport an error
- ng tungsten Export prohibitionthe inventory gives no start dateSourceReport an error
- ng tungsten Licensing requirementthe inventory gives no start dateSourceReport an error
- za gold Licensing requirementthe inventory gives no start dateSourceReport an error
- za pgms Licensing requirementthe inventory gives no start dateSourceReport an error
Sanctions regimes (EU, OFAC) How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
research/sanctions.json · shown on /atlas
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links (How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → refused robots)
- Completeness —
- Not measured: The UK publishes no machine-readable list per regime; that gap is declared in the file.
- Correctness —
- Not measured: Re-deriving regimes means re-reading the EU map API; the refresh script does that.
- Provenance 72 of 72 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.72 of 72 rows held.Method →Code →
- Every regime or programme has a title and a link to its official page.
- Freshness 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code →
- Read within 60 days: regimes are amended every few weeks.
- Link health 297 of 298 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.297 of 298 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
Network looks are a rotation: the oldest verdict here is from 2026-10-12.
Source links answer (3 tries; 401/403/429 counted apart) 1 failing
- EU YE S/RES/2624 (2022)HTTP 400SourceReport an error
Science: readiness entries and the feed How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
config/substrata-science.ts · research_science_items · shown on /science
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links
- Completeness 32 of 33 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.32 of 33 rows held.Method →Code →
- Every bottleneck has at least one paper, preprint or grant in the feed.
- Correctness —
- Not measured: Feed items are machine-collected and labelled unreviewed on every page; readiness is a dated judgement.
- Provenance 1922 of 1922 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1922 of 1922 rows held.Method →Code →
- Every readiness entry cites a source; every feed item has a link and a date.
- Freshness 15 of 15 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.15 of 15 rows held.Method →Code →
- Readiness was judged within 90 days, and the feed ran on schedule.
- Link health 14 of 14 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.14 of 14 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
Network looks are a rotation: the oldest verdict here is from 2026-10-13.
Every bottleneck has at least one paper, preprint or grant in the feed 1 failing
- Semiconductor process engineersnothing in the feedOn this siteReport an error
Jobs and the boards they come from How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
research/job-boards.json · research_jobs · shown on /careers
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links (How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → refused robots)
- Completeness 138 of 138 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.138 of 138 rows held.Method →Code →
- Every company with a Markets page has a job-board row.
- Correctness —
- Not measured: A role is shown as its board returns it; a role gone from its board is closed on the next run.
- Provenance 2701 of 2701 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.2701 of 2701 rows held.Method →Code →
- Every board row says how it was found; every open role links its posting.
- Freshness 2565 of 2565 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.2565 of 2565 rows held.Method →Code →
- Every open role was still on its board within the last three days.
- Link health 131 of 132 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.131 of 132 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
Network looks are a rotation: the oldest verdict here is from 2026-10-12.
Source links answer (3 tries; 401/403/429 counted apart) 1 failing
- russian-quartz careers pageUND_ERR_CONNECT_TIMEOUT: Connect Timeout Error (attempted address: russianquartz.com:443, timeout: 1SourceOn this siteReport an error
Training and learning paths How this is computedThe mean of the criterion scores that could be measured for the dataset.Method →Code →
research/learning-paths.json · shown on /learn
How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → rows · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → sourced · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → stale · How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → broken links (How this is computedRows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Method →Code → refused robots)
- Completeness —
- Not measured: There is no list of every programme to measure against.
- Correctness —
- Not measured: Programme details are read from the provider page by a person.
- Provenance 56 of 56 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.56 of 56 rows held.Method →Code →
- Every path links its provider page and says when it was checked.
- Freshness 1 of 1 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.1 of 1 rows held.Method →Code →
- Checked within the declared maximum age.
- Link health 51 of 51 rows held.How this is computedRows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.51 of 51 rows held.Method →Code →
- Every source URL the rows cite answers without a 4xx, 5xx or timeout after three tries; a publisher refusing robots (401/403/429) is reported apart, not counted as broken.
- Consistency —
- Not measured: No other dataset states the same facts.
Network looks are a rotation: the oldest verdict here is from 2026-10-13.