Skip to main content
One row per liquidation, with the collateral seized and the debt repaid on the same row. collateral_amount is the tokens seized and borrow_amount the debt cleared.

Columns

ColumnTypeDescription
block_timestampTIMESTAMPTime of the block containing the liquidation. Partition column.
block_numberINTEGERNumber of the block containing the liquidation.
transaction_hashSTRINGHash of the transaction that emitted the liquidation event.
log_indexINTEGERPosition of the liquidation event in the block.
unique_idINTEGERRow key: fingerprint of chain_id, block_number, transaction_hash, log_index.
event_typeSTRINGConstant liquidations; stacking key across the lending facts.
project_idSTRINGProtocol operating the market, such as aave.
app_idSTRINGDeployment of the protocol the market belongs to.
chain_idSTRINGChain the liquidation happened on.
lending_market_idSTRINGMarket holding the debt that was repaid; joins dimensions.lending_markets.
lending_market_contract_addressSTRINGContract the market lives on; not a key.
lending_position_idSTRINGThe liquidated position: one borrower inside one market.
collateral_lending_market_reserve_idSTRINGReserve the seized collateral sat in; joins dimensions.lending_market_reserves.
collateral_lending_market_reserve_position_idSTRINGThe borrower’s holding in that collateral reserve.
collateral_receipt_token_addressSTRINGReceipt token whose balance moved on the collateral side; null where positions are not tokenised.
borrow_lending_market_reserve_idSTRINGReserve the repaid debt sat in; joins dimensions.lending_market_reserves.
borrow_lending_market_reserve_position_idSTRINGThe borrower’s debt in that reserve.
borrow_receipt_token_addressSTRINGDebt token whose balance moved on the borrow side; null where debt is not tokenised.
liquidator_addressSTRINGAccount that repaid the debt and took the collateral.
borrower_addressSTRINGAccount that was liquidated; the position key across the lending facts.
collateral_token_idSTRINGCollateral token seized: {token_address}-{chain_id}.
collateral_token_addressSTRINGContract address of the collateral token.
collateral_token_symbolSTRINGSymbol of the collateral token.
collateral_token_decimalsINTEGERDecimals of the collateral token.
borrow_token_idSTRINGDebt token repaid: {token_address}-{chain_id}.
borrow_token_addressSTRINGContract address of the debt token.
borrow_token_symbolSTRINGSymbol of the debt token.
borrow_token_decimalsINTEGERDecimals of the debt token.
collateral_to_liquidator_amount_rawBIGNUMERICShare of the seized collateral paid to the liquidator, in the token’s stored unit, exact integer.
collateral_to_liquidator_amountBIGNUMERICcollateral_to_liquidator_amount_raw decimal-corrected into whole tokens.
collateral_to_treasury_amount_rawBIGNUMERICShare of the seized collateral kept by the protocol, in the token’s stored unit, exact integer.
collateral_to_treasury_amountBIGNUMERICcollateral_to_treasury_amount_raw decimal-corrected into whole tokens.
collateral_amount_rawBIGNUMERICCollateral seized in total, exact integer; the liquidator share and the treasury share add up to it.
collateral_amountBIGNUMERICcollateral_amount_raw decimal-corrected into whole tokens.
borrow_amount_rawBIGNUMERICDebt repaid in the token’s stored unit, exact integer.
borrow_amountBIGNUMERICborrow_amount_raw decimal-corrected into whole tokens.

Sample queries

This table is large and split by day. Bound block_timestamp and filter chain_id on every query, or you read the whole table and the whole table is billed to you.
Each row has two token legs: the collateral seized and the debt repaid. borrower_address is the position that was closed and liquidator_address the account that closed it.