ChainETL
Blockchain data pipelines for EVM chains
Extract blocks, transactions, logs, and token transfers from any EVM chain. Load into PostgreSQL for analytics or JSON Lines for local processing with jq, DuckDB, or pandas. Resumable syncs, reorg detection, and ERC-20/721 token parsing.
$ pip install chainetlSee it in action

Supported Chains
Features
Multi-Chain
Ethereum, Base, Polygon, Arbitrum. Adding a new EVM chain is a 3-line Python file.
Two Output Formats
PostgreSQL for analytics dashboards. JSON Lines for local processing with jq, DuckDB, or pandas.
Resumable Syncs
Automatic checkpointing. Stop and resume anytime. Never re-sync blocks you already have.
Reorg Detection
Catches chain reorganizations by comparing parent hashes. Logs warnings and overwrites stale data.
Token Transfer Parsing
ERC-20 and ERC-721 Transfer events parsed from transaction logs. Fungible and NFT transfers.
Type-Safe SDK
Pydantic models for Block, Transaction, Log, TokenTransfer. Full type hints, mypy strict.