Skip to main content

Uniswap V3 Pool Table

Description

Registry of Uniswap V3 pools (pair + fee tier) with creation metadata and on-chain address.

Schema

FieldTypeDescription
idSTRINGDeterministic ID (MD5 of network_id, pool address)
dex_instance_idSTRINGFK → dex_instance.id (which implies the network).
token_0_contract_idSTRINGFK → token_contract.id (token0).
token_1_contract_idSTRINGFK → token_contract.id (token1).
pool_creation_datetimeTIMESTAMPDeployment time (UTC).
pool_creation_blockINTEGERDeployment block.
nameSTRINGHuman-readable pool label (e.g., WETH/USDC 0.05%).
addressSTRINGPool contract address.
fee_tierINTEGERFee tier in bps (100, 500, 3000, 10000).
ingested_atTIMESTAMPInsert time (UTC).

Example Queries

List all WETH/USDC pools by network and fee tier

SELECT n.name AS network, p.name, p.fee_tier, p.address
FROM `defi_prepared.uniswap_v3_pool` p
JOIN `defi_prepared.dex_instance` d ON p.dex_instance_id = d.id
JOIN `defi_prepared.network` n ON d.network_id = n.id
JOIN `defi_prepared.token_contract` t0 ON p.token_0_contract_id = t0.id
JOIN `defi_prepared.token_contract` t1 ON p.token_1_contract_id = t1.id
WHERE t0.symbol = 'WETH' AND t1.symbol = 'USDC'
ORDER BY network, fee_tier;

Pools created in the last 30 days

SELECT p.address, p.name, n.name AS network, p.pool_creation_datetime
FROM `defi_prepared.uniswap_v3_pool` p
JOIN `defi_prepared.dex_instance` d ON p.dex_instance_id = d.id
JOIN `defi_prepared.network` n ON d.network_id = n.id
WHERE p.pool_creation_datetime >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 30 DAY)
ORDER BY p.pool_creation_datetime DESC;