Generated 2026-09-02T13:46:31Z from live ClickHouse queries against this estate's ledger. Held inventory: 10,172 observations · 40 distinct series · 3 upstream sources · first row 2026-08-09 17:15:20 · newest row 2026-09-02 13:34:01 · 10,172/10,172 rows carry a verify_url. 33 series refreshed in the last 24h (893 fresh rows). Nothing on this page is cached, estimated, or remembered.
other) — packaged as a read-only
product page. The network's own public stats endpoint reports the supply-side telemetry
(unique IP addresses, countries, daily bandwidth with its modality split, indexed URLs,
downloaded frames, tokens paid); the token lives on Solana
(Grass7B4RdKfBCjTKgSqnXkqjwiGvQyFbuSCUJr3XXjs) and its on-chain supply and
account concentration are read from the public JSON-RPC; the market reference comes from
the CoinGecko coin page. This page reports what those endpoints answered and when. It
does not forecast, rank investment merit, or advise. Where a metric has a measurement
caveat, the caveat ships with the metric — the naming generations, the account-vs-owner
concentration distinction, and the market-vs-chain supply split are declared below.3 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 |
|---|---|---|---|---|---|
| CoinGecko /coins/markets | 6,882 | 24 | 6,882 | 2026-08-09 17:15:20 → 2026-09-02 12:50:20 | sample origin ↗ |
| first_party_api | 3,125 | 12 | 3,125 | 2026-08-09 23:28:06 → 2026-09-02 13:34:01 | sample origin ↗ |
| solana_rpc | 165 | 4 | 165 | 2026-08-09 23:12:54 → 2026-09-02 12:00:02 | 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 |
|---|---|---|---|---|---|
price_usd | 0.3318 usd | ▁▃▂▂▃▅▁█▇▄██▇█▇▇▆▅ | 18 | +10.5% | 2026-08-09 → 2026-09-02 via CoinGecko /coins/markets · origin ↗ |
market_cap_usd | 224,676,370 usd | ▁▃▂▁▃▄▁▇▆▄▇▇▇█▇▇▆▅ | 18 | +14.3% | 2026-08-09 → 2026-09-02 via CoinGecko /coins/markets · origin ↗ |
volume_24h_usd | 13,156,462 usd | ▄▄█▂▄▃▃▁▂▂▁▁ | 12 | -49.9% | 2026-08-22 → 2026-09-02 via CoinGecko /coins/markets · origin ↗ |
circulating_supply | 677,022,560 tokens | ▁▁▁▁▁▁▁▁▁▁▁▁██████ | 18 | +3.4% | 2026-08-09 → 2026-09-02 via CoinGecko /coins/markets · origin ↗ |
total_supply | 1,000,000,000 tokens | ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ | 18 | +0.0% | 2026-08-09 → 2026-09-02 via CoinGecko /coins/markets · origin ↗ |
max_supply | 1,000,000,000 tokens | ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ | 18 | +0.0% | 2026-08-09 → 2026-09-02 via CoinGecko /coins/markets · origin ↗ |
fully_diluted_valuation_usd | 331,859,503 usd | ▁▃▂▂▃▅▁█▇▄██▇█▇▇▆▅ | 18 | +10.5% | 2026-08-09 → 2026-09-02 via CoinGecko /coins/markets · origin ↗ |
onchain_total_supply | 999,993,103.4182 tokens | █████████▇▇▇▇▁▁▁▁▁▁▁▁▁▁▁▁ | 25 | -0.0% | 2026-08-09 → 2026-09-02 via solana_rpc · origin ↗ |
daily_gb_collected | 96,950 gb | ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ | 25 | +0.0% | 2026-08-09 → 2026-09-02 via first_party_api · origin ↗ |
total_ip_addresses | 109,755,404 ip_addresses | ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ | 25 | +0.0% | 2026-08-09 → 2026-09-02 via first_party_api · origin ↗ |
number_of_countries | 190 countries | ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ | 25 | +0.0% | 2026-08-09 → 2026-09-02 via first_party_api · origin ↗ |
urls_indexed_total | 5,318,005,903 urls | ▁▁▁▁▁▁▁▁▁▁▁▁▁ | 13 | +0.0% | 2026-08-21 → 2026-09-02 via first_party_api · origin ↗ |
frames_downloaded_total | 161,819,278,800 frames | ▁▁▁▁▁▁▁▁▁▁▁▁▁ | 13 | +0.0% | 2026-08-21 → 2026-09-02 via first_party_api · origin ↗ |
tokens_collected_total | 125,338,385,560 GRASS | ▁▁▁▁▁▁▁▁▁▁▁▁▁ | 13 | +0.0% | 2026-08-21 → 2026-09-02 via first_party_api · origin ↗ |
Market-data reference rows: price, supply, capitalisation, diluted valuation, and the published change columns including ATH/ATL. These are the coin-page reference's own numbers — the estate does not model, smooth, or forward-fill them. circulating_supply here is a market-data figure; the chain's own supply read is in the on-chain block below and the two are never merged.
| Metric | Latest | As of (UTC) | Verify |
|---|---|---|---|
circulating_supply | 677,022,560 tokens | 2026-09-02 12:50:20 | origin ↗ |
fully_diluted_valuation_usd | 331,859,503 | 2026-09-02 12:50:20 | origin ↗ |
market_cap_change_24h_pct | -3.9566 percent | 2026-09-02 12:50:20 | origin ↗ |
market_cap_change_24h_usd | -9,255,668.1912 | 2026-09-02 12:50:20 | origin ↗ |
market_cap_rank | 161 rank | 2026-09-02 12:50:20 | origin ↗ |
market_cap_usd | 224,676,370 | 2026-09-02 12:50:20 | origin ↗ |
max_supply | 1,000,000,000 tokens | 2026-09-02 12:50:20 | origin ↗ |
price_ath_usd | 3.89 | 2026-09-02 12:50:20 | origin ↗ |
price_atl_usd | 0.1668 | 2026-09-02 12:50:20 | origin ↗ |
price_change_14d_pct | 5.6 percent | 2026-09-02 12:50:20 | origin ↗ |
price_change_1h_pct | -0.3 percent | 2026-09-02 12:50:20 | origin ↗ |
price_change_1y_pct | -55 percent | 2026-09-02 12:50:20 | origin ↗ |
price_change_200d_pct | -1.1 percent | 2026-09-02 12:50:20 | origin ↗ |
price_change_24h_pct | -3.979 percent | 2026-09-02 12:50:20 | origin ↗ |
price_change_24h_usd | -0.0137 | 2026-09-02 12:50:20 | origin ↗ |
price_change_30d_pct | 7.3 percent | 2026-09-02 12:50:20 | origin ↗ |
price_change_7d_pct | -3.2 percent | 2026-09-02 12:50:20 | origin ↗ |
price_from_ath_pct | -91.4758 percent | 2026-09-02 12:50:20 | origin ↗ |
price_from_atl_pct | 98.9291 percent | 2026-09-02 12:50:20 | origin ↗ |
price_high_24h_usd | 0.3518 | 2026-09-02 12:50:20 | origin ↗ |
price_low_24h_usd | 0.3312 | 2026-09-02 12:50:20 | origin ↗ |
price_usd | 0.3318 | 2026-09-02 12:50:20 | origin ↗ |
total_supply | 1,000,000,000 tokens | 2026-09-02 12:50:20 | origin ↗ |
volume_24h_usd | 13,156,462 | 2026-09-02 12:50:20 | origin ↗ |
Read from the network's own public stats endpoint
(networkStats?cluster=mainnet): unique IP addresses, country count, daily
bandwidth collected with its per-modality split (multimodal / text), indexed URLs,
downloaded frames, and GRASS tokens paid to the network. The three archived single-row
bare names from 2026-08-09 ship too, labelled as the older naming generation of the
same quantities — never summed with their *_total successors.
daily_gb_collected, daily_gb_multimodal and daily_gb_text are the endpoint's own
series and are never reconciled into one number here.
| Metric | Latest | As of (UTC) | Rows held | Verify |
|---|---|---|---|---|
daily_gb_collected | 96,950 gb | 2026-09-02 13:34:01 | 568 | origin ↗ |
daily_gb_multimodal | 86,474 gb | 2026-09-02 13:34:01 | 284 | origin ↗ |
daily_gb_text | 1,676 gb | 2026-09-02 13:34:01 | 284 | origin ↗ |
frames_downloaded⚠ archived naming generation (2026-08-09); live name is frames_downloaded_total | 161,819,278,800 frames | 2026-08-09 23:52:10 | 1 | origin ↗ |
frames_downloaded_total | 161,819,278,800 frames | 2026-09-02 13:34:01 | 283 | origin ↗ |
number_of_countries | 190 countries | 2026-09-02 13:34:01 | 568 | origin ↗ |
rows_of_data⚠ archived (2026-08-09); equals urls_indexed on the live payload — collector keeps one name | 5,318,005,903 rows | 2026-08-09 23:52:10 | 1 | origin ↗ |
tokens_collected⚠ archived naming generation (2026-08-09); live name is tokens_collected_total (unit then 'tokens', now 'GRASS') | 125,338,385,560 tokens | 2026-08-09 23:52:10 | 1 | origin ↗ |
tokens_collected_total | 125,338,385,560 GRASS | 2026-09-02 13:34:01 | 283 | origin ↗ |
total_ip_addresses | 109,755,404 ip_addresses | 2026-09-02 13:34:01 | 568 | origin ↗ |
urls_indexed⚠ archived naming generation (2026-08-09); live name is urls_indexed_total | 5,318,005,903 urls | 2026-08-09 23:52:10 | 1 | origin ↗ |
urls_indexed_total | 5,318,005,903 urls | 2026-09-02 13:34:01 | 283 | origin ↗ |
The GRASS SPL mint
(Grass7B4RdKfBCjTKgSqnXkqjwiGvQyFbuSCUJr3XXjs) read from Solana public
JSON-RPC: getTokenSupply for total supply, getTokenLargestAccounts for account
concentration. Holder-concentration series last reported 2026-08-28 (the public RPC
applies a strict per-method quota to that call); supply reads are current. Every row
keeps its own as-of stamp — nothing is forward-filled to today.
| Metric | Latest | As of (UTC) | Rows held | Verify |
|---|---|---|---|---|
onchain_top10_holder_pct⚠ ACCOUNT concentration (getTokenLargestAccounts), not owner concentration | 53.0662 pct | 2026-08-28 12:00:01 | 20 | origin ↗ |
onchain_top1_holder_pct⚠ ACCOUNT concentration (getTokenLargestAccounts), not owner concentration | 25.6503 pct | 2026-08-28 12:00:01 | 20 | origin ↗ |
onchain_top20_holder_pct⚠ ACCOUNT concentration (getTokenLargestAccounts), not owner concentration | 63.9275 pct | 2026-08-28 12:00:01 | 20 | origin ↗ |
onchain_total_supply | 999,993,103.4182 tokens | 2026-09-02 12:00:02 | 105 | origin ↗ |
Every series held for GRASS 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 |
|---|---|---|---|---|---|---|---|
circulating_supply⚠ ⚠ CoinGecko coin-page reference — a market-data figure, not a chain read; the chain read is onchain_total_supply | 677,022,560 tokens | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 358 | 18/30 | grass-native (unmapped) | origin ↗ |
daily_gb_collected | 96,950 gb | 2026-09-02 13:34:01 | first_party_api | 568 | 25/30 | grass-native (unmapped) | origin ↗ |
daily_gb_multimodal | 86,474 gb | 2026-09-02 13:34:01 | first_party_api | 284 | 14/30 | grass-native (unmapped) | origin ↗ |
daily_gb_text | 1,676 gb | 2026-09-02 13:34:01 | first_party_api | 284 | 14/30 | grass-native (unmapped) | origin ↗ |
frames_downloaded⚠ ⚠ archived naming generation (single row, 2026-08-09); the live series is the frames_downloaded_total name — same quantity, never summed | 161,819,278,800 frames | 2026-08-09 23:52:10 | first_party_api | 1 | 1/30 | grass-native (unmapped) | origin ↗ |
frames_downloaded_total | 161,819,278,800 frames | 2026-09-02 13:34:01 | first_party_api | 283 | 13/30 | grass-native (unmapped) | origin ↗ |
fully_diluted_valuation_usd | 331,859,503 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 358 | 18/30 | grass-native (unmapped) | origin ↗ |
market_cap_change_24h_pct | -3.9566 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
market_cap_change_24h_usd | -9,255,668.1912 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
market_cap_rank | 161 rank | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
market_cap_usd | 224,676,370 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 358 | 18/30 | grass-native (unmapped) | origin ↗ |
max_supply | 1,000,000,000 tokens | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 358 | 18/30 | grass-native (unmapped) | origin ↗ |
number_of_countries | 190 countries | 2026-09-02 13:34:01 | first_party_api | 568 | 25/30 | grass-native (unmapped) | origin ↗ |
onchain_top10_holder_pct⚠ ⚠ ACCOUNT concentration from getTokenLargestAccounts (20 largest token accounts, not owners — pools/treasuries/exchanges each count as one); an upper-bound proxy for owner concentration | 53.0662 pct | 2026-08-28 12:00:01 | solana_rpc | 20 | 5/30 | grass-native (unmapped) | origin ↗ |
onchain_top1_holder_pct⚠ ⚠ ACCOUNT concentration from getTokenLargestAccounts (20 largest token accounts, not owners — pools/treasuries/exchanges each count as one); an upper-bound proxy for owner concentration | 25.6503 pct | 2026-08-28 12:00:01 | solana_rpc | 20 | 5/30 | grass-native (unmapped) | origin ↗ |
onchain_top20_holder_pct⚠ ⚠ ACCOUNT concentration from getTokenLargestAccounts (20 largest token accounts, not owners — pools/treasuries/exchanges each count as one); an upper-bound proxy for owner concentration | 63.9275 pct | 2026-08-28 12:00:01 | solana_rpc | 20 | 5/30 | grass-native (unmapped) | origin ↗ |
onchain_total_supply⚠ ⚠ Solana getTokenSupply read — the mint's own figure; differs from CoinGecko's total_supply reference row by design | 999,993,103.4182 tokens | 2026-09-02 12:00:02 | solana_rpc | 105 | 25/30 | grass-native (unmapped) | origin ↗ |
price_ath_usd | 3.89 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_atl_usd | 0.1668 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_change_14d_pct | 5.6 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_change_1h_pct | -0.3 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_change_1y_pct | -55 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_change_200d_pct | -1.1 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_change_24h_pct | -3.979 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_change_24h_usd | -0.0137 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_change_30d_pct | 7.3 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_change_7d_pct | -3.2 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_from_ath_pct | -91.4758 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_from_atl_pct | 98.9291 percent | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_high_24h_usd | 0.3518 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_low_24h_usd | 0.3312 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-native (unmapped) | origin ↗ |
price_usd | 0.3318 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 358 | 18/30 | grass-native (unmapped) | origin ↗ |
rows_of_data⚠ ⚠ archived naming generation (single row, 2026-08-09); equals urls_indexed on the live payload, so the collector keeps one name | 5,318,005,903 rows | 2026-08-09 23:52:10 | first_party_api | 1 | 1/30 | grass-native (unmapped) | origin ↗ |
tokens_collected⚠ ⚠ archived naming generation (single row, 2026-08-09); the live series is the tokens_collected_total name — same quantity, never summed | 125,338,385,560 tokens | 2026-08-09 23:52:10 | first_party_api | 1 | 1/30 | grass-native (unmapped) | origin ↗ |
tokens_collected_total | 125,338,385,560 GRASS | 2026-09-02 13:34:01 | first_party_api | 283 | 13/30 | grass-native (unmapped) | origin ↗ |
total_ip_addresses | 109,755,404 ip_addresses | 2026-09-02 13:34:01 | first_party_api | 568 | 25/30 | grass-native (unmapped) | origin ↗ |
total_supply | 1,000,000,000 tokens | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 358 | 18/30 | question-verified token_supply_total | origin ↗ |
urls_indexed⚠ ⚠ archived naming generation (single row, 2026-08-09); the live series is the urls_indexed_total name — same quantity, never summed | 5,318,005,903 urls | 2026-08-09 23:52:10 | first_party_api | 1 | 1/30 | grass-native (unmapped) | origin ↗ |
urls_indexed_total | 5,318,005,903 urls | 2026-09-02 13:34:01 | first_party_api | 283 | 13/30 | grass-native (unmapped) | origin ↗ |
volume_24h_usd | 13,156,462 usd | 2026-09-02 12:50:20 | CoinGecko /coins/markets | 263 | 12/30 | grass-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.
The ledger query ran during generation and returned 0 rows for GRASS. Zero here is the live query result, not a gap — the ledger itself is at /v1/revisions.
Served by /v1/network/GRASS — the same grades a paying agent receives. Scores are the engines' own 0–100 outputs, not ours to smooth.
| Engine | Grade | Score |
|---|---|---|
| Node quality | A | 100 |
| Dilution risk | MINIMAL | 84.7224 |
| Bot risk | F | 50 |
| Dev velocity | A | 100 |
| Revenue | F | 0 |
| Data coverage | B | 50 |
| Overall | B | 56.9445 |
No account, no key, no trust required. Commands 1–3 hit the same upstream endpoints our collectors do (the solscan.io and coingecko.com browser pages 403 plain curl, so the programmatic endpoints are given); command 4 hits this estate's public API, where every row carries the same source / as_of / verify_url fields.
# 1) The network's own stats endpoint (IPs, countries, daily GB, URLs, frames) — keyless, as of 2026-09-02T13:46:31Z:
curl -s -H "User-Agent: kairos-check" "https://api.getgrass.io/networkStats?input=%7B%22cluster%22%3A%22mainnet%22%7D" | python3 -m json.tool
# 2) Solana mainnet RPC — the chain's own supply figure:
# Solana mainnet public JSON-RPC — getTokenSupply for the GRASS SPL mint
# (the endpoint family our solana_rpc collector reads):
curl -s -X POST "https://api.mainnet-beta.solana.com" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"getTokenSupply","params":["Grass7B4RdKfBCjTKgSqnXkqjwiGvQyFbuSCUJr3XXjs"]}' | python3 -m json.tool
# 3) Market reference (CoinGecko public API):
# CoinGecko public markets API (the endpoint family our collector
# reads for the price/supply/cap rows):
curl -s "https://api.coingecko.com/api/v3/coins/markets?vs_currency=usd&ids=grass" | python3 -m json.tool
# 4) This estate's public API row for GRASS:
curl -s "https://kairossignal.com/v1/network/GRASS" | 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_grass.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 resolver: total_supply maps to
token_supply_total (question-verified). The remaining series are
Grass-native network/market metrics with no cross-network concept; grading them would
be fabrication, so they are labelled "grass-native (unmapped)". Naming generations
(bare names vs *_total) and unit generations (tokens vs
GRASS) are the same quantities as re-published by the collector over time;
they are shown side by side as held, never summed or reconciled. Holder-concentration
figures measure token ACCOUNTS, not owners. Where a section has no data, it is
absent — we do not publish zeros for gaps.
propintel/gen_deep_dive_grass.py · source of truth:
default.depin_catalog, default.depin_onchain,
default.depin_revision_ledger (ClickHouse, live at generation) ·
Kairos Signal — provenance or silence.