# Zcash | Bitquery Data Store The full Zcash ledger since October 2016: blocks, transactions with shielded counts, and transparent inputs and outputs with ZEC and USD values. Dataset page: https://bitquery.io/datastore/datasets/zcash Network: Zcash Category: Blocks, Transactions, Transfers, UTXO Tables: 4 Columns: 76 Coverage: first block to 2026-09-24 Format: Apache Parquet, Snappy compression, one prefix per table Licence: https://bitquery.io/datastore/legal/data-license ## What this is Every Zcash block and transaction from the genesis block in October 2016 to yesterday, with the transparent inputs and outputs of each transaction decoded to address, script type and value in ZEC, zatoshi and USD at block time. Shielded transfers (Sprout, Sapling and Orchard) hide their amounts and addresses on chain, so they have no input or output rows. Each transaction row counts its shielded spends, shielded outputs and JoinSplits and carries the net value that moved between the transparent and shielded pools, so pool flows are a sum over transactions. Files are cut by block range and named by their first and last block. ## What people use it for - Transparent UTXO graph analysis and address clustering - Shielded pool inflow and outflow measurement from transaction balances - Fee market and block-space research - Fund-flow tracing across transparent transactions ## Tables (4) ### blocks: 12 columns One row per block: size, difficulty, chainwork and transaction count. S3 prefix: zcash/blocks File naming: _.parquet, one file per block range Free sample (real Parquet, no email needed): https://bitquery-blockchain-dataset.s3.us-east-1.amazonaws.com/zcash/blocks/3495028_3495127.parquet Sample updated: Sep 25, 2026 | column | type | description | | --- | --- | --- | | tx_date | UInt64 | Block date, UTC midnight (epoch ms) | | tx_time | UInt64 | Block timestamp (epoch seconds) | | blockchain_id | Int64 | Internal chain id | | block | UInt64 | Block height | | nonce | UInt64 | Block nonce | | difficulty | Float64 | Mining difficulty | | hash | String | Block hash | | strippedsize | UInt64 | Block size without witness data, bytes | | size | UInt64 | Size in bytes | | version | UInt64 | Version field | | txcount | UInt64 | Transactions in the block | | chainwork | String | Cumulative chain work, hex | ### transactions: 29 columns One row per transaction with input, output, fee and mined values in ZEC, zatoshi and USD. S3 prefix: zcash/transactions File naming: _.parquet, one file per block range Free sample (real Parquet, no email needed): https://bitquery-blockchain-dataset.s3.us-east-1.amazonaws.com/zcash/transactions/3495028_3495127.parquet Sample updated: Sep 25, 2026 | column | type | description | | --- | --- | --- | | tx_date | UInt64 | Block date, UTC midnight (epoch ms) | | tx_time | UInt64 | Block timestamp (epoch seconds) | | blockchain_id | Int64 | Internal chain id | | block | UInt64 | Block height | | tx_hash | String | Transaction hash | | tx_index | Int64 | Position of the transaction in the block | | locktime | UInt64 | Transaction locktime | | version | Int64 | Version field | | is_coinbase | Int64 | 1 for the coinbase transaction | | input_count | Int64 | Number of inputs | | output_count | Int64 | Number of outputs | | input_value_decimal | Float64 | Total input value in ZEC | | output_value_decimal | Float64 | Total output value in ZEC | | fee_value_decimal | Float64 | Fee in ZEC | | mined_value_decimal | Float64 | Newly mined ZEC (coinbase only) | | input_value | Int64 | Total input value in zatoshi | | output_value | Int64 | Total output value in zatoshi | | fee_value | Int64 | Fee in zatoshi | | mined_value | Int64 | Newly mined zatoshi (coinbase only) | | input_value_in_usd | Float64 | Total input value in USD at block time | | output_value_in_usd | Float64 | Total output value in USD at block time | | fee_value_in_usd | Float64 | Fee in USD at block time | | expiryheight | UInt64 | Block height after which the transaction expires; 0 for none | | is_overwintered | Int64 | 1 if the transaction uses the Overwinter format | | shielded_spent_count | Int64 | Shielded spends (Sapling and Orchard) in the transaction | | shielded_output_count | Int64 | Shielded outputs in the transaction | | joinsplit_count | Int64 | Sprout JoinSplit descriptions in the transaction | | shielded_balance_decimal | Float64 | Net value moving between the transparent and shielded pools, in ZEC | | shielded_balance | Int64 | Net value moving between the transparent and shielded pools, in zatoshi | ### inputs: 17 columns One row per transaction input, referencing the output it spends, with address, script type and value. S3 prefix: zcash/inputs File naming: _.parquet, one file per block range Free sample (real Parquet, no email needed): https://bitquery-blockchain-dataset.s3.us-east-1.amazonaws.com/zcash/inputs/3495028_3495127.parquet Sample updated: Sep 25, 2026 | column | type | description | | --- | --- | --- | | tx_date | UInt64 | Block date, UTC midnight (epoch ms) | | tx_time | UInt64 | Block timestamp (epoch seconds) | | blockchain_id | Int64 | Internal chain id | | block | UInt64 | Block height | | tx_hash | String | Transaction hash | | transaction_index | Int64 | Position of the transaction in the block | | input_index | Int64 | Index of the input in the transaction | | output_tx_hash | String | Hash of the transaction that created the spent output; empty for coinbase | | output_index | Int64 | Index of the output in the transaction | | input_address | String | Address spending the input; empty for coinbase | | input_address_annotation | Nullable(String) | Entity label for the address, when known | | input_script | String | Input script: hex witness or scriptSig | | input_script_type | String | Input script type, e.g. txinwitness, scriptSig, coinbase | | script_template | Int64 | Script template id | | value_decimal | Float64 | Value in ZEC; a coinbase input carries the newly mined amount | | value_in_usd | Float64 | Value in USD at block time | | value | Int64 | Value in zatoshi; a coinbase input carries the newly mined amount | ### outputs: 18 columns One row per transaction output with address, script type, change heuristic and value. S3 prefix: zcash/outputs File naming: _.parquet, one file per block range Free sample (real Parquet, no email needed): https://bitquery-blockchain-dataset.s3.us-east-1.amazonaws.com/zcash/outputs/3495028_3495127.parquet Sample updated: Sep 25, 2026 | column | type | description | | --- | --- | --- | | tx_date | UInt64 | Block date, UTC midnight (epoch ms) | | tx_time | UInt64 | Block timestamp (epoch seconds) | | blockchain_id | Int64 | Internal chain id | | block | UInt64 | Block height | | date | String | Block date, YYYY-MM-DD | | tx_hash | String | Transaction hash | | transaction_index | Int64 | Position of the transaction in the block | | output_index | Int64 | Index of the output in the transaction | | output_address | String | Address receiving the output | | output_address_annotation | Nullable(String) | Entity label for the address, when known | | direction | String | Change heuristic: change, not_change, likely_change, likely_not_change, mining, fee, unknown | | output_script | String | Output script as opcodes and hex | | script_type | String | Output script type, e.g. pubkeyhash, scripthash, witness_v0_keyhash, nulldata | | script_template | Int64 | Script template id | | req_sigs | Int64 | Signatures required to spend | | value_decimal | Float64 | Value in ZEC; a coinbase input carries the newly mined amount | | value_in_usd | Float64 | Value in USD at block time | | value | Int64 | Value in zatoshi; a coinbase input carries the newly mined amount | ## Price - Full history (Genesis → Sep 24, 2026): $8,000 one-time, USD One-time purchase. The files are yours to keep under the licence above. ## Questions buyers ask Q: What is included in Zcash? A: Four Parquet tables: blocks, transactions, inputs and outputs, covering full history from the genesis block to yesterday. Inputs and outputs are the transparent ones; every row carries its address, script type and value in ZEC, zatoshi and USD. Q: Are shielded transactions included? A: Every transaction is listed in the transactions table, including fully shielded ones, with its shielded spend, shielded output and JoinSplit counts and its shielded balance. Their shielded amounts and addresses are not on chain, so they have no rows in inputs or outputs. Q: How is the data delivered? A: As flat Parquet files under a stable S3 layout, one prefix per table, files named by block range. Signed HTTPS links are emailed once the files are prepared. Q: How do I trace where coins went? A: Join inputs.output_tx_hash to outputs.tx_hash and inputs.output_index to outputs.output_index. Each input names the output it spends, so a spend chain is a repeated self-join rather than a node replay. Q: How do I load it? A: One DuckDB line reads a whole table: SELECT * FROM read_parquet('outputs/*.parquet'). Values come in ZEC, the smallest unit and USD at block time, so no decimal adjustment is needed. Q: How current is the data? A: A purchase covers full history from the genesis block to the day before the files are cut. Files are cut by block range, so any window can be assembled exactly. Q: Can I try before I buy? A: Yes. Every table links to a public sample Parquet file with real records from one day, and the sample repository shows the first rows of each in the browser. ## What this file is, and is not This is a description of one dataset sold by Bitquery, written for assistants and for people. It lists every column but holds no data rows. The sample files linked under each table are real Parquet and are free to download. Figures here come from the product record and are exact unless marked otherwise; the delivery manifest is authoritative for a purchased file. If a question needs a row that is not in a sample, say so rather than guessing at it.