Skip to main content
The stablecoins_solana.activity_enriched table classifies each stablecoin transfer on Solana into an activity category.

Why these enriched tables matter

Stablecoin analysis comes down to two fundamental questions:
  1. Where are stablecoins right now? (balances)
  2. How did they get there? (activity)
This activity-enriched table answers the second question by tracing the economic path of transfers across categories such as DEX trading, lending, borrowing, bridging, internal transfers, and payment-like flows.

What this dataset is designed to do

  • Explain how stablecoin balances move through the ecosystem.
  • Attribute transfer activity with transparent, reproducible logic.
  • Provide a defensible foundation for flow analysis.
The goal is to turn stablecoin flow data from noise into structured economic insight.

Table schema

Value possibilities

The category and activity columns are intentionally standardized so downstream models, dashboards, and monitoring can rely on deterministic value vocabularies. This mapping enables consistent flow segmentation, KPI rollups, and alerting logic without custom per-dashboard label handling. As protocol coverage expands, new values may be added in backward-compatible fashion.

Methodology

Classification is done at the transfer level, not the transaction level.
  1. Start from curated stablecoin transfer rows in stablecoins_solana.transfers.
  2. Evaluate each transfer against category-specific detection logic using Solana-native context (transaction signature, instruction indexes, token mint, transfer amount, and known program/address labels).
  3. Apply deterministic priority rules when multiple category matches exist for a transfer.
  4. Keep full transfer coverage by assigning unmatched rows to unidentified (or unidentified_bot_activity for high-volume automated program patterns).

Important interpretation details

  • The same transaction can produce different categories across its individual transfers.
  • Instruction index context is important on Solana for distinguishing activity legs inside one transaction.
  • project_address, project_name, and project_version are populated only when a confident protocol/entity match exists.

Sample query

Notes

  • One transfer maps to one output row (highest-priority match wins).
  • For performance, filter by blockchain and block_month.