Overview
Goldsky provides curated Bitcoin datasets for blocks and transactions, making it easy to build pipelines for Bitcoin blockchain analysis.Quick Start
Get started with Bitcoin data - choose the dataset that fits your use case: For block data:bitcoin.raw.blocks- Block data including hash, height (number), size, weight, merkle root, timestamp, and transaction countbitcoin.raw.transactions- Transaction data including inputs, outputs (as JSON strings), input/output counts and values, fee, and block metadata
Schema Reference
bitcoin.raw.blocks - primary key id
| Field | Type | Description |
|---|---|---|
id | STRING | Unique row id (primary key) |
hash | STRING | Block hash |
size | LONG | Block size in bytes |
stripped_size | LONG | Block size without witness data |
weight | LONG | Block weight |
number | LONG | Block height |
version | LONG | Block version |
merkle_root | STRING | Merkle root hash |
timestamp | LONG | Block time (Unix seconds) |
nonce | STRING | Block nonce (hex) |
bits | STRING | Difficulty target in compact form |
coinbase_param | STRING | Coinbase parameter |
transaction_count | LONG | Number of transactions in the block |
bitcoin.raw.transactions - primary key id
| Field | Type | Description |
|---|---|---|
id | STRING | Unique row id (primary key) |
hash | STRING | Transaction hash (txid) |
size | LONG | Transaction size in bytes |
virtual_size | LONG | Virtual size (vsize) |
version | LONG | Transaction version |
lock_time | LONG | Lock time |
block_number | LONG | Block height containing this tx |
block_hash | STRING | Hash of the containing block |
block_timestamp | LONG | Block time (Unix seconds) |
is_coinbase | BOOLEAN | Whether this is a coinbase tx |
index | LONG | Index within the block |
inputs | STRING | JSON-encoded array of inputs |
outputs | STRING | JSON-encoded array of outputs |
input_count | LONG | Number of inputs |
output_count | LONG | Number of outputs |
input_value | LONG | Total input value in satoshis |
output_value | LONG | Total output value in satoshis |
fee | LONG | Transaction fee in satoshis |
inputs and outputs are JSON-encoded strings. Use json_extract or your sink’s JSON functions to parse them downstream.Guide: Track Large Bitcoin Transactions
Monitor transactions with significant BTC movement:Guide: Monitor Block Production
Track Bitcoin block metadata for network analysis:Guide: Analyze Transaction Fees
Track Bitcoin transaction fees over time:Performance Tips
Choose the right dataset
Choose the right dataset
Use the most specific dataset for your use case:
- Block-level analysis? Use
bitcoin.raw.blocks - Transaction analysis? Use
bitcoin.raw.transactions
Filter early
Filter early
Apply filters in SQL as early as possible to reduce data volume:
Use appropriate resource sizes
Use appropriate resource sizes
Bitcoin has moderate throughput compared to high-volume chains. Start with small or medium: