Uniswap's subgraph architecture relies on entities to define the schema of queryable data. These entities store critical information through structured fields, enabling efficient data retrieval and analysis. This guide explores each entity type, its fields, and their significance within the Uniswap ecosystem.
Core Entities
Uniswap Factory
The central entity tracking aggregate metrics across all Uniswap pairs:
| Field Name | Value Type | Description |
|---|---|---|
id | ID | Factory contract address |
pairCount | Int | Total pairs created |
totalVolumeUSD | BigDecimal | Lifetime USD volume (derived) |
totalLiquidityETH | BigDecimal | Total liquidity in ETH |
👉 Discover how Uniswap's factory optimizes DeFi liquidity
Token
Aggregates data for individual tokens across all pairs:
Key Fields:
symbol: Token symbol (e.g., "ETH")derivedETH: ETH value per tokentotalLiquidity: Total token liquidity provided
Pair
Mirrors pair contracts with aggregated usage data:
| Field Name | Description |
|---|---|
reserveUSD | Total liquidity in USD |
volumeUSD | Swapped USD volume (min. liquidity threshold) |
txCount | Lifetime transactions |
User
Tracks liquidity providers and their positions:
liquidityPositions: Array of open LP positionsusdSwapped: Total USD value swapped by the user
Transactional Entities
Mint / Burn / Swap
Capture event-specific data:
- Mint: Liquidity additions (
amount0,amount1,liquidity) - Swap: Token exchanges (
amount0In,amount1Out,amountUSD)
👉 Explore advanced Uniswap trading strategies
Historical Data Entities
UniswapDayData
Daily aggregated metrics:
dailyVolumeUSD: 24-hour trading volumemostLiquidTokens: Top tokens by liquidity
TokenDayData
Token-specific daily stats:
priceUSD: Derived USD pricedailyTxns: Transaction count
FAQ Section
Q: How does Uniswap calculate USD values?
A: USD amounts are derived using ETH prices from stablecoin pairs (via the Bundle entity).
Q: What’s the difference between volumeUSD and untrackedVolumeUSD?
A: volumeUSD requires minimum liquidity thresholds, while untrackedVolumeUSD includes all swaps.
Q: How are historical entities useful?
A: They enable efficient queries for daily metrics (e.g., token prices, volumes) without costly time-travel checks.
Key Takeaways
- Entities structure Uniswap’s on-chain data for querying.
- Historical entities (
*DayData) optimize daily metric retrieval. - ETH/USD pricing relies on the
Bundleentity’s weighted averages.
For interactive exploration, visit the Graph Explorer.