Generated 2026-09-02T13:03:45Z from live ClickHouse queries against this estate's ledger. Held inventory: 19,903 observations · 74 distinct series · 4 upstream sources · first row 2026-08-09 17:15:20 · newest row 2026-09-02 12:50:20 · 19,903/19,903 rows carry a verify_url. 68 series refreshed in the last 24h (1,724 fresh rows). Nothing on this page is cached, estimated, or remembered.
storage —
packaged as a read-only product page. It reports what the network's own endpoints (and
named market references) answered and when. It does not forecast, rank investment merit,
or advise. Where a metric has a counting-rule caveat, the caveat ships with the metric —
three of them matter for Storj and are declared below.4 source families feed this network's ledger. Every row
they wrote carries its own source, as_of and
verify_url; this table is the live rollup of that.
| Source | Rows held | Series | Rows w/ verify_url | Window (UTC) | Sample origin |
|---|---|---|---|---|---|
| first_party_api | 11,854 | 42 | 11,854 | 2026-08-09 23:28:06 → 2026-09-02 12:34:01 | sample origin ↗ |
| CoinGecko /coins/markets | 6,501 | 23 | 6,501 | 2026-08-09 17:15:20 → 2026-09-02 12:50:20 | sample origin ↗ |
| storj_stats | 1,434 | 3 | 1,434 | 2026-08-12 19:27:37 → 2026-09-02 12:47:01 | sample origin ↗ |
| github | 114 | 6 | 114 | 2026-08-09 23:42:07 → 2026-09-01 12:29:01 | sample origin ↗ |
One row per series: latest value, a 30-day sparkline of daily last-known values (scaled to the series' own min→max), day count, and window change. Series absent from the 30-day window are omitted from this table, not zero-filled.
| Series | Latest | 30-day shape | Days held | 30d change | Window & provenance |
|---|---|---|---|---|---|
nodes_total | 123,700 nodes | ▁▂▂▂▂▃▃▄▄▄▅▅▅▅▅▆▆▆▆▆██ | 22 | +0.3% | 2026-08-12 → 2026-09-02 via storj_stats · origin ↗ |
nodes_active_util | 32,789 nodes | ███▅▅██▆▄▁▁▁▂▂▂▃▃▃▃▃▄▂ | 22 | -2.3% | 2026-08-12 → 2026-09-02 via storj_stats · origin ↗ |
active_nodes_us1 | 32,789 nodes | ▆▆█▆▆▆▄▄▆▆▄▃▁▁▁▂▂▂▃▃▃▃▃▃▂ | 25 | -2.3% | 2026-08-09 → 2026-09-02 via first_party_api · origin ↗ |
storage_total_bytes | 53,030,288,150,239,040 bytes | █▇▇▅▅▅▂▂▂▂▂▁▁ | 13 | -1.0% | 2026-08-21 → 2026-09-02 via first_party_api · origin ↗ |
bandwidth_bytes_uploaded | 85,317,252,745,024,000 bytes | █▆▆▅▅▅▁▁▁▁▁▃▃ | 13 | -1.0% | 2026-08-21 → 2026-09-02 via first_party_api · origin ↗ |
price_usd | 0.0322 usd | ▅▄▄▄▄▄▄▅█▄▄▄▃▃▂▂▁▁ | 18 | -28.8% | 2026-08-09 → 2026-09-02 via CoinGecko /coins/markets · origin ↗ |
market_cap_usd | 13,643,685 usd | ▅▄▄▄▄▄▄▅█▄▄▄▃▃▂▂▁▁ | 18 | -29.0% | 2026-08-09 → 2026-09-02 via CoinGecko /coins/markets · origin ↗ |
Storj's nodes.json reports node membership per satellite.
A node serving three satellites is counted three times, so satellites are shown as held and
are deliberately not summed into a "network total" — the same
double-count that previously inflated Storj node totals here. NODES_TOTAL in
the inventory below is Storj's own aggregate field, kept with the same caveat.
| Satellite | Total | Active | Vetted | Disqualified | Suspended | Offline | Exited | Full | Wallets | As of (UTC) | Verify |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Asia-Pacific (ap1) | 115,837 | 29,440 | 36,966 | 78,144 | 1,103 | 2,098 | 6,155 | 5,175 | 3,849 | 2026-09-02 12:34:01 | origin ↗ |
| Europe (eu1) | 115,475 | 29,543 | 36,948 | 78,075 | 1,049 | 2,103 | 5,754 | 5,161 | 3,833 | 2026-09-02 12:34:01 | origin ↗ |
| US (us1) | 123,700 | 32,789 | 40,329 | 81,000 | 1,253 | 2,169 | 7,742 | 5,201 | 3,862 | 2026-09-02 12:34:01 | origin ↗ |
| Salt Lake City (saltlake) | 112,763 | 27,213 | 33,243 | 77,127 | 715 | 1,862 | 6,561 | 5,053 | 3,808 | 2026-09-02 12:34:01 | origin ↗ |
Storj publishes the numerator only. storage_total_bytes is
what customers have stored (the canonical layer maps it to
storage_bytes_in_use); storage_total_bytes_after_expansion is the
node-side footprint after erasure coding. There is NO published capacity denominator, so
this page computes no storage-utilisation ratio — inventing a denominator is the exact
overstatement the estate's canonical-metrics module refuses.
| Metric | Latest | Unit | As of (UTC) | Verify |
|---|---|---|---|---|
bandwidth_bytes_downloaded | 6,432,185,153,644,800 (5.71 PB) | bytes | 2026-09-02 12:34:01 | origin ↗ |
bandwidth_bytes_uploaded | 85,317,252,745,024,000 (75.78 PB) | bytes | 2026-09-02 12:34:01 | origin ↗ |
storage_total_bytes | 53,030,288,150,239,040 (47.10 PB) | bytes | 2026-09-02 12:34:01 | origin ↗ |
storage_total_bytes_after_expansion | 80,454,225,609,782,752 (71.46 PB) | bytes | 2026-09-02 12:34:01 | origin ↗ |
storage_total_objects | 14,992,345,288 | objects | 2026-09-02 12:34:01 | origin ↗ |
storage_total_segments | 15,929,569,782 | segments | 2026-09-02 12:34:01 | origin ↗ |
Every series held for STORJ with rows in the last 30 days: latest value, when it was observed, which source observed it, how many rows we hold, how many of the last 30 days it reported, its comparability grade, and the origin link. "days/30" counts distinct dates with at least one row in the window.
| Metric | Latest | As of (UTC) | Source | Rows | Days/30 | Comparability | Verify |
|---|---|---|---|---|---|---|---|
nodes_active_util | 32,789 nodes | 2026-09-02 12:47:01 | storj_stats | 478 | 22/30 | storj-native (unmapped) | origin ↗ |
nodes_total⚠ ⚠ FULL_NODES ≠ TOTAL_NODES; satellite memberships, not unique nodes | 123,700 nodes | 2026-09-02 12:47:01 | storj_stats | 478 | 22/30 | unit-verified nodes_total | origin ↗ |
node_utilisation_pct⚠ ⚠ node membership ratio — NOT storage utilisation; the estate publishes no storage utilisation for Storj (no capacity denominator) | 26.5069 percent | 2026-09-02 12:47:01 | storj_stats | 478 | 22/30 | storj-native (unmapped) | origin ↗ |
active_nodes_ap1 | 29,440 nodes | 2026-09-02 12:34:01 | first_party_api | 566 | 25/30 | storj-native (unmapped) | origin ↗ |
active_nodes_eu1 | 29,543 nodes | 2026-09-02 12:34:01 | first_party_api | 566 | 25/30 | storj-native (unmapped) | origin ↗ |
active_nodes_saltlake | 27,213 nodes | 2026-09-02 12:34:01 | first_party_api | 566 | 25/30 | storj-native (unmapped) | origin ↗ |
active_nodes_us1 | 32,789 nodes | 2026-09-02 12:34:01 | first_party_api | 566 | 25/30 | storj-native (unmapped) | origin ↗ |
active_wallets_ap1 | 3,849 wallets | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
active_wallets_eu1 | 3,833 wallets | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
active_wallets_saltlake | 3,808 wallets | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
active_wallets_us1 | 3,862 wallets | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
bandwidth_bytes_downloaded | 6,432,185,153,644,800 bytes | 2026-09-02 12:34:01 | first_party_api | 281 | 13/30 | storj-native (unmapped) | origin ↗ |
bandwidth_bytes_uploaded | 85,317,252,745,024,000 bytes | 2026-09-02 12:34:01 | first_party_api | 281 | 13/30 | storj-native (unmapped) | origin ↗ |
circulating_supply | 424,999,998 tokens | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 357 | 18/30 | storj-native (unmapped) | origin ↗ |
dev_days_since_push | 0.056 days | 2026-09-01 12:29:01 | github | 19 | 19/30 | storj-native (unmapped) | origin ↗ |
dev_forks | 427 forks | 2026-09-01 12:29:01 | github | 19 | 19/30 | storj-native (unmapped) | origin ↗ |
dev_open_issues | 361 issues | 2026-09-01 12:29:01 | github | 19 | 19/30 | storj-native (unmapped) | origin ↗ |
dev_public_repos | 82 repos | 2026-09-01 12:29:01 | github | 19 | 19/30 | storj-native (unmapped) | origin ↗ |
dev_stars | 3,275 stars | 2026-09-01 12:29:01 | github | 19 | 19/30 | storj-native (unmapped) | origin ↗ |
dev_watchers | 93 watchers | 2026-09-01 12:29:01 | github | 19 | 19/30 | storj-native (unmapped) | origin ↗ |
disqualified_nodes_ap1 | 78,144 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
disqualified_nodes_eu1 | 78,075 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
disqualified_nodes_saltlake | 77,127 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
disqualified_nodes_us1 | 81,000 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
exited_nodes_ap1 | 6,155 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
exited_nodes_eu1 | 5,754 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
exited_nodes_saltlake | 6,561 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
exited_nodes_us1 | 7,742 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
full_nodes_ap1 | 5,175 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
full_nodes_eu1 | 5,161 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
full_nodes_saltlake | 5,053 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
full_nodes_us1 | 5,201 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
fully_diluted_valuation_usd | 13,643,685 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 357 | 18/30 | storj-native (unmapped) | origin ↗ |
market_cap_change_24h_pct | 0.1184 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
market_cap_change_24h_usd | 16,138.18 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
market_cap_rank | 1,022 rank | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
market_cap_usd | 13,643,685 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 357 | 18/30 | storj-native (unmapped) | origin ↗ |
offline_nodes_ap1 | 2,098 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
offline_nodes_eu1 | 2,103 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
offline_nodes_saltlake | 1,862 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
offline_nodes_us1 | 2,169 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
price_ath_usd | 3.81 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_atl_usd | 0.0311 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_change_14d_pct | -17.2 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_change_1h_pct | 7.6 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_change_1y_pct | -86.9 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_change_200d_pct | -69.3 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_change_24h_pct | 0.1067 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_change_24h_usd | 0.0001 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_change_30d_pct | -23.8 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_change_7d_pct | -15.3 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_from_ath_pct | -99.1541 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_from_atl_pct | 3.4627 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_high_24h_usd | 0.0373 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_low_24h_usd | 0.0311 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
price_usd | 0.0322 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 357 | 18/30 | storj-native (unmapped) | origin ↗ |
storage_total_bytes⚠ ⚠ mapped to storage_bytes_in_use: bytes customers have STORED (usage), not network capacity | 53,030,288,150,239,040 bytes | 2026-09-02 12:34:01 | first_party_api | 281 | 13/30 | question-verified storage_bytes_in_use | origin ↗ |
storage_total_bytes_after_expansion⚠ ⚠ node-side footprint after erasure coding, ~1.7× stored bytes | 80,454,225,609,782,752 bytes | 2026-09-02 12:34:01 | first_party_api | 281 | 13/30 | storj-native (unmapped) | origin ↗ |
storage_total_objects | 14,992,345,288 objects | 2026-09-02 12:34:01 | first_party_api | 281 | 13/30 | storj-native (unmapped) | origin ↗ |
storage_total_segments | 15,929,569,782 segments | 2026-09-02 12:34:01 | first_party_api | 281 | 13/30 | storj-native (unmapped) | origin ↗ |
suspended_nodes_ap1 | 1,103 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
suspended_nodes_eu1 | 1,049 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
suspended_nodes_saltlake | 715 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
suspended_nodes_us1 | 1,253 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
total_nodes_ap1 | 115,837 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
total_nodes_eu1 | 115,475 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
total_nodes_saltlake | 112,763 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
total_nodes_us1 | 123,700 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
total_supply | 424,999,998 tokens | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 357 | 18/30 | question-verified token_supply_total | origin ↗ |
vetted_nodes_ap1 | 36,966 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
vetted_nodes_eu1 | 36,948 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
vetted_nodes_saltlake | 33,243 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
vetted_nodes_us1 | 40,329 nodes | 2026-09-02 12:34:01 | first_party_api | 247 | 12/30 | storj-native (unmapped) | origin ↗ |
volume_24h_usd | 12,423,486 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 262 | 12/30 | storj-native (unmapped) | origin ↗ |
Backward revisions are values upstream later replaced for a date we had already archived. The before-value is retained — that retention is the only reason a rewrite is detectable, and it is the part every overwriting vendor discards.
| Detected | Metric | Was | Became | Δ | Kind | Provenance |
|---|---|---|---|---|---|---|
| 2026-09-02 01:15:01 | disqualified_nodes | 80,238 | 79,569 | -0.83% | backward_revision | depin_first_party · origin ↗ |
Served by /v1/network/STORJ — the same grades a paying agent receives. Scores are the engines' own 0–100 outputs, not ours to smooth.
| Engine | Grade | Score |
|---|---|---|
| Node quality | D | 26.9475 |
| Dilution risk | MINIMAL | 90 |
| Bot risk | C | 85 |
| Dev velocity | A | 99.794 |
| Revenue | F | 0 |
| Data coverage | A | 100 |
| Overall | A | 59.7715 |
No account, no key, no trust required. Commands 1–4 hit the same upstream endpoints our collectors do; command 5 hits this estate's public API, where every row carries the same source / as_of / verify_url fields.
# 1) Per-satellite node ledger — keyless, as of 2026-09-02T13:03:45Z: curl -s "https://stats.storjshare.io/nodes.json" | python3 -m json.tool # 2) Storage & bandwidth — keyless: curl -s "https://stats.storjshare.io/data.json" | python3 -m json.tool # 3) Dev velocity (GitHub repo) — keyless: curl -s -H "User-Agent: kairos-check" "https://api.github.com/repos/storj/storj" | python3 -m json.tool | head -40 # 4) Market reference (CoinGecko public API): curl -s "https://api.coingecko.com/api/v3/coins/markets?vs_currency=usd&ids=storj" | python3 -m json.tool # 5) This estate's public API row for STORJ: curl -s "https://kairossignal.com/v1/network/STORJ" | python3 -m json.tool | head -60
Method & honesty notes. All counts are queries
against the live ledger at generation time, not restamped copy — this page is
regenerated by gen_deep_dive_storj.py and the hourly
claim_drift_check.py run grades its claims against the live API like every
other published surface. Comparability grades come from the served canonical-metric
system via its own per-symbol resolver: total_supply maps to
token_supply_total (question-verified), NODES_TOTAL to
nodes_total (unit-verified — satellite memberships, not unique nodes),
storage_total_bytes to storage_bytes_in_use
(question-verified, via the STORJ per-symbol override — it is usage, not capacity). The
estate refuses to publish a storage-utilisation ratio for Storj because no upstream
source states how many bytes the network could hold; the refusal and its reason are
recorded in the canonical module, not invented here. Per-satellite counts are
memberships and are never summed. Where a section has no data, it is absent — we do not
publish zeros for gaps.
propintel/gen_deep_dive_storj.py · source of truth:
default.depin_catalog, default.depin_onchain,
default.depin_revision_ledger (ClickHouse, live at generation) ·
Kairos Signal — provenance or silence.