Token economics
New NEAR is minted every epoch. Gas burn destroys NEAR; buybacks move NEAR into a wallet that holds it. The two are kept apart: only burn lowers total supply.
Issuance, buybacks and burn, NEAR per day
In the 30 days to 2026-10-31, about 89.6K NEAR were issued per day, against 9.6K NEAR received by the buyback wallet and 1.2K NEAR burnt as gas. Issuance roughly halved at marker 1 (2025-10-30).
- 12025-10-30: Daily gross issuance falls from about 176,237 to 88,823 NEAR (14-day means); 2025-10-29 is a transition day (from the data)
- 22026-02-23: NEAR Intents fee switch goes live; revenue used for NEAR buybacks (reported, source 1, source 2)
- 32026-04-27: First observed inflow to buybacks.multisignature.near (from the data)
- 42026-09-09: 502,792 NEAR moved between revenue wallets (netted out, not a buyback) (from the data)
- 52026-10-01: NEAR Intents exploit; 1Click services halted (reported, source 1, source 2, source 3)
7-day means. The buyback wallet is first observed on 2026-04-27; where buybacks went before that is unknown, so the line starts there. Issuance is derived from total supply plus burn.
Query and model
Computed by coverage.issuance_gross_near, coverage.buyback_near (7-day means) from the tables below.
supply_daily (sql/supply_daily.sql)
-- supply_daily: end-of-day total supply and gas burn, in NEAR (yocto / 1e24).
-- Params: @start_date, @end_date (inclusive).
-- burnt_near = tokens_burnt of execution outcomes + receipt_conversion_tokens_burnt of transactions
-- (DATA_AUDIT.md check 2). Values are FLOAT64 in the source: ~15 significant digits.
WITH blk AS (
SELECT
block_date,
MAX(block_height) AS block_height,
MAX_BY(total_supply, block_height) AS total_supply
FROM `bigquery-public-data.crypto_near_mainnet_us.blocks`
WHERE block_date BETWEEN @start_date AND @end_date
GROUP BY block_date
),
eo AS (
SELECT block_date, SUM(tokens_burnt) AS burnt_receipts
FROM `bigquery-public-data.crypto_near_mainnet_us.execution_outcomes`
WHERE block_date BETWEEN @start_date AND @end_date
GROUP BY block_date
),
tx AS (
SELECT block_date, SUM(receipt_conversion_tokens_burnt) AS burnt_conversion
FROM `bigquery-public-data.crypto_near_mainnet_us.transactions`
WHERE block_date BETWEEN @start_date AND @end_date
GROUP BY block_date
),
circ AS (
SELECT
block_date,
MAX_BY(circulating_tokens_supply, computed_at_block_height) AS circulating_supply
FROM `bigquery-public-data.crypto_near_mainnet_us.circulating_supply`
WHERE block_date BETWEEN @start_date AND @end_date
GROUP BY block_date
)
SELECT
block_date AS `date`,
block_height,
total_supply / 1e24 AS total_supply_near,
(burnt_receipts + burnt_conversion) / 1e24 AS burnt_near,
burnt_receipts / 1e24 AS burnt_receipts_near,
burnt_conversion / 1e24 AS burnt_conversion_near,
circulating_supply / 1e24 AS circulating_supply_near
FROM blk
LEFT JOIN eo USING (block_date)
LEFT JOIN tx USING (block_date)
LEFT JOIN circ USING (block_date)
ORDER BY 1
fee_wallet_inflows_daily (sql/fee_wallet_inflows_daily.sql)
-- fee_wallet_inflows_daily (raw balances): end-of-day liquid NEAR balance of the revenue wallets. -- Params: @start_date, @end_date (inclusive), @wallets (ARRAY<STRING>). -- ft_balances_daily has no block_date column; its partition column is epoch_date, so the date -- filter is on epoch_date (documented exception to CLAUDE.md rule 2). liquid is in NEAR units. -- Daily changes are derived in Python (capture.extract.fee_wallets). SELECT epoch_date AS `date`, account_id AS wallet, 'NEAR' AS token, liquid AS balance_end FROM `bigquery-public-data.crypto_near_mainnet_us.ft_balances_daily` WHERE epoch_date BETWEEN @start_date AND @end_date AND account_id IN UNNEST(@wallets) ORDER BY 1, 2
Data table
| Date | Issuance | Buyback | Burn |
|---|---|---|---|
| 2026-10-03 | 88018 | 8923 | 1661 |
| 2026-10-04 | 91679 | 8801 | 1567 |
| 2026-10-05 | 87770 | 8576 | 1469 |
| 2026-10-06 | 87549 | 7958 | 1396 |
| 2026-10-07 | 90862 | 7158 | 1225 |
| 2026-10-08 | 90478 | 7913 | 1013 |
| 2026-10-09 | 90445 | 9510 | 1001 |
| 2026-10-10 | 90560 | 10262 | 1285 |
| 2026-10-11 | 86899 | 11043 | 1745 |
| 2026-10-12 | 90781 | 11056 | 1775 |
| 2026-10-13 | 90866 | 11022 | 1807 |
| 2026-10-14 | 89339 | 13325 | 1824 |
| 2026-10-15 | 89463 | 11975 | 2313 |
| 2026-10-16 | 89675 | 10168 | 2319 |
| 2026-10-17 | 89777 | 9640 | 2045 |
| 2026-10-18 | 89850 | 8946 | 1565 |
| 2026-10-19 | 89956 | 8838 | 1517 |
| 2026-10-20 | 90095 | 9508 | 1466 |
| 2026-10-21 | 88016 | 7196 | 1446 |
| 2026-10-22 | 91679 | 7485 | 857 |
| 2026-10-23 | 87625 | 7576 | 839 |
| 2026-10-24 | 90849 | 7838 | 830 |
| 2026-10-25 | 90525 | 8384 | 819 |
| 2026-10-26 | 90013 | 9220 | 808 |
| 2026-10-27 | 90551 | 9279 | 809 |
| 2026-10-28 | 90160 | 9530 | 780 |
| 2026-10-29 | 89994 | 10595 | 790 |
| 2026-10-30 | 89988 | 11514 | 807 |
| 2026-10-31 | 86465 | 11633 | 799 |
| 2026-11-01 | 90165 | – | 803 |
- supply_daily.parquet · BigQuery public dataset · 2025-05-10 to 2026-11-01 · pulled 2026-11-02T03:40:33Z · sha256 382b732b
- fee_wallet_inflows_daily.parquet · BigQuery public dataset · 2025-11-07 to 2026-10-31 · pulled 2026-11-02T03:40:35Z · sha256 b32041f1
Two views of coverage: float and total supply
On 2026-10-31, buybacks and burn covered 0.120 of 30-day issuance in the float view, but only 0.014 in the total-supply view, because NEAR bought back is held, not burnt.
- 12025-10-30: Daily gross issuance falls from about 176,237 to 88,823 NEAR (14-day means); 2025-10-29 is a transition day (from the data)
- 22026-02-23: NEAR Intents fee switch goes live; revenue used for NEAR buybacks (reported, source 1, source 2)
- 32026-04-27: First observed inflow to buybacks.multisignature.near (from the data)
- 42026-09-09: 502,792 NEAR moved between revenue wallets (netted out, not a buyback) (from the data)
- 52026-10-01: NEAR Intents exploit; 1Click services halted (reported, source 1, source 2, source 3)
Query and model
Computed by coverage.cr_float, coverage.cr_supply (src/capture/models/coverage.py) from the tables below.
supply_daily (sql/supply_daily.sql)
-- supply_daily: end-of-day total supply and gas burn, in NEAR (yocto / 1e24).
-- Params: @start_date, @end_date (inclusive).
-- burnt_near = tokens_burnt of execution outcomes + receipt_conversion_tokens_burnt of transactions
-- (DATA_AUDIT.md check 2). Values are FLOAT64 in the source: ~15 significant digits.
WITH blk AS (
SELECT
block_date,
MAX(block_height) AS block_height,
MAX_BY(total_supply, block_height) AS total_supply
FROM `bigquery-public-data.crypto_near_mainnet_us.blocks`
WHERE block_date BETWEEN @start_date AND @end_date
GROUP BY block_date
),
eo AS (
SELECT block_date, SUM(tokens_burnt) AS burnt_receipts
FROM `bigquery-public-data.crypto_near_mainnet_us.execution_outcomes`
WHERE block_date BETWEEN @start_date AND @end_date
GROUP BY block_date
),
tx AS (
SELECT block_date, SUM(receipt_conversion_tokens_burnt) AS burnt_conversion
FROM `bigquery-public-data.crypto_near_mainnet_us.transactions`
WHERE block_date BETWEEN @start_date AND @end_date
GROUP BY block_date
),
circ AS (
SELECT
block_date,
MAX_BY(circulating_tokens_supply, computed_at_block_height) AS circulating_supply
FROM `bigquery-public-data.crypto_near_mainnet_us.circulating_supply`
WHERE block_date BETWEEN @start_date AND @end_date
GROUP BY block_date
)
SELECT
block_date AS `date`,
block_height,
total_supply / 1e24 AS total_supply_near,
(burnt_receipts + burnt_conversion) / 1e24 AS burnt_near,
burnt_receipts / 1e24 AS burnt_receipts_near,
burnt_conversion / 1e24 AS burnt_conversion_near,
circulating_supply / 1e24 AS circulating_supply_near
FROM blk
LEFT JOIN eo USING (block_date)
LEFT JOIN tx USING (block_date)
LEFT JOIN circ USING (block_date)
ORDER BY 1
fee_wallet_inflows_daily (sql/fee_wallet_inflows_daily.sql)
-- fee_wallet_inflows_daily (raw balances): end-of-day liquid NEAR balance of the revenue wallets. -- Params: @start_date, @end_date (inclusive), @wallets (ARRAY<STRING>). -- ft_balances_daily has no block_date column; its partition column is epoch_date, so the date -- filter is on epoch_date (documented exception to CLAUDE.md rule 2). liquid is in NEAR units. -- Daily changes are derived in Python (capture.extract.fee_wallets). SELECT epoch_date AS `date`, account_id AS wallet, 'NEAR' AS token, liquid AS balance_end FROM `bigquery-public-data.crypto_near_mainnet_us.ft_balances_daily` WHERE epoch_date BETWEEN @start_date AND @end_date AND account_id IN UNNEST(@wallets) ORDER BY 1, 2
Data table
| Date | CR_float 30d | CR_supply 30d |
|---|---|---|
| 2026-10-03 | 0.155 | 0.013 |
| 2026-10-04 | 0.143 | 0.013 |
| 2026-10-05 | 0.142 | 0.013 |
| 2026-10-06 | 0.139 | 0.013 |
| 2026-10-07 | 0.138 | 0.013 |
| 2026-10-08 | 0.141 | 0.013 |
| 2026-10-09 | 0.143 | 0.013 |
| 2026-10-10 | 0.143 | 0.014 |
| 2026-10-11 | 0.146 | 0.015 |
| 2026-10-12 | 0.144 | 0.015 |
| 2026-10-13 | 0.143 | 0.015 |
| 2026-10-14 | 0.148 | 0.015 |
| 2026-10-15 | 0.149 | 0.017 |
| 2026-10-16 | 0.146 | 0.017 |
| 2026-10-17 | 0.138 | 0.017 |
| 2026-10-18 | 0.132 | 0.017 |
| 2026-10-19 | 0.130 | 0.017 |
| 2026-10-20 | 0.132 | 0.016 |
| 2026-10-21 | 0.128 | 0.016 |
| 2026-10-22 | 0.124 | 0.016 |
| 2026-10-23 | 0.121 | 0.016 |
| 2026-10-24 | 0.118 | 0.016 |
| 2026-10-25 | 0.117 | 0.016 |
| 2026-10-26 | 0.119 | 0.016 |
| 2026-10-27 | 0.121 | 0.015 |
| 2026-10-28 | 0.122 | 0.015 |
| 2026-10-29 | 0.122 | 0.015 |
| 2026-10-30 | 0.122 | 0.014 |
| 2026-10-31 | 0.120 | 0.014 |
| 2026-11-01 | – | 0.013 |
- supply_daily.parquet · BigQuery public dataset · 2025-05-10 to 2026-11-01 · pulled 2026-11-02T03:40:33Z · sha256 382b732b
- fee_wallet_inflows_daily.parquet · BigQuery public dataset · 2025-11-07 to 2026-10-31 · pulled 2026-11-02T03:40:35Z · sha256 b32041f1