Generated 2026-10-17T05:05:24Z from live ClickHouse queries against this estate's ledger. Held inventory: 91,920 observations · 84 distinct series · 5 upstream sources · first row 2026-08-09 17:15:20 · newest row 2026-10-17 04:51:55 · 91,920/91,920 rows carry a verify_url. 84 series refreshed in the last 24h (1,669 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.5 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 | 56,806 | 42 | 56,806 | 2026-08-09 23:28:06 → 2026-10-17 04:34:01 | sample origin ↗ |
| CoinGecko /coins/markets | 29,455 | 23 | 29,455 | 2026-08-09 17:15:20 → 2026-10-17 04:51:55 | sample origin ↗ |
| storj_stats | 4,653 | 3 | 4,653 | 2026-08-12 19:27:37 → 2026-10-17 04:47:02 | sample origin ↗ |
| geckoterminal_dex | 630 | 7 | 630 | 2026-09-25 01:03:50 → 2026-10-17 01:19:39 | sample origin ↗ |
| github | 376 | 9 | 376 | 2026-08-09 23:42:07 → 2026-10-16 06: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 | 124,480 nodes | ▁▁▁▂▂▂▂▂▃▃▃▃▃▃▃▃▃▅▅▅▆▆▆▆▇▇▇████ | 31 | +0.4% | 2026-09-17 → 2026-10-17 via storj_stats · origin ↗ |
nodes_active_util | 31,042 nodes | ███▇▅▅▅▅▁▅▅▅▅▅▅▅▅▅▄▅▅▅▄▄▅▅▅▅▅▄▄ | 31 | -4.5% | 2026-09-17 → 2026-10-17 via storj_stats · origin ↗ |
active_nodes_us1 | 31,042 nodes | ███▇▅▅▅▅▁▅▅▅▅▅▅▅▅▅▄▅▅▅▄▄▅▅▅▅▅▄▄ | 31 | -4.5% | 2026-09-17 → 2026-10-17 via first_party_api · origin ↗ |
storage_total_bytes | 42,554,817,077,113,736 bytes | █████████▇▇▇▇▇▇▇▇▅▄▄▃▃▃▃▂▂▂▂▂▁▁ | 31 | -18.2% | 2026-09-17 → 2026-10-17 via first_party_api · origin ↗ |
bandwidth_bytes_uploaded | 45,426,595,084,750,848 bytes | ███████████▇▇▇▇▇▇▅▅▄▄▃▃▃▃▂▂▂▂▁▁ | 31 | -44.8% | 2026-09-17 → 2026-10-17 via first_party_api · origin ↗ |
price_usd | 0.0263 usd | ▇██▇▇█▆▇▇▇▇▅▅▆▆▅▅▅▅▅▄▃▄▄▅▂▂▂▁▁▁ | 31 | -17.6% | 2026-09-17 → 2026-10-17 via CoinGecko /coins/markets · origin ↗ |
market_cap_usd | 11,165,906 usd | ▇██▇▇█▆▇▇▇▇▅▅▆▆▅▅▅▅▅▄▃▄▄▄▂▂▂▁▁▁ | 31 | -17.6% | 2026-09-17 → 2026-10-17 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) | 116,617 | 27,391 | 35,826 | 79,967 | 1,811 | 2,822 | 6,437 | 5,950 | 3,844 | 2026-10-17 04:34:01 | origin ↗ |
| Europe (eu1) | 116,255 | 27,509 | 35,843 | 79,869 | 1,822 | 2,842 | 6,035 | 5,943 | 3,828 | 2026-10-17 04:34:01 | origin ↗ |
| US (us1) | 124,480 | 31,042 | 40,669 | 82,850 | 268 | 2,562 | 8,026 | 6,005 | 3,875 | 2026-10-17 04:34:01 | origin ↗ |
| Salt Lake City (saltlake) | 113,544 | 24,608 | 33,017 | 78,701 | 1,615 | 2,893 | 7,342 | 5,669 | 3,800 | 2026-10-17 04: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 | 4,693,612,221,698,048 (4.17 PB) | bytes | 2026-10-17 04:34:01 | origin ↗ |
bandwidth_bytes_uploaded | 45,426,595,084,750,848 (40.35 PB) | bytes | 2026-10-17 04:34:01 | origin ↗ |
storage_total_bytes | 42,554,817,077,113,736 (37.80 PB) | bytes | 2026-10-17 04:34:01 | origin ↗ |
storage_total_bytes_after_expansion | 75,302,538,576,114,832 (66.88 PB) | bytes | 2026-10-17 04:34:01 | origin ↗ |
storage_total_objects | 8,951,749,369 | objects | 2026-10-17 04:34:01 | origin ↗ |
storage_total_segments | 9,853,596,034 | segments | 2026-10-17 04: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 | 31,042 nodes | 2026-10-17 04:47:02 | storj_stats | 724 | 31/30 | storj-native (unmapped) | origin ↗ |
nodes_total⚠ ⚠ FULL_NODES ≠ TOTAL_NODES; satellite memberships, not unique nodes | 124,480 nodes | 2026-10-17 04:47:02 | storj_stats | 724 | 31/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) | 24.9373 percent | 2026-10-17 04:47:02 | storj_stats | 724 | 31/30 | storj-native (unmapped) | origin ↗ |
active_nodes_ap1 | 27,391 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
active_nodes_eu1 | 27,509 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
active_nodes_saltlake | 24,608 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
active_nodes_us1 | 31,042 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
active_wallets_ap1 | 3,844 wallets | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
active_wallets_eu1 | 3,828 wallets | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
active_wallets_saltlake | 3,800 wallets | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
active_wallets_us1 | 3,875 wallets | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
bandwidth_bytes_downloaded | 4,693,612,221,698,048 bytes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
bandwidth_bytes_uploaded | 45,426,595,084,750,848 bytes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
circulating_supply | 424,999,998 tokens | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
dev_contributors_total | 105 contributors | 2026-10-16 06:29:01 | github | 14 | 14/30 | storj-native (unmapped) | origin ↗ |
dev_days_since_push | 0.407 days | 2026-10-16 06:29:01 | github | 24 | 24/30 | storj-native (unmapped) | origin ↗ |
dev_forks | 427 forks | 2026-10-16 06:29:01 | github | 24 | 24/30 | storj-native (unmapped) | origin ↗ |
dev_open_issues | 354 issues | 2026-10-16 06:29:01 | github | 24 | 24/30 | storj-native (unmapped) | origin ↗ |
dev_open_prs | 18 prs | 2026-10-16 06:29:01 | github | 17 | 17/30 | storj-native (unmapped) | origin ↗ |
dev_public_repos | 83 repos | 2026-10-16 06:29:01 | github | 22 | 22/30 | storj-native (unmapped) | origin ↗ |
dev_releases_total | 555 releases | 2026-10-16 06:29:01 | github | 17 | 17/30 | storj-native (unmapped) | origin ↗ |
dev_stars | 3,282 stars | 2026-10-16 06:29:01 | github | 24 | 24/30 | storj-native (unmapped) | origin ↗ |
dev_watchers | 92 watchers | 2026-10-16 06:29:01 | github | 24 | 24/30 | storj-native (unmapped) | origin ↗ |
dex_gt_liquidity_top_pair_usd | 74,594.2192 usd | 2026-10-17 01:19:39 | geckoterminal_dex | 90 | 23/30 | storj-native (unmapped) | origin ↗ |
dex_gt_liquidity_usd | 120,117.4077 usd | 2026-10-17 01:19:39 | geckoterminal_dex | 90 | 23/30 | storj-native (unmapped) | origin ↗ |
dex_gt_pair_tx_count_24h | 95 count | 2026-10-17 01:19:39 | geckoterminal_dex | 90 | 23/30 | storj-native (unmapped) | origin ↗ |
dex_gt_pair_volume_24h_usd | 6,056.3276 usd | 2026-10-17 01:19:39 | geckoterminal_dex | 90 | 23/30 | storj-native (unmapped) | origin ↗ |
dex_gt_pairs_active | 20 count | 2026-10-17 01:19:39 | geckoterminal_dex | 90 | 23/30 | storj-native (unmapped) | origin ↗ |
dex_gt_top_pair_share_pct | 62.1011 pct | 2026-10-17 01:19:39 | geckoterminal_dex | 90 | 23/30 | storj-native (unmapped) | origin ↗ |
dex_gt_venues_active | 4 count | 2026-10-17 01:19:39 | geckoterminal_dex | 90 | 23/30 | storj-native (unmapped) | origin ↗ |
disqualified_nodes_ap1 | 79,967 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
disqualified_nodes_eu1 | 79,869 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
disqualified_nodes_saltlake | 78,701 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
disqualified_nodes_us1 | 82,850 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
exited_nodes_ap1 | 6,437 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
exited_nodes_eu1 | 6,035 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
exited_nodes_saltlake | 7,342 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
exited_nodes_us1 | 8,026 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
full_nodes_ap1 | 5,950 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
full_nodes_eu1 | 5,943 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
full_nodes_saltlake | 5,669 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
full_nodes_us1 | 6,005 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
fully_diluted_valuation_usd | 11,165,906 usd | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
market_cap_change_24h_pct | -0.5116 percent | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
market_cap_change_24h_usd | -57,421.2294 usd | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
market_cap_rank | 1,160 rank | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
market_cap_usd | 11,165,906 usd | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
offline_nodes_ap1 | 2,822 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
offline_nodes_eu1 | 2,842 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
offline_nodes_saltlake | 2,893 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
offline_nodes_us1 | 2,562 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
price_ath_usd | 3.81 usd | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_atl_usd | 0.0248 usd | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_change_14d_pct | -14.1001 percent | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_change_1h_pct | 0.068 percent | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_change_1y_pct | -85.0267 percent | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_change_200d_pct | -70.9275 percent | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_change_24h_pct | -0.5736 percent | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_change_24h_usd | -0.0002 usd | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_change_30d_pct | -15.64 percent | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_change_7d_pct | -10.3667 percent | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_from_ath_pct | -99.3102 percent | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_from_atl_pct | 5.885 percent | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_high_24h_usd | 0.0284 usd | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_low_24h_usd | 0.0259 usd | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
price_usd | 0.0263 usd | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | storj-native (unmapped) | origin ↗ |
storage_total_bytes⚠ ⚠ mapped to storage_bytes_in_use: bytes customers have STORED (usage), not network capacity | 42,554,817,077,113,736 bytes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | question-verified storage_bytes_in_use | origin ↗ |
storage_total_bytes_after_expansion⚠ ⚠ node-side footprint after erasure coding, ~1.7× stored bytes | 75,302,538,576,114,832 bytes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
storage_total_objects | 8,951,749,369 objects | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
storage_total_segments | 9,853,596,034 segments | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
suspended_nodes_ap1 | 1,811 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
suspended_nodes_eu1 | 1,822 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
suspended_nodes_saltlake | 1,615 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
suspended_nodes_us1 | 268 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
total_nodes_ap1 | 116,617 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
total_nodes_eu1 | 116,255 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
total_nodes_saltlake | 113,544 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
total_nodes_us1 | 124,480 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
total_supply | 424,999,998 tokens | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/30 | question-verified token_supply_total | origin ↗ |
vetted_nodes_ap1 | 35,826 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
vetted_nodes_eu1 | 35,843 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
vetted_nodes_saltlake | 33,017 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
vetted_nodes_us1 | 40,669 nodes | 2026-10-17 04:34:01 | first_party_api | 721 | 31/30 | storj-native (unmapped) | origin ↗ |
volume_24h_usd | 4,073,997 usd | 2026-10-17 04:51:55 | CoinGecko /coins/markets | 652 | 31/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-10-17 01:15:02 | disqualified_nodes | 80,238 | 79,569 | -0.83% | backward_revision | depin_first_party |
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-10-17T05:05:24Z: 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.