BitqueryBitqueryData Store
BitcoinBlocksTransactionsTransfersUTXO

Bitcoin

The complete Bitcoin ledger since genesis: blocks, transactions, inputs, outputs, input-to-output mapping, plus Omni Layer transactions and transfers.

Coverage
Full historyto Sep 23, 2026 · yesterday
Tables
6Parquet, one prefix each
Columns
116across 6 tables
Coverage ends yesterday, UTC

Overview

Every Bitcoin block, transaction, input and output from the genesis block to yesterday, with values in BTC, satoshi and USD at block time, plus decoded Omni Layer transactions and transfers.

Inputs carry the hash and index of the output they spend, and the tx_inputs_from_outputs table joins each spend to the output that created it, so UTXO traversal and coin-age calculations are a single join rather than a replay.

Files are cut every 50 blocks and named by block range, so any window can be assembled exactly.

Use cases

  • UTXO graph analysis and address clustering
  • Coin-age and HODL-wave studies from input-to-output links
  • Fee market and block-space research
  • Omni Layer USDT flow analysis
  • Fund-flow tracing across transactions

6 tables

116 columns · free sample for each table

blocks

12 columns

One row per block: size, weight, difficulty, chainwork and transaction count.

bitcoin/blocks<start_block>_<end_block>.parquet50 blocks per file
Browse columns Sample fileSample updated Jan 20, 2026

transactions

25 columns

One row per transaction with input, output, fee and mined values in BTC, satoshi and USD.

bitcoin/transactions<start_block>_<end_block>.parquet50 blocks per file
Browse columns Sample fileSample updated Jan 20, 2026

inputs

20 columns

One row per transaction input, referencing the output it spends, with address, script type and value.

bitcoin/inputs<start_block>_<end_block>.parquet50 blocks per file
Browse columns Sample fileSample updated Jan 20, 2026

outputs

24 columns

One row per transaction output with address, script type and value.

bitcoin/outputs<start_block>_<end_block>.parquet50 blocks per file
Browse columns Sample fileSample updated Jan 20, 2026

omni_transactions

15 columns

Decoded Omni Layer transactions (Tether on Bitcoin) with type, validity and raw payload.

bitcoin/omni_transactions<start_block>_<end_block>.parquet50 blocks per file
Browse columns Sample fileSample updated Jan 20, 2026

omni_transfers

20 columns

Omni Layer token transfers with sender, receiver, property and value.

bitcoin/omni_transfers<start_block>_<end_block>.parquet50 blocks per file
Browse columns Sample fileSample updated Jan 20, 2026

Schema reference

copies a column name
116 columns
blocks12 columnsOne row per block: size, weight, difficulty, chainwork and transaction count.
ColumnTypeDescription
tx_dateUInt64Block date, UTC midnight (epoch ms)
tx_timeInt64Block timestamp (epoch seconds)
blockInt64Block height
median_timeInt64Median time past of the block (epoch seconds)
difficultyFloat64Mining difficulty
hashStringBlock hash
strippedsizeInt64Block size without witness data, bytes
sizeInt64Size in bytes
weightInt64Block or transaction weight units
versionInt64Version field
txcountInt64Transactions in the block
chainworkStringCumulative chain work, hex
Sample file
transactions25 columnsOne row per transaction with input, output, fee and mined values in BTC, satoshi and USD.
ColumnTypeDescription
tx4
tx_dateUInt64Block date, UTC midnight (epoch ms)
tx_timeInt64Block timestamp (epoch seconds)
tx_hashStringTransaction hash
tx_indexInt64Position of the transaction in the block
blockchain1
blockchain_idInt64Internal chain id
Other6
blockInt64Block height
locktimeInt64Transaction locktime
versionInt64Version field
sizeInt64Size in bytes
vsizeInt64Virtual size in vbytes
weightInt64Block or transaction weight units
is1
is_coinbaseInt641 for the coinbase transaction
input4
input_countInt64Number of inputs
input_value_decimalInt64Total input value in BTC
input_valueInt64Total input value in satoshi
input_value_in_usdInt64Total input value in USD at block time
output4
output_countInt64Number of outputs
output_value_decimalFloat64Total output value in BTC
output_valueFloat64Total output value in satoshi
output_value_in_usdFloat64Total output value in USD at block time
fee3
fee_value_decimalInt64Fee in BTC
fee_valueInt64Fee in satoshi
fee_value_in_usdInt64Fee in USD at block time
mined2
mined_value_decimalFloat64Newly mined BTC (coinbase only)
mined_valueFloat64Newly mined satoshi (coinbase only)
Sample file
inputs20 columnsOne row per transaction input, referencing the output it spends, with address, script type and value.
ColumnTypeDescription
tx_dateUInt64Block date, UTC midnight (epoch ms)
tx_timeInt64Block timestamp (epoch seconds)
blockchain_idInt64Internal chain id
blockInt64Block height
tx_hashStringTransaction hash
transaction_indexInt64Position of the transaction in the block
output_tx_hashStringHash of the transaction that created the spent output
output_transaction_indexInt64Index of that transaction in its block
input_indexInt64Index of the input in the transaction
input_addressStringAddress spending the input
input_address_annotationNullable(String)Entity label for the address, when known
input_scriptStringInput script, hex
script_templateInt64Script template id
input_script_type_annotationStringScript type annotation
input_script_type_patternStringScript pattern
input_script_type_simplePatternStringSimplified script pattern
input_script_type_typeStringScript type, e.g. pubkeyhash
value_decimalFloat64Value in BTC
value_in_usdFloat64Value in USD at block time
valueFloat64Value in satoshi
Sample file
outputs24 columnsOne row per transaction output with address, script type and value.
ColumnTypeDescription
tx3
tx_dateUInt64Block date, UTC midnight (epoch ms)
tx_timeInt64Block timestamp (epoch seconds)
tx_hashStringTransaction hash
blockchain1
blockchain_idInt64Internal chain id
Other4
blockInt64Block height
dateStringBlock date, YYYY-MM-DD
directionStringDirection relative to the address
valueFloat64Value in satoshi
block1
block_timestampInt64Block timestamp (epoch seconds)
output9
output_addressStringAddress receiving the output
output_address_annotationNullable(String)Entity label for the address, when known
output_indexInt64Index of the output in the transaction
output_scriptStringOutput script, hex
output_script_type_annotationNullable(String)Script type annotation
output_script_type_patternStringScript pattern
output_script_type_shortStringShort script type
output_script_type_simplePatternStringSimplified script pattern
output_script_type_typeStringScript type
script2
script_templateInt64Script template id
script_typeStringScript type, e.g. witness_v0_keyhash
req1
req_sigsInt64Signatures required to spend
transaction1
transaction_indexInt64Position of the transaction in the block
value2
value_decimalFloat64Value in BTC
value_in_usdFloat64Value in USD at block time
Sample file
omni_transactions15 columnsDecoded Omni Layer transactions (Tether on Bitcoin) with type, validity and raw payload.
ColumnTypeDescription
tx_dateUInt64Block date, UTC midnight (epoch ms)
tx_timeInt64Block timestamp (epoch seconds)
blockchain_idInt64Internal chain id
blockInt64Block height
block_hashStringBlock hash
tx_hashStringTransaction hash
tx_indexInt64Position of the transaction in the block
typeStringOmni transaction type name
type_intInt64Omni transaction type id
tx_senderStringSender of the Omni transaction
validInt641 if the Omni transaction is valid
versionInt64Version field
jsonStringRaw Omni payload as JSON
fee_valueFloat64Fee in satoshi
fee_value_usdFloat64Fee in USD at block time
Sample file
omni_transfers20 columnsOmni Layer token transfers with sender, receiver, property and value.
ColumnTypeDescription
tx_dateUInt64Block date, UTC midnight (epoch ms)
tx_timeInt64Block timestamp (epoch seconds)
blockchain_idInt64Internal chain id
blockInt64Block height
block_hashStringBlock hash
tx_hashStringTransaction hash
tx_indexInt64Position of the transaction in the block
typeStringOmni transaction type name
type_intInt64Omni transaction type id
tx_senderStringSender of the Omni transaction
transfer_fromStringSender of the Omni transfer
transfer_toStringReceiver of the Omni transfer
divisibleInt641 if the property is divisible
ismineInt64Omni Core ismine flag
valueInt64Value in satoshi
directionStringDirection relative to the address
currency_nameStringOmni property name, e.g. TetherUS
currency_symbolStringOmni property symbol
currency_token_idInt64Omni property id (31 = USDT)
currency_addressStringOmni property address
Sample file

Ask an AI about this data

Send this dataset’s full schema to an assistant and ask it anything. It reads the plain-text brief first, so the answer comes from the real column list rather than a guess.

Start with

Opens a new chat with the question filled in. Nothing about you is sent to Bitquery, and the assistant sees only the public brief.

Delivery

Parquet files, delivered as signed download links by email after payment, in this layout:

# blocks — 50 blocks per file
bitcoin/blocks<start_block>_<end_block>.parquet

# transactions — 50 blocks per file
bitcoin/transactions<start_block>_<end_block>.parquet

# inputs — 50 blocks per file
bitcoin/inputs<start_block>_<end_block>.parquet

# outputs — 50 blocks per file
bitcoin/outputs<start_block>_<end_block>.parquet

# omni_transactions — 50 blocks per file
bitcoin/omni_transactions<start_block>_<end_block>.parquet

# omni_transfers — 50 blocks per file
bitcoin/omni_transfers<start_block>_<end_block>.parquet
  1. Download a free sampleNo email needed.
  2. Pay nowName, work email and licence check.
  3. Pay the invoiceBy card or bank transfer.
  4. Get signed linksThe team prepares the export and emails the links.

Price

Full history
Genesis → Sep 23, 2026
$8,000one-time, USD
  • All 6 tables, 116 columns
  • Parquet files in the layout under Delivery
  • Signed download links by email
  • Licensed under the Data License
Pay now

FAQ

3 questions
What is included in Bitcoin?

Six Parquet tables: blocks, transactions, inputs, outputs, omni_transactions and omni_transfers, covering full history from the genesis block to yesterday.

How is the data delivered?

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.

Can I try before I buy?

Yes. Every table links to a public sample file with real records, and the sample bucket holds full Parquet files you can load directly.