How do total Profit and Loss (PnL) and Grid profits work for Spot Grid?

Published on Jun 20, 2025Updated on Jul 2, 20257 min read4

What’s the difference between Total PnL, Grid Profits, and Unpaired PnL on my bot?

Total PnL shows your bot’s overall profit or loss at any given moment. It’s an accurate snapshot of your bot’s performance, as it combines both realized and unrealized gains.

Grid Profits and Unpaired PnL are components of the Total PnL. They’re displayed separately to help you better understand what’s driving your bot’s performance. However, both are display-only estimates calculated using predefined methods, and may not fully reflect real-time market changes or be accurate under rapidly changing market conditions.

Note: if you’ve enabled Simple Earn Allocation, any profits generated from Earn will appear under a separate field labeled Simple Earn earnings.

How's the field "Total PnL" calculated?

Total PnL is the change in your bot’s equity over time, factoring in all gains and losses. It's calculated by comparing your current bot equity (based on live market prices) with your initial equity when the bot was created—plus or minus any top-ups or withdrawals.

Example:
If you started a bot with 100 USDT, and the current bot equity is 200 USDT, your Total PnL = 200 - 100 = 100 USDT.

This figure includes:

  • Realized profits from completed trades

  • Trading fees

  • Unrealized PnL from open positions

  • Any applicable Earn interest (if enabled)

How's the field "Grid Profits" calculated?

Grid Profits represent the estimated realized gains from completed grid cycles—each cycle being one buy followed by one sell.

It’s calculated by summing up all the individual profits from successful grid executions found in your transaction history. While Grid Profits gives you a clear view of how much your bot has earned from grid trading alone, it doesn’t reflect:

  • Unrealized gains/losses from open positions

  • Any Earn interest

  • Trading fees not tied to grid execution

Therefore, Total PnL gives a full picture of your bot’s performance. Grid Profits is meant for reference and breakdown purposes.

Example: How Grid Profits Are Calculated for an Order Group

Order amount (BTC)

Fill price (USDT)

Actual fee deducted (assume, fee rate = 0.1%)

Notes

BUY

0.00005222

100,000

0.00000005222 BTC

For the buy trx, the actual fee is deducted in base currency

SELL

0.00005216

101,000

0.00526816 USDT

For the sell trx, the actual fee is deducted in quote currency

Below is an example of a Spot Grid order group that includes one Buy and one Sell transaction on the BTC/USDT pair. This'll help illustrate how fees are handled and how grid profits are estimated.

Note:

  • Fee deduction currency depends on transaction type

    • For buy transactions: if you're buying BTC, so the fee is deducted in BTC.

    • For sell transactions: if you're selling BTC for USDT, so the fee is deducted in USDT.

  • Resulting buy and sell amounts differ slightly

    • Because the buy fee is charged in BTC, the amount of BTC you end up holding after a buy is slightly lower than what’s shown as the gross amount.

    • In this example:

      • Buy amount: 0.00005222 BTC

      • Buy fee: 0.00000005222 BTC

      • Net BTC held after buy: 0.00005222 - 0.00000005222 = 0.00005216778 BTC

      • Sell amount: 0.00005216 BTC

      • This leads to a tiny leftover BTC balance.

  • Residual BTC due to rounding and fee units

    • After selling, a very small amount of BTC may remain in the bot—in this case, 0.00000000778 BTC. This happens due to:

    • Fees being charged in different currencies (BTC for buys, USDT for sells)

    • Exchange rules preventing the sale of amounts below the minimum tradable quantity

    • This leftover BTC stays in your bot and is returned to your wallet when the bot is stopped.

How are Grid Profits estimated in this case?

To estimate Grid Profits for the order group shown:

  • Assume the same notional for buy and sell
    For calculation purposes, we align the quantity on both sides of the trade using the executed sell amount, which is 0.00005216 BTC.

  • Calculate gross profit (before fees)
    Using the price difference between buy and sell:

    • Gross Profit = 0.00005216 BTC × (101,000 – 100,000)

    • Gross Profit = 0.05216 USDT

  • Deduct fees

    • Sell Fee (already shown in the table): 0.00526816 USDT

    • Buy Fee, approximated in USDT:
      = 0.00005216 BTC × 100,000 USDT/BTC × 0.1%
      = 0.005216 USDT

  • Estimated Grid Profit for this order group

    • Grid Profit = Gross Profit – Buy Fee – Sell Fee

    • Grid Profit = 0.05216 – 0.005216 – 0.00526816 = 0.04167584 USDT

Disclaimer

This is only an approximation.

  • Small differences may occur due to rounding.

  • Buy and sell fees are charged in different currencies, according to the location of the buyer.

  • Matching quantities are normalized for comparison.

  • The actual fees vary based on execution type (maker or taker) and the user's account tier.

Total PnL remains an accurate and comprehensive representation of your bot’s actual profit and loss. Grid Profits simply offer the best-possible estimate of the portion of profits attributable to completed grid cycles. Any profits from incomplete cycles are not reflected.

How is the field "Unpaired PnL" calculated?

While Total PnL reflects your bot’s complete profit or loss, it consists of two main parts:

  • Grid Profits – Estimated realized gains from completed grid cycles

  • Unpaired PnL – The remaining portion of Total PnL not tied to completed grid trades

In simple terms,

Unpaired PnL = Total PnL – Grid Profits

Unpaired PnL typically includes:

  • Partially filled grid orders (for example, when the buy leg is completed, but the sell leg hasn’t executed yet)

  • Unrealized gains or losses from assets still held by the bot

Just like Grid Profits, Unpaired PnL is an estimate, calculated using a predefined methodology and intended for display purposes only. It helps provide a more detailed view of your bot’s performance.

Why can’t I withdraw all of my Grid Profits?

While Grid Profits represent an estimate of the realized profits from completed grid cycles, they don't always reflect the full amount you can withdraw. Several factors may limit the withdrawable portion:

  • You may have already withdrawn part of your Grid Profits earlier from the same bot.

  • If you performed a Grid Edit or Add Investment, your Grid Profits at that time may have been fully reinvested—resetting your withdrawable amount to zero.

  • Grid Profits are approximations and may include small rounding differences or estimated fees (which are charged in different currencies), as described in the example in (3) above. In some cases, tiny residual amounts may also remain in the bot if they fall below the exchange's minimum trade size - meaning that a portion of grid profits need to be retained in the bot to support forthcoming orders.

Fundamentally, the system ensures the max withdrawal amount is calculated in a way that after withdrawal, there is still enough balance in your bot to support open orders and allow the strategy to continue running smoothly as intended. Rest assured, when you withdraw Grid Profits, the system calculates and provides the maximum amount that can be safely withdrawn without compromising the bot’s ongoing operation.

While Grid Profits represent an estimate of realized gains from completed grid trades, the amount you can actually withdraw may differ. Several factors can affect this:

  • Previous withdrawals: if you've already withdrawn part of your Grid Profits, the remaining withdrawable amount will be lower, even though the total Grid Profits figure still shows cumulative earnings.

  • Edits or additional investments: if you modify your bot settings (for example, grid adjustment) or add more funds, your Grid Profits may be reinvested automatically. This resets the withdrawable amount to zero at the time of the change.

  • Approximate figures and rounding: Grid Profits are estimations that may include rounding differences and fee approximations. Since fees are charged in different currencies, small residual amounts might be left in the bot.

  • Exchange trading limits: some minor asset amounts may fall below the minimum trading size and must remain in the bot to support future grid orders.

To maintain the stability of your bot, the system calculates the maximum amount that can be safely withdrawn. This ensures your bot retains enough balance to keep operating as intended without affecting open or upcoming trades.

When you withdraw, the system will provide the highest amount possible that won’t compromise the strategy’s performance.

Learn more about the Spot grid trading bot

.