Blockchain Transaction Fees (“Gas”) on FTX
This post describes and explains how FTX handles transaction fees charged by blockchains. To summarize, FTX absorbs and subsidizes fees charged by efficient, environmentally friendly blockchains. FTX absorbs almost all fees charged by other blockchains. However, FTX reserves the right to pass-through some or all of high per-transaction fees charged on some transfers on less efficient blockchains.
Exchanges like FTX must integrate with a variety of different blockchains so that customers can transfer cryptocurrencies in and out of the platform. Although each of these blockchains (Bitcoin, Ethereum, and Solana, just to name a few) have unique characteristics, they all share one common feature: all users of a given network must pay transaction fees to incentivize network participants to do the “work” (i.e., mining) required to add that transaction to the blockchain’s distributed ledger. These fees are known as “gas” on the Ethereum blockchain, and are colloquially referred to as such in other contexts.
So how does FTX deal with blockchain transaction fees (which, as a fact, must be paid by someone)? When are such fees necessary to interact with FTX? What does FTX ultimately charge the customer, and why?
First, some background:
The “Deposit, Trade, Withdraw” Life Cycle
Cryptocurrency exchanges perform three primary functions necessary to facilitate customer transactions:
- Accepting deposits of crypto and fiat currencies
- Matching buy and sell orders (exchanging one currency for another)
- Processing withdrawals of crypto and fiat currencies
Here’s an example of what this life cycle might look like for a user: Alice sends 1 Bitcoin to her FTX wallet. FTX, which listens to all transactions happening on the Bitcoin blockchain, recognizes her deposit and credits her 1 Bitcoin in her FTX account (1). Later on, Alice decides to exchange her Bitcoin for Ether. She sends an order to buy 12 Ether for a price of 1 Bitcoin, and FTX matches her buy order with a seller and a trade occurs (2). Finally, Alice wants to withdraw her Ether from the exchange, and instructs FTX to withdraw her 12 Ether to her private wallet on the Ethereum blockchain (3).
For step 1, Alice had to pay a fee to the Bitcoin blockchain so that her deposit to FTX could be processed (she sent 1 Bitcoin from her BTC wallet to her wallet at FTX, and a small portion of that was deducted from the total transfer amount to pay the fee; the BTC network of miners only “confirm” or “do” this transfer if paid a transaction fee). Step 2 requires no blockchain fees, because trades on FTX occur entirely off-chain (one of the benefits of a “centralized” exchange such as FTX). Step 3 however, will require FTX to send a transfer request to the Ethereum blockchain, and therefore FTX will be required to pay gas fees on Alice’s behalf.
The Size of Blockchain Fees
The actual amount that a blockchain requires to send a transaction differs widely based on the underlying structure of that blockchain. Platforms like Bitcoin and Ethereum are known as “Proof of Work” blockchains, where the “work” required to add that transaction to the blockchain uses a large amount of computing time and energy. On such platforms, average transaction fees are quite high: around $2 per transaction for Bitcoin, and around $40 per transaction on Ethereum! (again, even these figures can vary widely based on network demand, etc.)
There are other blockchains that use much more efficient means of validating transactions. Solana, Cardano, and Polkadot use variations of an algorithm known as “Proof of Stake.” On Solana, for example, the average transaction fee is $0.00025.
FTX Withdrawal Fees
In practice, FTX does not charge fees for withdrawals on Proof-of-Stake blockchains, and it subsidizes about half of the blockchain fees for Proof-of-work blockchains (requiring the user to pay the other half). However, FTX reserves the ability to charge withdrawal fees, on small transactions especially (and particularly where there is a perception that a series of small withdrawals or other transactions are done in an abusive or otherwise unnecessary manner).
There are a few important considerations behind this approach:
Proof-of-work networks require substantially larger energy consumption than proof-of-stake networks. We aim to incentivize our customers to utilize blockchain technology with the lowest energy usage and therefore the smallest impact on the environment. A single Solana transaction requires about the same amount of energy as two Google searches. Empirically (based on our analysis of our customers' actual activity), more than 80% of the blockchain transactions originating from FTX occur on proof-of-stake blockchains.
Public Blockchain Usage
Blockchains are open-access public goods. It is therefore up to the users of these networks, especially large users such as exchanges, to encourage fair usage.
Imagine someone has $100 worth of Bitcoin they want to withdraw from FTX to their private Bitcoin wallet. They could instruct a single transaction for the full amount. They could also try and send 10,000 transactions for $0.01 worth of Bitcoin. FTX reserves the right to charge for small transactions to incentivize the former and disincentivize the latter, so that we are putting as little pressure on network bandwidth as possible, mitigating unnecessary and redundant costs, and ultimately mitigating unnecessary and redundant energy usage.
FTX wants to encourage users to bring their assets to our exchange for trading, because we believe we have the best approach to customer safety, technological robustness, and regulatory compliance. This is part of why we wish to subsidize blockchain transaction fees. However, with high-fee networks such as Ethereum, if we didn’t pass some cost onto the user, then a customer could abuse the system by requesting lots of small transactions, which could become a prohibitive cost for FTX to do business (though a lesser concern than the environmental impact and network congestion effects of such behavior). Similarly, FTX does not charge fees to users for costs related to wire-transfer activity for transferring fiat onto or off of our platforms, which also can be quite costly. But FTX reserves the right to assess fees for wire-transfer activity if the amount of such activity becomes abusive, or to otherwise encourage users to employ more efficient methods for transferring their fiat. In practice, FTX only rarely passes along wire-transfer fees to our users.
Finally, with advances in blockchain technology and interoperability, many cryptocurrency tokens can be transferred on multiple different blockchains. For example, on FTX you can withdraw Tether to an Ethereum wallet (where Tether originated), but you can also withdraw Tether to a Solana wallet. The latter is free on FTX, which we want to strongly incentivize our users to take advantage of given all the above considerations.