Fees
THORChain charges a fixed Outbound Fee and a dynamic Liquidity Fee.

# Fees

Conceptually, fees are both value-capture, access-control and resource-subsidisation mechanisms.

### Value Capture

The fees need to capture value from those accessing the resource, and pay it to those providing the resource, and in this case the resource is liquidity. However liquidity is relative to the size of the transaction that demands it over the depth of the market that will service it. A small transaction in a deep pool has less demand for liquidity than a large transaction in a small pool.

### Access-control

The other reason for fees is access-control; a way to throttle demand for a fixed resource and let natural market forces take over. If there is too much demand for a resource, fees must rise commensurately. The resource in this case is liquidity, not market depth, thus fees must be proportional to liquidity.
Resource Subsidisation
Every swap on THORChain consumes resources (Disk, CPU, Network and Memory resources from validators). These costs are fixed in nature. In addition, every outgoing transaction demands resources on connected chains, such as paying the Bitcoin mining fee or Ethereum gas cost. As such, THORChain charges a single flat fee on every transaction that pays for internal and external resources.

### Other Benefits

In addition to the above, fees also create the following benefits:
1. 1.
Avoid dust attacks
2. 2.
Store up income after the initial Emission Schedule reduces
3. 3.
Give the user a stable fee, rather than a dynamic one which changes with the external network's fees

# Fee Process

THORChain maintains an awareness of the trailing gas price for each connected chain, saving both gas price as well as gas cost (inferring transaction weight). Nodes are instructed to pay for outgoing transactions using a gas price that is a multiple of the stored value.
The gas is consumed from each chain's base asset pool - the BTC pool pays for Bitcoin fees, the ETH pool for Ethereum fees etc.
The network then observes an outgoing transaction and records how much it cost in gas in the external asset. The final gas cost is then subsidised back into each pool by paying RUNE from the reserve.

# Outbound Fee

The user is charged an amount that is three times the stored gas cost for each chain. The Node can then pay a gas price that is 1 times the gas price, and the pool is subsidised a value that is twice what was observed. This means the pool earns a margin of 1x, and the Reserve earns a margin of 1x.
Example:
Chain
Typical
Outbound Fee
Network Fee (Paid by Pool)
Pool Gets
Reserve Earns
Bitcoin
$1$3
$1$2
$1 Ethereum$10
$30$10
$20$10
Binance Chain
$0.03$0.09
$0.03$0.06