Skip to content

Learn

Exchange APIs

What is a Unified Trading Account (UTA) on Bybit?

Figures on this page are as of 2026-09. Fees, limits and margin tiers change — check the venue's own docs.

A Unified Trading Account (UTA) is Bybit’s current account model, in which the margin mode is chosen once for the whole account rather than per trading pair, and — in cross and portfolio mode — liquidation risk is assessed across the account rather than position by position.

This page is for anyone writing code against Bybit’s V5 API, or reading older Bybit tutorials and wondering why the behaviour they describe does not match their account. It covers what the account modes are, how UTA decides when to liquidate, which error codes depend on account type, and how OKX’s account modes compare.

Why this matters now

Bybit’s V5 documentation lists three account modes that “have existed”: classic, UTA 1.0 and UTA 2.0. It marks classic as “now unavailable”, and says accounts registered in 2025 or later can ignore the upgrade guide.

So a lot of published material describes an account you cannot have any more. Tutorials that switch margin mode per symbol, liquidation formulas written for classic accounts, and error explanations keyed to “classic vs unified” were all written against a model that no longer applies. The classic-account liquidation-price help articles we tried on Bybit’s site returned “This article is currently not supported on this site” — a fair signal that those formulas should not be in your code either.

How it actually works

  1. The account reports its mode. unifiedMarginStatus in the Get Account Info response is 1 for classic, 3 or 4 for UTA 1.0, and 5 or 6 for UTA 2.0. Read it rather than assuming.
  2. One margin mode applies to the account. UTA offers Isolated, Cross (the default) and Portfolio Margin, set through /v5/account/set-margin-mode with ISOLATED_MARGIN, REGULAR_MARGIN or PORTFOLIO_MARGIN. In Bybit’s words, “you cannot choose different margin modes for individual trading pairs”.
  3. The margin mode decides where liquidation is decided. This is the part most summaries get wrong, so it has its own table below.
  4. In cross, one ratio governs everything. Bybit publishes it as Account MMR = Total Maintenance Margin ÷ (Margin Balance − Haircut Loss + Order Loss), exposed as accountMMRate (and accountIMRate) in GET /v5/account/wallet-balance.
  5. When that ratio reaches 100%, Bybit works through a fixed sequence, stopping as soon as it falls back below 100%: cancel orders that increase exposure, auto-repay liabilities, cancel all orders, close fully hedged positions, liquidate unhedged positions step by step down the risk tiers, then liquidate short options.
  6. Position mode is a separate setting. One-way or hedge is chosen per symbol or per settlement coin; portfolio margin supports one-way only.

Margin mode and liquidation scope under UTA

Margin modeAPI valueLiquidation is decided byPosition modes
IsolatedISOLATED_MARGINEach position: mark price reaches that position’s liquidation priceOne-way, hedge
Cross (default)REGULAR_MARGINThe account: Account MMR reaches 100%One-way, hedge
PortfolioPORTFOLIO_MARGINThe account: Account MMR reaches 100%One-way

“UTA means account-level liquidation” is only true for cross and portfolio. Isolated under UTA still liquidates per position, and Bybit says “Liquidation of one position will not affect the other position.” What UTA changed is that you cannot run one symbol isolated and another cross at the same time — the choice is made once, for everything.

The same split shows up in the API’s liqPrice field in GET /v5/position/list. For isolated positions Bybit calls it “the real price”. For cross it is “an estimated price”, because risk is controlled at the account level. For portfolio margin it is empty. A dashboard that shows liqPrice as a hard line is only accurate in isolated mode; in cross, the number that decides liquidation is accountMMRate. The mechanics behind both are in how liquidation price is calculated and why liquidation price changes.

One more change is worth knowing if you compute margin yourself. From 2 September 2025, for perpetual and expiry contracts, cross computes both initial and maintenance margin from mark price; isolated computes maintenance margin from mark price but initial margin from entry price, and the isolated liquidation price “will remain fixed”. Risk-limit tiers now follow real-time mark price plus position and order value, and Bybit warns this can cause sudden tier jumps in fast markets.

UTA vs the thing people confuse it with

The confusion is usually between account type and key or channel problems, because several Bybit codes sound like account-type errors and only two of them are.

CodeOfficial textWhat it tells you
10028“The API can only be accessed by unified account users.”The endpoint needs a UTA account
100028“The API cannot be accessed by unified account users.”The endpoint is not available to UTA accounts
HTTP 404Cannot find pathWrong path, or category does not match the account mode
110026“Cross/isolated margin mode has not been modified.”You asked for the mode you already have
10003 (REST)“API key is invalid…”Key and environment do not match — not an account-type error

The pair 10028 / 100028 differs by one digit and means opposite things; read it twice. And 10028 is not 110028, which is a position-mode error: open orders block switching the position mode.

10003 deserves the explicit correction because older explanations tie it to account type. Bybit’s error page, as checked for this article, says a REST 10003 means the key does not match the environment’s host, and a 10003 on the WebSocket order-entry channel means too many sessions under one UID. Expired keys have their own codes: -2015 on spot, 33004 on derivatives. See Bybit API key setup for the full auth-error map.

Bybit UTA vs OKX account modes

OKX solves a similar problem with a different control. Instead of one account type with a margin-mode switch, OKX exposes four account modes as acctLv in GET /api/v5/account/config:

acctLvOKX modeCross-margin risk is assessed…
1Spot modeNo perpetuals: “margin, perpetual swap, futures, or options seller trading are not supported”
2Futures modePer margin currency — when that currency’s maintenance margin ratio reaches 100%
3Multi-currency marginAccount-wide, in USD
4Portfolio marginPer risk unit, with maintenance margin from stress-test scenarios

OKX describes isolated risk as per position and segregated from cross, so the account mode mostly decides how wide the cross pool is. The first switch into each OKX mode has to be made on the web or app; later switches can go through POST /api/v5/account/set-account-level, with a maintenance-margin check when positions are open.

The practical difference for code: on Bybit, “which margin mode am I in” is one account-wide value. On OKX, you need the account mode to know what “cross” means for a given position. In both cases, the answer lives in an API field your program can read at startup — see isolated vs cross margin for the trade-off itself.

Where the boundary should sit

  • Read the account mode before trading. Check unifiedMarginStatus (Bybit) or acctLv (OKX) at startup and refuse to run if it is not what the strategy was written for. That turns a silent behavioural mismatch into a clear error.
  • Treat margin-mode changes as account-wide actions. On Bybit, switching from cross to isolated changes the liquidation rules for every open position at once. It does not belong behind the same permission as placing an order, and a model should not be able to call it without a human seeing it — see MCP approval workflow design.
  • Monitor the right number. In cross or portfolio mode, alert on accountMMRate, not on the distance to each position’s liqPrice.
  • Do not port classic-account formulas. If a liquidation or margin calculation predates UTA, re-derive it from Bybit’s current UTA pages.
  • Separate strategies that need different margin modes. Because one UTA account has one mode, a strategy that needs isolated and another that needs cross cannot share an account; see sub-accounts for automation.

FAQ

What is a Unified Trading Account on Bybit?

It is Bybit’s current account model, in which one margin mode — isolated, cross or portfolio — applies to the whole account instead of being chosen per trading pair. Bybit’s documentation marks the older classic account as no longer available, so new integrations should assume UTA and confirm it by reading unifiedMarginStatus from the account info endpoint.

Does UTA mean liquidation happens at the account level?

Only in cross and portfolio margin. In those modes Bybit liquidates when the account maintenance margin ratio reaches 100%. In isolated margin under UTA, each position still has its own liquidation price, and Bybit states that liquidating one position does not affect another.

Can I use isolated margin on one symbol and cross on another under UTA?

No. Bybit’s documentation says you cannot choose different margin modes for individual trading pairs; the mode is set for the account. If two strategies need different margin modes, they need separate accounts, such as separate sub-accounts.

What do Bybit errors 10028 and 100028 mean?

They are mirror images. 10028 says the API “can only be accessed by unified account users”; 100028 says it “cannot be accessed by unified account users”. Either one means the endpoint and your account type disagree. Neither is related to 10003, which concerns key and environment mismatches or WebSocket session counts.