Pinned Tweet
1/
Last week we put Ethereum Classic back in Google BigQuery.
Every block, transaction, log, token transfer and trace, from genesis to today:
classix-etc-data.crypto_ethereum_classic
Public, kept current, first TiB of queries a month free.
Classix retweeted
The median Ethereum Classic transaction fee in September was 0.00021 $ETC, about $0.0016 at today’s price, less than a fifth of a cent.
A dollar covers about 600 transactions. Users won’t even notice the fee.
The query is in the reply if you want to check it.
Classix retweeted
Three ideas we brought home from #TOKEN2049🇸🇬
• Preconfirmations: merchants can accept ETC in seconds, with no protocol change
• Hash-based security: #ETH is heading there, ETC is already there
• Cypherpunk roots: Zcash tells the story loudly, ETC should more often
Which should $ETC take on first?
The median Ethereum Classic transaction fee in September was 0.00021 $ETC, about $0.0016 at today’s price, less than a fifth of a cent.
A dollar covers about 600 transactions. Users won’t even notice the fee.
The query is in the reply if you want to check it.
DECLARE etc_usd FLOAT64 DEFAULT 0.0; -- put today's ETC price here
SELECT
FORMAT('%.6f', median_fee_etc) AS median_fee_etc,
FORMAT('%.4f', median_fee_etc * etc_usd) AS median_fee_usd
FROM (
SELECT APPROX_QUANTILES(receipt_gas_used * gas_price / 1e18, 100)[OFFSET(50)] AS median_fee_etc
FROM `classix-etc-data.crypto_ethereum_classic.transactions`
WHERE block_timestamp >= '2026-09-01' AND block_timestamp < '2026-10-01'
)
Three ideas we brought home from #TOKEN2049🇸🇬
• Preconfirmations: merchants can accept ETC in seconds, with no protocol change
• Hash-based security: #ETH is heading there, ETC is already there
• Cypherpunk roots: Zcash tells the story loudly, ETC should more often
Which should $ETC take on first?
Our full look back at TOKEN2049, and what ETC can learn from it: classix.dev/reflections-on-t…
A chain that keeps its commitments needs infrastructure that keeps showing up.
• A public RPC, routed across three regions
• Triforce: 11 nodes on 4 clients, watching the network
• The full chain in BigQuery
We help keep the lights on. Open for anyone to use.
Istora (@Istora_ETC) and Diego (@diega) spent last week at #TOKEN2049🇸🇬
Below we reflect on lessons $ETC can learn from Zcash and Ethereum, plus three takeaways from talking to custodians, stablecoin issuers, exchanges and infrastructure providers.
classix.dev/reflections-on-t…
For its first week, nobody could send a single transaction on #Ethereum.
The network launched "frozen."
Blocks were mined and rewarded, but miners had to thaw it block by block before the first transactions landed in block 46,147, on 7 August 2015.
#EthereumClassic shares every block of that history, up to the 2016 split. Genesis to the first transactions, in one query.
Run it yourself, free in the BigQuery console 👇
WITH early AS (
SELECT number, timestamp, miner, transaction_count, extra_data
FROM `classix-etc-data.crypto_ethereum_classic.blocks`
WHERE timestamp < TIMESTAMP('2015-08-15')
),
picked AS (
SELECT * FROM early WHERE number <= 5
UNION ALL
SELECT * FROM (
SELECT * FROM early WHERE transaction_count > 0 ORDER BY number LIMIT 3
)
),
first_tx AS (
SELECT MIN(number) AS n FROM early WHERE transaction_count > 0
),
rewards AS (
SELECT
block_number,
SUM(IF(reward_type = 'block', CAST(value AS FLOAT64), 0)) / 1e18 AS block_reward,
SUM(IF(reward_type = 'uncle', CAST(value AS FLOAT64), 0)) / 1e18 AS uncle_rewards
FROM `classix-etc-data.crypto_ethereum_classic.traces`
WHERE block_timestamp < TIMESTAMP('2015-08-15')
AND trace_type = 'reward'
GROUP BY block_number
)
SELECT label, block, block_timestamp, miner, transactions, block_reward, uncle_rewards, miner_message
FROM (
SELECT
CAST(p.number AS FLOAT64) AS sort_key,
CASE
WHEN p.number = 0 THEN 'genesis block'
WHEN p.number = f.n THEN 'first transactions'
WHEN p.transaction_count > 0 THEN 'transactions'
ELSE 'block'
END AS label,
FORMAT("%'d", p.number) AS block,
IF(p.number = 0, NULL, p.timestamp) AS block_timestamp,
CONCAT(SUBSTR(p.miner, 1, 10), '…') AS miner,
p.transaction_count AS transactions,
r.block_reward,
r.uncle_rewards,
SAFE_CONVERT_BYTES_TO_STRING(FROM_HEX(SUBSTR(p.extra_data, 3))) AS miner_message
FROM picked AS p
CROSS JOIN first_tx AS f
LEFT JOIN rewards AS r
ON r.block_number = p.number
UNION ALL
SELECT
5.5,
'thawing: no transactions possible',
CONCAT('6 to ', FORMAT("%'d", f.n - 1)),
CAST(NULL AS TIMESTAMP),
CAST(NULL AS STRING),
0,
CAST(NULL AS FLOAT64),
CAST(NULL AS FLOAT64),
CAST(NULL AS STRING)
FROM first_tx AS f
)
ORDER BY sort_key
Classix retweeted
This one was interesting: comparing the top holders of $ETC at the time of The DAO hard fork.
The top 10 ETC holders at block 1,920,000, where Ethereum and Ethereum Classic split.
#4 is the DAO attacker, with 3.64M $ETC.
#2 and #9 are the White Hat DAOs, holding about 7.88M ETC rescued from The DAO.
On #Ethereum, the fork moved all of those funds into a refund contract. On #EthereumClassic nothing moved, so they show up here exactly where they sat.
The rest of the list is the 2016 ecosystem: four exchanges (Kraken, Poloniex, Bitfinex and Gemini), the Ethereum Foundation’s EthDev wallet and a genesis address.
An archive node can’t give you this list without going through the whole chain. In BigQuery, it’s one query. 👇
Ethereum and Ethereum Classic share every block up to 1,919,999.
At block 1,920,000, on July 20, 2016, #Ethereum forked to reverse the DAO hack. The two chains have had different blocks ever since.
With both chains in BigQuery, one query shows the exact block where they split.
classix.dev/etc-in-bigquery
Want to run it yourself? Paste this into the BigQuery console and hit Run:
WITH eth AS (
SELECT number, `hash` AS block_hash
FROM `bigquery-public-data.crypto_ethereum.blocks`
WHERE DATE(timestamp) BETWEEN '2016-07-20' AND '2016-07-21'
AND number BETWEEN 1919992 AND 19200015
),
etc AS (
SELECT number, `hash` AS block_hash
FROM `classix-etc-data.crypto_ethereum_classic.blocks`
WHERE DATE(timestamp) BETWEEN '2016-07-20' AND '2016-07-21'
AND number BETWEEN 1919992 AND 19200015
)
SELECT
number AS block,
CONCAT(SUBSTR(eth.block_hash, 1, 12), '…') AS ethereum,
CONCAT(SUBSTR(etc.block_hash, 1, 12), '…') AS ethereum_classic,
IF(eth.block_hash = etc.block_hash, 'same block', 'split') AS status
FROM eth
JOIN etc USING (number)
ORDER BY block
Classix retweeted
The top 10 ETC holders at block 1,920,000, where Ethereum and Ethereum Classic split.
#4 is the DAO attacker, with 3.64M $ETC.
#2 and #9 are the White Hat DAOs, holding about 7.88M ETC rescued from The DAO.
On #Ethereum, the fork moved all of those funds into a refund contract. On #EthereumClassic nothing moved, so they show up here exactly where they sat.
The rest of the list is the 2016 ecosystem: four exchanges (Kraken, Poloniex, Bitfinex and Gemini), the Ethereum Foundation’s EthDev wallet and a genesis address.
An archive node can’t give you this list without going through the whole chain. In BigQuery, it’s one query. 👇
The top 10 ETC holders at block 1,920,000, where Ethereum and Ethereum Classic split.
#4 is the DAO attacker, with 3.64M $ETC.
#2 and #9 are the White Hat DAOs, holding about 7.88M ETC rescued from The DAO.
On #Ethereum, the fork moved all of those funds into a refund contract. On #EthereumClassic nothing moved, so they show up here exactly where they sat.
The rest of the list is the 2016 ecosystem: four exchanges (Kraken, Poloniex, Bitfinex and Gemini), the Ethereum Foundation’s EthDev wallet and a genesis address.
An archive node can’t give you this list without going through the whole chain. In BigQuery, it’s one query. 👇
The full ETC chain is a public dataset in BigQuery, kept current from Classix archive nodes, and the first TiB of queries each month is free.
Ask it who held ETC at any block in its history.
classix.dev/etc-in-bigquery
Classix retweeted
1/
Last week we put Ethereum Classic back in Google BigQuery.
Every block, transaction, log, token transfer and trace, from genesis to today:
classix-etc-data.crypto_ethereum_classic
Public, kept current, first TiB of queries a month free.
Classix retweeted
This one’s for the builders.👨🏻💻
Full ETC history is back in BigQuery: same schema as ETH, existing queries work with one-line change. Kept current by our team at @classix_dev, and the first TiB of queries each month is free.
3/
Same schema as Google's Ethereum dataset: Ethereum queries, including awesome-bigquery-views, run on ETC once you change the dataset name.
Built from two Project Triforce archive nodes using ethereum-etl. This stands on the open-source schema and tooling @EvgeMedvedev, @allenday and the blockchain-etl team built for Google's original datasets.
4/
The first thing we asked it: how much ETC sits behind public keys that are already on-chain. 83% of it, it turns out.
Query it yourself: classix.dev/etc-in-bigquery
xitter.cf/classix_dev/status/210…
On Wednesday @drakefjustin asked holders to consider moving funds to addresses that have never signed.
We ran the numbers on ETC:
83% of ETC sits at addresses whose public key is on-chain.
14.5M ETC is on keys that haven't signed in 3+ years.
classix.dev/etc-key-exposure











