<span id="fee-amm-overview" />

# Fee AMM overview: converting stablecoin fees

The Fee AMM (Automated Market Maker) is a dedicated system for converting transaction fees between different stablecoins. It enables users to pay fees in any supported stablecoin while allowing validators to receive fees in their preferred token.

:::info
**Fee AMM vs. Exchange** — these are two different systems. The Fee AMM is protocol-driven: it converts transaction-fee payments into validators' preferred tokens at a fixed price, and only the protocol (and arbitrageurs rebalancing it) swaps against it — it is not a trading venue. For user-facing stablecoin trading (swaps, orders, prices, orderbook), use the [Exchange](https://tempo.xyz/developers/docs/protocol/exchange). See [Fee AMM vs. Exchange](#fee-amm-vs-exchange) below.
:::

## How the Fee AMM converts stablecoin fees

When a user pays fees in a stablecoin that differs from the validator's preference, the Fee AMM automatically converts the payment:

* **User pays**: 1.0 of their chosen stablecoin
* **Validator receives**: 0.9970 of their preferred stablecoin
* **Liquidity providers earn**: 0.003 (0.3%) as fees

This conversion happens automatically at the end of each block through batched swaps, preventing MEV attacks like sandwiching.

## Fee AMM vs. Exchange

Tempo has two stablecoin-swapping systems that are easy to confuse. They serve different purposes:

| | [Exchange (DEX)](https://tempo.xyz/developers/docs/protocol/exchange) | Fee AMM |
|---|---|---|
| **Purpose** | User-facing stablecoin trading | Converting transaction fees into validators' preferred tokens |
| **Who initiates swaps** | Users and apps | The protocol, automatically (plus arbitrageurs rebalancing) |
| **Pricing** | Market-driven orderbook (price-time priority) | Fixed conversion price |
| **Liquidity** | Limit and flip orders resting in the orderbook | LP deposits into per-pair fee pools |
| **Contract** | Stablecoin DEX precompile (`0xdec0…0000`) | `FeeManager` precompile (`0xfeec…0000`) |
| **Use it for** | Swaps, prices, orderbook depth, fills | Letting users pay fees in any stablecoin |

If you want to **trade** stablecoins or read market data, use the [Exchange](https://tempo.xyz/developers/docs/protocol/exchange). If you want to **enable fee payments** in your stablecoin or provide fee-conversion liquidity, you're in the right place — continue below.

## Learn more about fee conversion

* [Use Your Stablecoin for Fees](https://tempo.xyz/developers/docs/guide/issuance/use-for-fees) — Enable users to pay fees using your stablecoin
* [Fee AMM Specification](https://tempo.xyz/developers/docs/protocol/fees/spec-fee-amm) — Complete Fee AMM protocol specification
* [Managing Fee Liquidity](https://tempo.xyz/developers/docs/guide/stablecoin-dex/managing-fee-liquidity) — Provide liquidity to enable fee token conversions
