Read the liquidity pool contract (BathToken.sol) on GitHub.

Also, check out the pool contracts docs and the bathToken API docs

What are liquidity pools?

Rubicon liquidity pools have certain risks. Exercise caution and only deposit what you can afford to lose.

Rubicon liquidity pools are a set of smart contracts which enable liquidity providers (LPs) to deposit ERC-20 tokens into a pool. Tokens in the pool are used by active market makers (strategists) to provide liquidity on the Rubicon order books. Yield from market-making goes to the LPs, while strategists earn a management fee.

Liquidity providers (LPs) receive bathTokens when they deposit crypto assets into a pool. They represent their proportional share of the underlying pool assets.
(Ex. LP deposits ETH, receives bathETH)

From the beginning, we designed these pools with security parameters that will enable anyone to manage pool liquidity. While the system is still under development, our team acts as managers of pool liquidity. You can learn more on the Current Pools Strategy page. The next version of the Rubicon liquidity pools is in the research and development phase. We will share updates on our blog!



Many protocols/DEXs choose between either passive or active liquidity. Rubicon outlines roles and incentives for both passive liquidity providers and active liquidity managers.

On Rubicon, there is only one pool for each token. For example, the USDC pool can be used on ETH-USDC, OP-USDC, and any other USDC order books. This is more capital efficient than systems where liquidity is locked into a single trading pair.