Based on trading volume, users are categorized into regular and VIP levels. Regular users are classified by their OKB holdings, while VIP users are classified based on the asset amount and trading volume over the past 30 days. Different levels determine the trading fees for the next trading day.

When calculating the fee level, if the spot trading volume, the total volume of perpetual and expiry futures (USDT perpetual futures, USDT expiry futures, USDC perpetual futures, USDC expiry futures, crypto-margined perpetual futures, and crypto-margined expiry futures), option trading volume, spreads trading volume, and the asset amount, meet the conditions for different fee levels, the user will enjoy the highest level of fee benefits, i.e., the most favorable fee rate.
For example, if a user’s last 30-day spot trading volume is 10,000,000 USD (meeting VIP 2), the total trading volume for perpetual and expiry futures in the last 30 days is 200,000,000 USD (meeting VIP 3), the last 30-day options trading volume is 5,000,000 USD (meeting VIP 1), the last 30-day spreads trading volume is 150,000,000 USD (meeting VIP 2), and the asset amount is 5,000,000 USD (meeting VIP 4), then the user enjoys the VIP 4 fee level, and all trading across instruments can enjoy the VIP 4 fee benefits.

Regular users
Tier
Lvl 1
Assets (USD)
or
30-day trading volume (USD)
< 100,000/< 5,000,000
Maker fee
0.080%
Taker fee
0.100%
24h crypto withdrawal limit (USD)
10,000,000
VIP users
Tier
VIP 1
VIP 2
VIP 3
VIP 4
VIP 5
VIP 6
VIP 7
VIP 8
Assets (USD)
or
30-day trading volume (USD)
≥ 100,000/≥ 5,000,000
≥ 500,000/≥ 10,000,000
≥ 2,000,000/≥ 20,000,000
≥ 5,000,000/≥ 100,000,000
≥ 10,000,000/≥ 200,000,000
--/≥ 500,000,000
--/≥ 1,000,000,000
--/≥ 5,000,000,000
Maker fee
0.045%
0.040%
0.030%
0.020%
0.000%
-0.002%
-0.005%
-0.005%
Taker fee
0.050%
0.045%
0.040%
0.035%
0.030%
0.025%
0.020%
0.015%
24h crypto withdrawal limit (USD)
12,000,000
16,000,000
20,000,000
24,000,000
30,000,000
36,000,000
40,000,000
40,000,000

30-day trading volume (USD) is the total trading volume for the corresponding market

Trading fees rules
TypeDescription
Trading feesMin(Fee rate × Multiplier × Contract size × Number of contracts, 12.5% × Option premium × Multiplier × Contract size × Number of contracts)
Exercise feeMin(0.02% × Multiplier × Contract size × Number of contracts, Taker fee tier × Multiplier × Contract size × Number of contracts, 12.5% × Settlement value × Multiplier × Contract size × Number of contracts)
• Day options don’t have an exercise fee. Day options are options that don’t expire on Fridays.
• Only applicable to exercised options. Doesn’t apply to unexercised options.
Forced liquidation feeMin (User’s taker fee tier × Multiplier × Contract size × Number of contracts, 12.5% × mark price × Multiplier × Contract size × Number of contracts)
Liquidation penaltyMMR of the corresponding positions.
Options comboOptions combo trades on RFQ can enjoy up to 50% discount on fees!
For each underlying, trading fees are charged on legs from the side (buy or sell) with the higher notional.
Only legs that incur a trading fee are counted towards the 30-day trading volume of the corresponding instrument.
Trading fees examples
Assume multiplier is 0.01 for BTCUSD options, contract size is 1 BTC, option premium is 0.05 BTC.
Trader A (Maker fee: 0.02%; Taker fee: 0.03%) bought 100 contracts of call options (notional is 1 BTC):
If trader A is the taker when order is filled, the trading fee = Min(0.03% × 0.01 × 1 × 100, 12.5% × 0.05 × 0.01 × 1 × 100) = 0.0003 BTC
If trader A is the maker when order is filled, the trading fee = Min(0.02% × 0.01 × 1 × 100, 12.5% × 0.05 × 0.01 × 1 × 100) = 0.0002 BTC
Options combo examples
Combo tradesFees
Buy 3 BTC call, sell 2 BTC putFees are only charged on the buy 3 BTC call leg
Buy 3 BTC call, sell 2 ETH putFees charged on both options legs and total gross notional.
Buy 3 BTC call, sell 2 BTC put, buy 2 ETH call, sell 2 ETH putThe calculation method applies to the BTC structure and ETH structure separately. In this example, trading fee is charged on the buy 3 BTC leg and the buy 2 ETH leg.
Buy 3 BTC call, sell 2 BTC put, buy BTC Perp hedgeThe calculation method applies only to options. In this example, trading fee is charged on the buy 3 BTC leg and the buy BTC Perp hedge.
Main and sub-accounts fee tier
The tier of your main account is determined by 30-day trading volume and daily asset balance of all main and sub-accounts. Fee level of your main account will be applied to your sub-accounts at 04:00 pm UTC after sub-account creation.
30-day trading volume (USD)
Calculate your trading volume in BTC based on its current USD value. Daily, at 4:00 PM UTC, we convert your total trading volume to USD using the daily middle price of BTC/USD [Middle price of BTC/USD = (Opening price + Closing price) / 2]. We then determine your total spot trading volume over the past 30 days.
For example, if you have traded BTC, ETH, and MATIC in the last 30 days, we convert each transaction to its BTC equivalent at the time of the trade (this includes trades in USDT, ETH, and other pairs). This amount is then converted to USD based on the daily middle price. Daily, at 4:00 PM UTC, we update this calculation to reflect your trading volume over the past 30 days.
30-day trading volume (USD)
The total 30-day volume of all your spread trades is calculated in BTC according to BTC/USD price. Every 24 hours, we convert your total trading volume to USD according to the daily middle price, which is the average of open and close prices. We settle it at 4:00 PM UTC daily.
For example, you traded BTC and ETH spreads in the last 30 days. We’ll convert your trading volume to BTC-equivalent according to the BTC/USD conversion rate and then convert to USD according to the daily middle price. Then we’ll settle the volume at 4:00 PM UTC.
A spread trade’s volume is calculated as the sum of all the individual legs. Volume of all spread combinations are treated the same. For example, 1 USD’s worth of spot-perpetual spread trade is treated the same as 1 USD’s worth of futures-futures spread trade.
Total asset balance
We take a snapshot of all of your crypto assets at 4:00 PM UTC daily and convert the value to BTC, then to USD based on the daily middle price of BTC/USD [Middle price of BTC/USD = (Opening price + Closing price) / 2]. The higher value between the past 30-day average asset amount and the daily snapshot is used as the user’s asset amount. For example, if the user’s 30-day average asset amount is 1,000 USD and the snapshot at 16:00 UTC shows 500 USD, the user’s asset amount will be 1,000 USD.
Snapshot assets include trading, funding, and Grow accounts. Assets borrowed for margin trading or loan are excluded.
30-day trading volume (USD)
Calculate your trading volume in BTC based on its current USD value. Daily, at 4:00 PM UTC, we convert your total trading volume to USD using the daily middle price of BTC/USD [Middle price of BTC/USD = (Opening price + Closing price) / 2]. We then determine your total futures trading volume over the past 30 days.
For example, if you have traded BTC, ETH, and ETC crypto-margined futures in the last 30 days, we convert each transaction to its BTC equivalent at the time of the trade. This amount is then converted to USD based on the daily middle price. Daily, at 4:00 PM UTC, we update this calculation to reflect your trading volume over the past 30 days.
30-day trading volume (USD)
Calculate your trading volume in BTC based on its current USD value. Daily, at 4:00 PM UTC, we convert your total trading volume to USD using the daily middle price of BTC/USD [Middle price of BTC/USD = (Opening price + Closing price) / 2]. We then determine your total options trading volume over the past 30 days.
For example, if you have traded BTC and ETH options in the last 30 days, we convert volume of BTC and ETH to its BTC equivalent at the time of the trade. This amount is then converted to USD based on the daily middle price. Daily, at 4:00 PM UTC, we update this calculation to reflect your trading volume over the past 30 days.
Makers and takers
Maker order is the limit order which enters into the order book before it can be traded in market. For example, if the current BTC lowest ask price is 1,000 USDT and you create a maker order with a bid price 999 USDT, this order cannot be filled immediately. Then it will enter into the order book until someone fills it. After filled, you’re required to pay the maker fee and taker will pay the taker fee.
Trading fee rules
Calculation formula of trading fee: Trading fee of Spot/Margin = Fee rate × Amount of bought or sold crypto when order filled.
Charge rule of crypto: Fee = Fee rate × Amount of bought crypto when order was filled;
Take BTC/USDT spot as an example, assuming the current price of BTC is 20,000 USDT;
Trader A (Maker fee: 0.08%; Taker fee: 0.1%) bought 1 BTC at market price, and became a taker of this trade, so the Trading fee = 0.1% × 1 = 0.001 BTC, and A will receive 0.999 BTC after fee deducted;
Trader A sold 1 BTC at limit price, and bought 20,000 USDT. Trader A became a maker of this trade, so the Trading fee = 0.08% × 20,000 = 16 USDT, and A will receive 19,984 USDT after fee deducted.
Trading fee rebate rule: Fee = Fee rate × Amount of sold crypto when order was filled;
Take BTC/USDT spot as an example, assuming the current price of BTC is 20,000 USDT;
Trader A (Maker fee: -0.002%; Taker fee: 0.025%) sold 1 BTC at limit price, and became a maker of this trade, so the Trading fee rebated to A = 0.002% × 1 = 0.00002 BTC;
Trader A bought 1 BTC with a limit order, and received 20,000 USDT. Trader A became a maker of this trade, so the Trading fee rebated to A = 0.002% × 1 × 20,000 = 0.4 USDT;
Trading fee rules for spreads
Calculation of trading fee for each leg: same calculation method applies for each corresponding instrument, with a 50% discount applied for all users.

For example, Trader A is trading a BTC spot vs USDT-margined perpetual spread.
The spread trading fee is derived by taking the sum of:
1. Spot trading fee rate at 50%, so Trading fee = 50% × Spot fee rate × Amount of bought or sold crypto
2. USDT-margined perpetual fee rate at 50%, so Trading fee = 50% × Perpetual fee rate × Number of contracts × Multiplier × Contract size × Fill price.
Makers and takers
Maker order is the limit order entered into the order book before it can be traded in the market. For example, if the current BTC lowest ask price is 1,000 USDT and you create a maker order with a bid price 999 USDT, this order cannot be filled immediately. It will enter into the order book until someone fills it. After filled, you're required to pay the maker fee and the taker will pay the taker fee (or vice versa). You need to pay the taker fee when your limit ask order is traded successfully.
Trading fee rules
Calculation formula of trading fee: Trading fee of USDT-margined perpetual = Fee rate × (Number of contracts × Multiplier × Contract size × Fill price).
Charge rule: Trading fee of USDT-margined perpetual futures is settled in USDT and is charged when the order is filled;
Take BTCUSDT perpetual futures (Contract size is 0.01 BTC, Multiplier is 1) as an example, assuming the current price of BTC is 20,000 USDT;
Trader A (Maker fee: 0.02%; Taker fee: 0.05%) bought/sold 100 contracts (1 BTC) at market price with 10x leverage, and used 2,000 USDT (0.1 BTC) as margin. Trader A became a taker of this trade, so the Trading fee = 0.05% × (100 × 1 × 0.01 × 20,000) = 10 USDT;
Trader A bought/sold 100 contracts (1 BTC) at limit price with 10x leverage, and used 2,000 USDT (0.1 BTC) as margin. Trader A became a maker of this trade, so the Trading fee = 0.02% × (100 × 1 × 0.01 × 20,000) = 4 USDT.
Forced liquidation fee: Calculated according to the taker fee of user’s current tier level.
Trading fee rules
USDT-M expiry, USDC-M perpetual and USDC-M expiry:
Calculation formula of trading fee: Trading fee of USDT-M expiry, USDC-M perpetual and USDC-M expiry = Fee rate × (Number of contracts × Multiplier × Contract size × Fill price).
Trading fee example: Trading fee of USDT-M expiry is settled in USDT; trading fee of USDC-M perpetual and USDC-M expiry is settled in USDC, and is charged when the order is filled.
Take BTCUSDC perpetual (Contract size is 0.0001 BTC; Multiplier is 1) as an example, assuming the market price of BTC is 20,000 USDC; Trader A (Maker fee: 0.02%; Taker fee: 0.05%) bought/sold 10,000 contracts (1 BTC) at market price with 10x leverage, and used 2,000 USDC (0.1 BTC) as margin.
If Trader A is the taker of this trade, the trading fee = 0.05% × (10,000 × 1 × 0.0001 × 20,000) = 10 USDC. Trader A bought/sold 10,000 contracts (1 BTC) at limit price with 10x leverage, and used 2,000 USDC (0.1 BTC) as margin. If Trader A is the maker of this trade, the Trading fee = 0.02% × (10,000 × 1 × 0.0001 × 20,000) = 4 USDC.
Crypto-M perpetual and Crypto-M expiry:
Calculation formula of trading fee: Trading fee of Crypto-M perpetual and Crypto-M expiry = Fee rate × (Number of contracts × Multiplier × Face value per contract / Fill price).
Charge rule: Trading fee for Crypto-margined perpetual and expiry is settled in the traded crypto and is charged when the order is filled;
Take BTCUSD perpetual futures (Contract size is 100 USD; Multiplier is 1) as an example, assuming the market price of BTC is 20,000 USD.
Trader A (Maker fee: 0.02%; Taker fee: 0.05%) bought/sold 100 contracts (10,000 USD) at market price with 10x leverage, and used 0.05 BTC (1,000 USD) as margin. If Trader A is the taker of this trade, the trading fee = 0.05% × (100 × 1 × 100 / 20,000) = 0.00025 BTC;
Trader A bought/sold 100 contracts (10,000 USD) at limit price with 10x leverage, and used 0.05 BTC (1,000 USD) as a margin. If Trader A is the maker of this trade, the trading fee = 0.02% × (100 × 1 × 100 / 20,000) = 0.0001 BTC.
Expiry settlement fee: 0.01% for all users regardless of tier level.
Pre-market futures settlement fee: 1% for all users regardless of tier level.
Forced liquidation fee: Calculated according to the taker fee of user’s current tier level.
Trading fee rules
Calculation formula of trading fee: Trading fee of pre-market futures = Fee rate × (Number of contracts × Multiplier × Contract size × Fill price).
Trading fee example: Trading fee of pre-market futures is settled in USDT, and is charged when the order is filled.
Take HMSTRUSDT pre-market futures (Contract size is 10 HMSTR; Multiplier is 1) as an example, assuming the market price of HMSTR is 0.2 USDT;
Trader A (Maker fee: 0.02%; Taker fee: 0.05%) bought/sold 10 contracts (100 HMSTR) at market price with 10x leverage, and used 2 USDT (10 HMSTR) as margin.
If Trader A is the taker of this trade, the trading fee = 0.05% × (100 × 1 × 10 × 0.2) = 0.1 USDT.
Trader A bought/sold 10 contracts (100 HMSTR) at limit price with 10x leverage, and used 2 USDT (10 HMSTR) as margin. If Trader A is the maker of this trade, the Trading fee = 0.02% × (100 × 1 × 10 × 0.2) = 0.04 USDT.

Pre-market futures settlement fee: 1% for all users regardless of tier level.
Forced liquidation fee: Calculated according to the taker fee of user’s current tier level.
Trading fee rules
Calculation formula of trading fee: Trading fee of options contract = Min(Fee rate × Multiplier × Contract size × Number of contracts, 12.5% × Option premium × Multiplier × Contract size × Number of contracts)
Take BTCUSD options (Multiplier is 0.01, Face value is 1 BTC, Option premium is 0.05 BTC) as an example.
Trader A (Maker fee: 0.02%; Taker fee: 0.03%) bought 100 contracts of call options (Nominal value is 1 BTC):
If trader A is the taker when order filled, the trading fee = Min(0.03% × 0.01 × 1 × 100, 12.5% × 0.05 × 0.01 × 1 × 100) = 0.0003 BTC;
If trader A is the maker when order filled, the trading fee = Min(0.02% × 0.01 × 1 × 100, 12.5% × 0.05 × 0.01 × 1 × 100) = 0.0002 BTC.
Option exercise fee: Exercise fee = Min(0.02% × Multiplier × Contract size × Number of contracts, Taker fee tier × Multiplier × Contract size × Number of contracts, 12.5% × Settlement value × Multiplier × Contract size × Number of contracts). Please note that 1-day options (not expire on Friday) do not have an exercise fee, and unexercised options are fee-free.
Forced liquidation fee: Forced liquidation fee = Min(Taker fee tier × Multiplier × Contract size × Number of contracts, 12.5% × Mark price × Multiplier × Contract size × Number of contracts).
24h crypto withdrawal limit (USD)
User’s 24-hour withdrawal limit is calculated daily at 4:00 PM UTC based on the fee level. All crypto held by the user will be converted to USD, and the total converted amount must not exceed the withdrawal limit of the corresponding level.
For example. Your 24-hour withdrawal limit is 300 USD. After withdrawing 250 USDT, 25 USD equivalent in OMG, and 15 USD equivalent in XRP, you used 290 USD of the withdrawal limit, leaving 10 USD remaining within 24 hours. If you want to withdraw 20 USD equivalent in XRP, which exceeds 10 USD limit, you can’t withdraw until the next day. Alternatively, you can contact our customer support to increase your limit tentatively.
Withdrawal limit is different under different identity verification levels. View details
Daily update time of trading fee
OKX updates the latest level of user’s trading fee at 8:00 - 10:00 PM UTC
Disclaimer
OKX’s fees may vary depending on your region. Find out the fees applicable to you here.