Fees in the System
Liquidity Provider Fees
We view using Across as being similar to lending protocols such as AAVE or Compound. When a user bridges a particular token from one chain to another, the fast bridge isn't "moving tokens from one chain to another" but, rather, it is a relayer or the protocol itself providing tokens on the destination chain in return for tokens on the origin chain. We choose to use a similar pricing model for our liquidity provider fees because of this parallel.
In summary, liquidity provider fees are charged on each transaction based on where the relayer decides to take repayment. If a relayer elects to take repayment on the origin chain, where the deposit occurred, then liquidity provider funds are not needed to repay the relayer because the repayment can be taken directly from the deposited funds. Therefore, liquidity provider fees in this case will be zero. On the other hand, a non-zero liquidity provider fee will be charged for any transaction based on the pricing model for the specific chain that the relayer elects to take repayment on. The following section outlines the parameters used to construct this pricing model; the parameters are different for each repayment chain based on how easy it is transfer funds out of that chain.
Utilization based pricing
We base our pricing model on the one described in AAVE's documentation. Let,
denote the size of a particular transaction someone is seeking to bridge
denote the utilization of the liquidity providers' capital prior to the transaction, i.e. the amount of the liquidity providers' capital that is in use prior to the current transaction
denote the utilization of the liquidity providers' capital after to the transaction, i.e. the amount of the liquidity providers' capital that would be in use if the user chose to execute their transaction
denote the "kink utilization" where the slope on the interest rate changes
denote the parameters governing the interest rate model slopes
is the interest rate that would be charged at 0% utilization
is the interest rate that would be charged at utilization
is the interest rate that would be charged at 100% utilization
The (annualized) interest rate model is then defined by
We calculate the (annualized) interest rate for a particular loan by aggregating the marginal increases of utilization by integrating over this function
The actual fee that is charged will be based on making a loan at this rate for a 1 week time-span. The rate that is charged can be computed from:
and the fee would be
We chose to charge prices this way to ensure that users are paying a "fair" price for the amount of utilization that their bridge transaction incurs.
The parameters above are configured differently for each chain.
Relayer Fees
Relayer fees play a similar role in the Across ecosystem as gas fees play in the Ethereum ecosystem. Relayer fees are a fee that the user sets to incentivize relayers to relay your bridge transaction.
Relaying a transaction has three costs for relayers:
Gas fees: The relayer pays gas to perform the relay and to claim their repayment.
Capital opportunity costs: The fact that the relayer is using their capital to perform a relay means that they are not using it for other yield opportunities.
Capital at risk: A relayer takes on certain risks by relaying funds. If they make a mistake when relaying that could jeopardize their repayment of the capital they invested.
Both Liquidity Provider fees and Relayer fees are implied from the spread between inputAmount
and outputAmount
in a depositV3
transaction. You can intuitively think of liquidity provider fees as being taken out of the full relayer fee. Therefore, relayers are expected to factor in the expected liquidity provider fee when quoting fees to potential depositors.
Last updated