Skip to main content
Schema: sui.core Table: fact_transaction_blocks Type: Base Table

Description

This table contains high-level transaction block metadata for the Sui blockchain, representing the top-level transaction structure that groups individual commands/payloads for execution. Each transaction block includes sender information, gas details, execution status, and timestamps, providing a comprehensive view of transaction-level activity.

Data Coverage

Full Historical Coverage: This table contains complete data from April 2023 through the present, with 4.18B rows of transaction block history.

Key Use Cases

  • Transaction-level analytics and user activity tracking
  • Gas usage analysis and fee economics
  • Transaction success rate monitoring and error analysis
  • User behavior analysis and wallet activity tracking
  • Network utilization and transaction volume analysis
  • Transaction filtering and high-level overview before diving into detailed commands

Important Relationships

  • Provides transaction context for core.fact_transactions (which decomposes blocks into commands)
  • Links to core.fact_checkpoints via checkpoint_number
  • Links to core.fact_transaction_inputs for input analysis
  • Referenced by core.ez_transfers and defi.ez_dex_swaps via tx_digest

Commonly-used Fields

  • tx_digest: Unique transaction identifier for joins and lookups
  • block_timestamp: Primary field for time-series analysis
  • tx_sender: User address for activity analysis
  • tx_succeeded: Essential for filtering successful transactions
  • gas_used: Important for fee and network economics analysis
  • checkpoint_number: Links to checkpoint-level data

Columns

Column NameData TypeDescription
CHECKPOINT_NUMBERNUMBERSequential checkpoint identifier where this transaction was finalized.
Data type: Integer Example:
  • 12345678
  • 98765432
Business Context:
  • Primary identifier for linking to checkpoint-level analysis.
  • Essential for checkpoint-based filtering and aggregation.
  • Enables correlation of transactions to consensus milestones. | | BLOCK_TIMESTAMP | TIMESTAMP_NTZ | The date and time at which the transaction block was finalized on the Sui blockchain.
Data type: Timestamp Example:
  • 2024-01-15 14:30:25.123456
Business Context:
  • Primary field for time-series analysis and temporal filtering of transaction activity.
  • Essential for trend analysis, volume calculations, and historical comparisons.
  • Enables time-based grouping and aggregation for analytics and reporting. | | TX_DIGEST | TEXT | 32-byte cryptographic transaction hash encoded in Base58, serving as the unique identifier for this transaction block.
Data type: String Example:
  • 8vKzD3qFqE9yH2wN1xR5tB7aL4mP6sC3jG9kF1nV8xT2
Business Context:
  • Primary identifier for linking transaction data across all related tables.
  • Essential for transaction verification and blockchain explorer lookups.
  • Enables correlation of transfers, events, and state changes to specific transactions. | | TX_SENDER | TEXT | The Sui address that initiated and signed this transaction.
Data type: String Example:
  • 0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef
Business Context:
  • Essential for user activity tracking and wallet behavior analysis.
  • Critical for identifying transaction originators and user cohort analysis.
  • Enables address-based filtering and user journey mapping. | | TX_KIND | TEXT | The type of transaction block, typically “ProgrammableTransaction” for user-initiated transactions.
Data type: String Example:
  • ProgrammableTransaction
  • GenesisTransaction
Business Context:
  • Essential for filtering and categorizing different types of blockchain activity.
  • Critical for separating user activity from system operations.
  • Enables focused analysis on specific transaction categories. | | TX_SUCCEEDED | BOOLEAN | Boolean flag indicating whether the transaction executed successfully.
Data type: Boolean Example:
  • true (transaction succeeded)
  • false (transaction failed)
Business Context:
  • Essential for filtering successful transactions and analyzing failure rates.
  • Critical for accurate volume calculations and user experience analysis.
  • Enables debugging and error pattern recognition. | | GAS_USED | NUMBER | The amount of gas consumed by this transaction execution.
Data type: Integer Example:
  • 1000000
  • 5000000
Business Context:
  • Essential for gas economics analysis and fee tracking.
  • Critical for understanding transaction costs and network pricing.
  • Enables cost analysis and network utilization monitoring. | | GAS_PRICE | NUMBER | The gas price (in MIST, the smallest unit of SUI) used for this transaction.
Data type: Integer Example:
  • 1000
  • 2000
Business Context:
  • Essential for transaction fee calculation and economic analysis.
  • Critical for understanding network demand and pricing dynamics.
  • Enables fee market analysis and cost optimization. | | GAS_BUDGET | NUMBER | The maximum gas the sender was willing to pay for this transaction.
Data type: Integer Example:
  • 10000000
  • 50000000
Business Context:
  • Essential for understanding user gas expectations and willingness to pay.
  • Critical for analyzing gas optimization and transaction planning.
  • Enables comparison of budgeted vs. actual gas usage. | | GAS_PAYMENT_OBJECT_IDS | ARRAY | Array of object IDs used to pay for the transaction’s gas fees.
Data type: Array Example:
  • [“0x1234…”, “0x5678…”]
Business Context:
  • Essential for tracking gas payment mechanisms and coin usage.
  • Critical for understanding transaction funding patterns.
  • Enables gas payment analysis and optimization. | | STORAGE_COST | NUMBER | The cost incurred for storing new objects created by this transaction.
Data type: Integer Example:
  • 100000
  • 500000
Business Context:
  • Essential for understanding storage economics and on-chain data costs.
  • Critical for analyzing state bloat and storage pricing.
  • Enables storage cost optimization and budgeting. | | STORAGE_REBATE | NUMBER | The storage rebate refunded when objects are deleted by this transaction.
Data type: Integer Example:
  • 50000
  • 200000
Business Context:
  • Essential for understanding storage incentives and cleanup economics.
  • Critical for analyzing net storage costs and state management.
  • Enables storage efficiency analysis and optimization. | | COMPUTATION_COST | NUMBER | The computational cost for executing this transaction’s logic.
Data type: Integer Example:
  • 500000
  • 2000000
Business Context:
  • Essential for understanding execution costs and computational pricing.
  • Critical for analyzing transaction complexity and optimization opportunities.
  • Enables performance analysis and cost modeling. | | NON_REFUNDABLE_STORAGE_FEE | NUMBER | The portion of storage fees that is non-refundable.
Data type: Integer Example:
  • 10000
  • 50000
Business Context:
  • Essential for understanding total storage economics and permanent costs.
  • Critical for accurate fee calculation and cost modeling.
  • Enables long-term storage cost analysis. | | EFFECTS_STATUS | TEXT | The execution status of the transaction, providing detailed success or failure information.
Data type: String Example:
  • Success
  • Failure
Business Context:
  • Essential for transaction success rate analysis and failure investigation.
  • Critical for debugging transaction issues and understanding failure patterns.
  • Enables user experience analysis and error monitoring. | | EFFECTS_STATUS_ERROR | TEXT | Detailed error message if the transaction failed.
Data type: String Example:
  • Insufficient balance
  • Invalid object version
Business Context:
  • Critical for debugging failed transactions and understanding failure causes.
  • Essential for error pattern analysis and user support.
  • Enables identification of common failure scenarios. | | DEPENDENCIES | ARRAY | Array of transaction digests that this transaction depends on.
Data type: Array Example:
  • [“8vKz…”, “3mPq…”]
Business Context:
  • Essential for understanding transaction ordering and dependencies.
  • Critical for parallel execution analysis and optimization.
  • Enables transaction graph analysis and dependency tracking. | | FACT_TRANSACTION_BLOCKS_ID | TEXT | The unique primary key identifier for each row in the table, ensuring data integrity and uniqueness.
Data type: String Example:
  • 0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef
Business Context:
  • Essential for data integrity and unique row identification.
  • Critical for join operations and data relationship management.
  • Enables precise data retrieval and referential integrity maintenance. | | INSERTED_TIMESTAMP | TIMESTAMP_NTZ | The UTC timestamp when the row was inserted into the table.
Data type: Timestamp Example:
  • 2024-01-15 14:30:25.123456
Business Context:
  • Essential for data lineage tracking and processing monitoring.
  • Critical for understanding data freshness and ingestion delays.
  • Enables data quality analysis and pipeline performance monitoring. | | MODIFIED_TIMESTAMP | TIMESTAMP_NTZ | The UTC timestamp when the row was last modified.
Data type: Timestamp Example:
  • 2024-01-15 14:30:25.123456
Business Context:
  • Essential for data freshness analysis and update tracking.
  • Critical for understanding data modification patterns.
  • Enables data quality monitoring and change detection. |