Rails

About this explorer

The Rails Balancer V3 explorer shows the Balancer V3 pools a wallet holds a share of on Ethereum. For each one it shows the wallet's part of the pool's tokens and the pool over the last 30 days.

How it works

  • A pool keeps its tokens in the Vault. A provider adds tokens and receives BPT; removing liquidity hands the BPT back for a part of each token.
  • Each swap pays a fee, part of which stays in the pool, and some pools hold tokens that earn yield. Both raise what each share is worth in the pool's tokens.
  • Swaps change how much of each token the pool holds, so a liquidity provider's part of each token moves while their share of the pool stays the same.
  • Every figure is in the pool's own tokens. Balancer runs no USD feed, and Rails states no dollar figure here.
  • Rails does not forecast, rate or recommend.

How Rails reads it

  • Vault 0xbA13…9bA9: a wallet's BPT in a pool and the BPT total supply, the pool's tokens and its balance of each, its BPT rate, its swap fee and whether it is paused or in recovery; and from its events, every transfer of BPT and the liquidity each wallet added or removed.
  • Each pool: its name and symbol.
  • Each gauge: the pool it stakes and a wallet's staked BPT.
  • Each token: its symbol and decimals.

Rails keeps an index of the Vault's events on Ethereum from its first block: every transfer of BPT, with each mint and burn, and every add and remove of liquidity. The figures are read live: Rails's server reads the Vault and the gauges at the block current when you open a page, and the Vault at a block 30 days back. A past block's answers are stored once that block is final, so a later visit reads only the newest block again. To find a wallet's pools, Rails looks up the transfers naming that wallet in the index, reads the Vault's logs from the index's last block to the current one, then reads each pool's share balance and gauge stake now.

A wallet that stakes its BPT in a gauge sends it to the gauge, so the Vault counts it as the gauge's. Rails reads the gauges the index shows a wallet sending BPT to, and counts a stake where the gauge's pool matches.

Glossary

Vault
: The Vault is the one contract that holds every Balancer V3 pool's tokens and keeps the count of each pool's shares, on every chain at the same address. Docs: The Vault
Pool
: A pool is a set of two to eight tokens that traders swap between, priced by the pool's own formula. Its tokens sit in the Vault. Docs: Balancer V3 documentation
BPT
: BPT, the Balancer Pool Token, is a share of a pool: a claim on the pool's tokens in proportion to the BPT total supply. Adding liquidity mints BPT; removing it burns them. Docs: Balancer V3 documentation
Yield-bearing token
: A yield-bearing token earns yield, so the amount of its underlying asset one token is worth grows. A pool counts it at that rate, which a rate provider contract reports. Docs: Rate providers
Gauge
: A gauge is a staking contract beside a pool. BPT staked in it is held by the gauge. Balancer's documentation says BAL emissions are halted and the gauge contracts are no longer used for them. Docs: Balancer V3 documentation
Recovery mode
: Recovery mode is a pool state that lets every liquidity provider withdraw their tokens in proportion, without the pool's usual checks, if something in the pool fails. Docs: Balancer V3 documentation

A wallet's pools

Enter a wallet address or ENS name on the front door to see the Balancer V3 pools that wallet holds a share of on Ethereum.

  • Each row names the pool, the wallet's share of it and the pool's tokens, and opens the share's page.
  • BPT the wallet staked in a pool's gauge show under the pool's row, with the gauge's address.
  • The front door counts every BPT holding on Ethereum: one for each address and pool, wallets and contracts both, since gauges and routers hold BPT too.

BPT page

The BPT page shows the wallet's share of the pool, its part of each token, any BPT staked in the pool's gauge, how the BPT rate moved over the last 30 days, and when the wallet first added. Under it, a table sets the wallet and the pool now beside 30 days back.

Press a figure's label to read what it means. The (i) under a section says what its figures mean for the wallet. A section's ⋮ menu traces each figure to the chain.

Balancer V2 pools, gauge rewards and veBAL aren't covered here.See what Rails covers on each Ethereum explorer

Official documentation: Balancer V3 documentation