τTaosisTaoScale

Learn·Markets

What the swap fee is, and which side pays it

A per-subnet rate the pool takes on every trade, charged on what you send in — which is why the buy and sell depth figures never quite match.

Published 2026-09-17 · updated 2026-09-24

Set per subnet, read per subnet

Every trade through a subnet's pool pays the pool a fee at a rate stored on chain for that subnet, Swap.FeeRate. It is a subnet parameter, not a network constant — it reads the same everywhere today, but nothing requires that, so Taosis reads it per subnet rather than assuming one figure.

Root (SN0) has no pool — it stakes one-to-one with τ — and no swap fee; every pool-shaped figure is blank for root.

Charged on what goes in

The fee comes off the input before it reaches the curve: off your τ when buying, off your α when selling, and the output is computed from the rest. The effective input is amount × (1 − swap fee).

That differs from a fee taken off what you receive; on a constant-product curve they are different numbers, and the difference shows in the depth columns.

Why depth is asymmetric

Lifting the price by a fraction δ needs the τ reserve to grow by √(1+δ); because the fee is taken first, a buyer must send that divided by (1 − swap fee). Up-depth = τ reserve × (√(1+δ) − 1) ÷ (1 − swap fee). Down-depth = τ reserve × (1 − √(1−δ)), with no division: that τ leaves the pool, and the fee was charged on the α going in.

So the down figure is always a little larger than the up figure at the same distance — fee treatment plus the curve's convexity, not an error. Without the subnet's own fee a depth is a different number, so Taosis then publishes none.

Where it appears, and what it is not

The screener's Liquidity group has a Swap fee column, and each subnet page prints it beside the pool figures.

It is not the network fee — the chain's charge for including a transaction, paid in τ from the free balance whatever the trade's size. Pool fee and network fee are the only two charges on a trade; Taosis adds none, because it never sends a transaction.