Skip to main content
Schema: aptos.nft Table: fact_nft_sales Type: View

Description

This table records all raw on-chain NFT sale events on Aptos, capturing sales across supported marketplaces and protocols. It includes seller, buyer, NFT identifiers, project/platform names, and raw price/fee data, without enrichment or price attribution.

Key Use Cases

  • Analyzing NFT sales activity and marketplace trends
  • Auditing raw NFT sale events for compliance or research
  • Building dashboards for NFT sales volume, user activity, and project performance
  • Supporting downstream enrichment models for NFT analytics
  • Monitoring NFT project adoption and sales trends

Important Relationships

  • Serves as the source for enriched NFT sales data in nft.ez_nft_sales
  • Can be joined with token metadata from core.dim_tokens for symbol/decimals
  • Can be linked to price data in price.ez_prices_hourly for USD values
  • Related to NFT mint data in nft.fact_nft_mints for lifecycle analysis

Commonly-used Fields

  • tx_hash, event_index: Unique identifiers for each sale event
  • nft_address, tokenid: NFT contract and token identifiers
  • seller_address, buyer_address: Addresses involved in the sale
  • block_timestamp: Time of the sale event
  • project_name, platform_name: Names of the NFT project and marketplace
  • total_price_raw, platform_fee_raw, creator_fee_raw: Raw, non-decimal-adjusted price and fee amounts

Columns

Column NameData TypeDescription
BLOCK_TIMESTAMPTIMESTAMP_NTZThe block timestamp at which the NFT event occurred.
BLOCK_NUMBERNUMBERThe block number at which the NFT event occurred.
VERSIONNUMBER
TX_HASHTEXTThe transaction hash for the NFT event. This is not necessarily unique in this table as a transaction may contain multiple NFT events.
EVENT_INDEXNUMBERThe event number within a transaction
EVENT_TYPETEXTThe type of NFT event in this transaction, either sale, bid_won or redeem.
BUYER_ADDRESSTEXTThe address of the buyer of the NFT in the transaction.
Data type: String Example:
  • 0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef
Business Context:
  • Used for tracking NFT buyers and purchase activity.
  • Enables user-level analytics, purchase reporting, and marketplace analysis.
  • Supports linking to address labels and user profiles. | | SELLER_ADDRESS | TEXT | | | NFT_ADDRESS | TEXT | The contract address of the NFT. | | TOKEN_VERSION | TEXT | The version of the NFT token. | | PLATFORM_ADDRESS | TEXT | The contract address of the NFT marketplace or platform where the event occurred.
Data type: String Example:
  • 0x1::marketplace::Marketplace
  • 0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890
Business Context:
  • Used for identifying NFT marketplaces and platforms.
  • Enables platform-level analytics, filtering, and reporting.
  • Supports joining with metadata and project information. | | PROJECT_NAME | TEXT | The name of the NFT project. This field, along with metadata, will be filled in over time. | | TOKENID | TEXT | The token ID for this NFT contract. | | PLATFORM_NAME | TEXT | The name of the NFT marketplace or platform where the event occurred.
Data type: String Example:
  • bluemove
  • topaz
  • souffl3
Business Context:
  • Used for grouping and filtering NFT events by platform.
  • Enables platform-level analytics, trend analysis, and reporting.
  • Supports dashboards and user-facing NFT discovery tools. | | PLATFORM_EXCHANGE_VERSION | TEXT | The version or identifier of the NFT marketplace or platform where the event occurred.
Data type: String Example:
  • v1
  • v2
  • 2023-01-01
Business Context:
  • Used for tracking platform upgrades, changes, and event context.
  • Enables version-level analytics, trend analysis, and reporting.
  • Supports dashboards and user-facing NFT discovery tools. | | TOTAL_PRICE_RAW | NUMBER | The non-decimal adjusted amount of the NFT event in the currency in which the transaction occurred.
Data type: Integer Example:
  • 100000000 (for 1 NFT at 1 unit with 8 decimals)
  • 500000000000000000 (for 0.5 NFT at 18 decimals)
Business Context:
  • Used for reconstructing the exact on-chain value of NFT sales or mints.
  • Enables technical audits, protocol analytics, and downstream decimal adjustment.
  • Supports accurate calculation of NFT volumes and value flows. | | PLATFORM_FEE_RAW | NUMBER | The non-decimal adjusted amount of platform fees paid for this NFT event in the transaction’s currency.
Data type: Integer Example:
  • 100000000 (for 1 unit with 8 decimals)
  • 500000000000000000 (for 0.5 unit at 18 decimals)
Business Context:
  • Used for reconstructing the exact on-chain value of platform fees.
  • Enables technical audits, protocol analytics, and downstream decimal adjustment.
  • Supports accurate calculation of platform fee volumes and value flows. | | CREATOR_FEE_RAW | NUMBER | The non-decimal adjusted amount of creator royalty fees paid for this NFT event in the transaction’s currency.
Data type: Integer Example:
  • 100000000 (for 1 unit with 8 decimals)
  • 500000000000000000 (for 0.5 unit at 18 decimals)
Business Context:
  • Used for reconstructing the exact on-chain value of creator fees.
  • Enables technical audits, protocol analytics, and downstream decimal adjustment.
  • Supports accurate calculation of creator fee volumes and value flows. | | TOTAL_FEES_RAW | NUMBER | The non-decimal adjusted total amount of fees paid relating to the NFT purchase in the transaction currency. This includes royalty payments to creators and platform fees. Does not include gas fee.
Data type: Integer Example:
  • 100000000 (for 1 unit with 8 decimals)
  • 500000000000000000 (for 0.5 unit at 18 decimals)
Business Context:
  • Used for reconstructing the exact on-chain value of NFT fees.
  • Enables technical audits, protocol analytics, and downstream decimal adjustment.
  • Supports accurate calculation of NFT fee volumes and value flows. | | AGGREGATOR_NAME | TEXT | The name of the NFT aggregator or routing service involved in the event, if applicable.
Data type: String Example:
  • Gem
  • Genie
  • None
Business Context:
  • Used for grouping and filtering NFT events by aggregator.
  • Enables aggregator-level analytics, trend analysis, and reporting.
  • Supports dashboards and user-facing NFT discovery tools. | | CURRENCY_ADDRESS | TEXT | The contract address of the currency used for the NFT event (mint or sale).
Data type: String Example:
  • 0x1::aptos_coin::AptosCoin
  • 0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890
Business Context:
  • Used for identifying the payment currency for NFT events.
  • Enables currency-level analytics, filtering, and reporting.
  • Supports joining with token metadata and price information. | | FACT_NFT_SALES_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, representing when the data was first recorded.
Data type: Timestamp Example:
  • 2024-01-15 14:30:25.123456
Business Context:
  • Essential for data lineage tracking and insertion timing analysis.
  • Critical for understanding data freshness and processing delays.
  • Enables data quality analysis and processing performance monitoring. | | MODIFIED_TIMESTAMP | TIMESTAMP_NTZ | The UTC timestamp when the row was last modified, representing when the data was most recently updated.
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 and change frequency.
  • Enables data quality monitoring and update performance analysis. |