Research/Education/Post-Only, Reduce-Only, IOC & FOK Orders: What They Mean on Crypto Exchanges
# Trading

Post-Only, Reduce-Only, IOC & FOK Orders: What They Mean on Crypto Exchanges

BloFin Academy04/01/2026

Post-only, reduce-only, IOC, and FOK are execution constraints and time-in-force rules that control how your orders interact with the order book. Post-only forces maker-only placement. Reduce-only prevents accidental position increases. IOC fills what is available immediately and cancels the rest. FOK demands full immediate execution or cancels entirely. These are not standalone order types but modifiers you attach to limit or market orders to manage fees, position risk, and fill behavior on centralized exchanges.


What Do These Order Flags Actually Do?

These four modifiers answer questions that basic order types leave open. A limit order specifies price but says nothing about whether you accept taker fills. A market order guarantees speed but cannot prevent position flips. Execution constraints (post-only, reduce-only) and time-in-force rules (IOC, FOK) fill those gaps by restricting which outcomes the exchange permits.

Quick reference:

Flag

Type

What It Controls

Outcome If Violated

Post-only

Execution constraint

Must rest as maker

Order cancelled

Reduce-only

Execution constraint

Cannot increase position

Order rejected

IOC

Time-in-force

Fill now, partial OK

Unfilled portion cancelled

FOK

Time-in-force

Fill all now or nothing

Entire order cancelled

The mental model: your base order (limit or market) determines price intent. The flag determines what happens when reality conflicts with that intent.


Post-Only: Guaranteed Maker Status or Cancellation

A post-only order can only add liquidity to the order book. If your price would match existing orders immediately, the exchange cancels your order before any fill occurs. The entire point is fee control: you either fill as a maker or you do not fill at all.

Why this matters for fees: Most exchanges charge lower fees for makers than takers. On BloFin, the maker-taker spread is meaningful enough that over hundreds of trades, forcing maker status materially reduces cumulative costs. Some venues like MEXC offer zero maker fees on certain tiers, making post-only effectively free execution when your order fills.

How crossing the spread triggers cancellation:

You want to buy BTC. The current best ask is $65,000. You place a post-only buy limit at $65,050. Because your bid exceeds the best ask, your order would match immediately as a taker. The exchange rejects it. To post successfully, your buy limit must sit below $65,000.

Rules for prices that post:

  • Buy limit: set below the current best ask

  • Sell limit: set above the current best bid

  • Fast markets shift the book between submission and processing, so build a buffer of 0.1-0.3% below/above the spread edge

  • If you need immediate execution, post-only is the wrong tool

Common cancellation messages: "Would execute immediately," "post-only rejected," "order would cross the book." All mean the same thing: your price was too aggressive to rest as a maker.

Partial fills after posting: Once your order rests on the book, incoming taker orders can fill it partially or fully over time. The post-only constraint applies only at submission. After posting, normal fill mechanics apply.

I use post-only on every non-urgent entry. The worst outcome is a cancellation that costs nothing. The best outcome is saving taker fees on every fill across a session.


Reduce-Only: Position Safety on Perpetuals

A reduce-only order can only decrease or close your existing position. If executing it would increase net exposure or flip your direction, the exchange rejects it. This is a safety mechanism for perpetual futures where a single misclick can flip a long into a short.

We commonly see active traders on our platform use post-only mode as their default for limit entries, switching to IOC only when they need immediate partial fills on time-sensitive exits.

Scenario: Closing a long

You hold 0.5 BTC long. You place a reduce-only sell for 0.5 BTC. The order executes and closes your position. If you accidentally enter 0.8 BTC as the sell size, the exchange rejects the order because selling 0.8 when you only hold 0.5 would create a 0.3 BTC short position, increasing your exposure rather than reducing it.

Scenario: Closing a short

You are short 3 ETH. A reduce-only buy for 3 ETH closes you flat. A reduce-only buy for 4 ETH gets rejected because it would flip you 1 ETH long.

Why reduce-only orders get rejected:

  • Wrong side: placing a buy when you are already long (adds exposure)

  • Position already closed: another order or liquidation closed you before this order reached the engine

  • Oversized: order exceeds current position and the venue does not auto-trim

  • Market shift: position changed between order placement and execution

Reduce-only with market orders: Unlike post-only, reduce-only works with market orders. "Close this position immediately at market price" is a valid use case. Combining reduce-only with a market sell on a long position gives you fastest possible exit with no risk of accidental reversal.

Post-only + reduce-only combination: Some exchanges allow both flags simultaneously. This creates a maker-only exit that also cannot flip your position. You are long 1 BTC and want to take profit at $70,000 as a maker. A post-only reduce-only sell limit at $70,000 ensures maker fees and prevents accidental shorts. Verify support on your specific venue.


IOC: Fill What You Can, Cancel the Rest

Immediate-or-cancel tells the exchange: execute whatever quantity is available right now at my price or better, then cancel any unfilled remainder. Partial fills are acceptable. The order never rests on the book.

How IOC differs from a standard limit:

A GTC limit order that does not fill immediately sits on the book until filled or cancelled. An IOC limit at the same price fills whatever is available at that moment and disappears. You get liquidity without leaving resting exposure that might fill later at an unwanted time.

Worked example:

You submit an IOC buy limit for 2 BTC at $64,000. The book has 1.2 BTC available at or below $64,000. Result: 1.2 BTC fills, 0.8 BTC is cancelled. No order remains on the book. You received partial execution without any lingering open order.

IOC vs market order in thin liquidity:

A market order has no price ceiling and sweeps the entire book regardless of cost. An IOC limit order sets a ceiling: you fill up to your limit price and cancel the rest. In thin books where depth drops off sharply, IOC with a limit protects you from catastrophic slippage while still capturing available liquidity instantly.

When IOC makes sense:

  • You want immediate execution but with price protection

  • You are adjusting a position quickly during volatility

  • Partial fills are useful (you can submit another order for the remainder later)

  • You do not want stale orders sitting on the book overnight


FOK: All or Nothing, Immediately

Fill-or-kill demands that the entire order executes immediately at your specified price or better. If the book cannot fill 100% of your size right now, the entire order is cancelled. Zero partial execution.

Worked example:

You submit a FOK buy limit for 5 ETH at $3,100. The book has 3.2 ETH at $3,100 or below. Because only 3.2 of your 5 ETH can fill, the entire order cancels. Nothing executes. Compare with IOC: you would have received the 3.2 ETH and cancelled the remaining 1.8.

Why FOK exists:

  • Hedging exact quantities: you need precisely 10,000 USDT of BTC to match a derivative position. A partial fill creates a mismatch.

  • Arbitrage execution: the opportunity only exists if you can fill the full size. Partial execution leaves you with unhedged exposure.

  • Batch operations: accounting or rebalancing requires exact amounts.

FOK failure rate: In practice, FOK orders fail frequently on all but the most liquid pairs. The requirement for full immediate fill means any order larger than the top-of-book depth will cancel. Use FOK only when partial fills create operational problems, not as a default.

FOK vs IOC decision:

Situation

Use

Partial fill is useful

IOC

Partial fill creates problems

FOK

You can resubmit for remainder

IOC

Opportunity vanishes if not fully filled

FOK


Compatibility: What Combines With What

Not every flag works with every order type. The logic is straightforward: if a combination is self-contradictory, the exchange rejects it.

Post-only + market order: Impossible. Market orders take liquidity by definition. Post-only requires adding liquidity. These are mutually exclusive.

Reduce-only + market order: Valid. A market order that closes a position can be reduce-only. You want speed and safety simultaneously.

Post-only + IOC/FOK: Generally not combined. Post-only prevents immediate execution; IOC and FOK require it. Some venues technically allow post-only with IOC (if the order can post, it posts; if not, it cancels like IOC), but the practical use case is narrow.

Reduce-only + IOC/FOK: Valid on many venues. "Close my position immediately, partial OK" (reduce-only + IOC) or "close fully or not at all" (reduce-only + FOK) are coherent instructions.

Reduce-only + post-only: Valid where supported. Maker-only exit with position safety. Best combination for patient profit-taking on perpetuals.

Combination

Valid?

Use Case

Post-only + limit

Yes

Fee-optimized entries

Reduce-only + market

Yes

Fast safe exits

Reduce-only + post-only limit

Yes (venue-dependent)

Maker exits on perps

Post-only + market

No

Contradictory

Post-only + FOK

Rarely

Edge case

Reduce-only + IOC limit

Yes

Quick partial close


Decision Framework: Which Flag When

Start here: What is your priority?

  1. Minimizing fees on entry? Post-only limit. Accept that the order may cancel if your price is too aggressive.

  2. Closing a perps position without risk of reversal? Reduce-only. Add post-only if you want maker treatment and are not in a rush.

  3. Immediate execution with price ceiling? IOC limit. You get what is available now, remainder disappears.

  4. Full size or nothing? FOK. Accept high cancellation rate on anything but the most liquid pairs.

  5. Emergency exit, speed above all? Market order with reduce-only. No post-only, no IOC, just get out.

Beginner defaults:

  • Every planned entry on a liquid pair: post-only limit (saves fees on every fill)

  • Every perps exit: reduce-only (prevents the most common perpetuals mistake)

  • IOC: use when you need partial liquidity now and will handle remainder separately

  • FOK: use only when partial fills create downstream problems

I default to post-only on entries and reduce-only on every perpetuals exit. The combination of both on limit exits has saved me from accidental shorts more than once.


CEX vs AMM: Why These Flags Do Not Exist on DEXs

These execution constraints exist because centralized exchanges use order books where buy and sell orders queue at discrete price levels. Maker, taker, posting, crossing the spread: all concepts rooted in order book architecture.

Automated market makers (AMMs) on decentralized exchanges like Uniswap use liquidity pools and algorithmic pricing. There is no book to post to, no spread to cross, no queue priority. You swap against a pool at the algorithmically determined price. Concepts like post-only are meaningless in this context.

If you trade on both CEXs and DEXs, understand that execution mechanics differ at the infrastructure level. The flags in this guide apply exclusively to order-book venues.


Troubleshooting Common Rejections

Post-only cancelled instantly:

  • Your buy limit was at or above the best ask

  • Your sell limit was at or below the best bid

  • Fix: widen your distance from the spread edge by 0.1-0.3%

Reduce-only rejected:

  • Confirm position direction matches order side (sell to close long, buy to close short)

  • Check current position size has not changed since you placed the order

  • Verify order size does not exceed remaining position

IOC fills zero:

  • No liquidity at your limit price at the moment of submission

  • Fix: widen your limit slightly or switch to market if speed is critical

FOK cancels repeatedly:

  • Insufficient depth for full size at your price

  • Fix: reduce order size, widen limit, or switch to IOC if partial fills are acceptable


Frequently Asked Questions

Are post-only and reduce-only separate order types?

No. They are execution constraints that modify how an underlying limit or market order can fill. Post-only attaches to limit orders and prevents taker execution. Reduce-only attaches to either order type and prevents position increases. The underlying order type (limit or market) still determines price behavior. Time-in-force rules like IOC and FOK similarly modify duration and fill requirements without replacing the base order. Exchanges display them as checkboxes or dropdowns alongside your order entry, not as independent order categories.

Why does my post-only order keep cancelling even though my price looks safe?

The order book can shift between the moment you see prices and the moment your order reaches the matching engine. On volatile pairs, even 200-500ms of latency can move the best ask below your buy limit. The fix is to set your limit further from the spread edge. A buffer of 0.1-0.3% below the best ask (for buys) or above the best bid (for sells) accounts for normal microstructure movement. If your order still cancels, the market is moving against you faster than you can post, and you should wait for conditions to stabilize.

Can I use reduce-only on spot markets?

Behavior varies by venue. On perpetual futures, position size is explicit and reduce-only has clear meaning. On spot, you either hold an asset or you do not, so the concept is less defined. Some exchanges implement spot reduce-only as "cannot sell more than your balance," which prevents overselling but functions differently from the perpetuals version. Check your specific exchange documentation rather than assuming universal behavior.

When would I choose FOK over IOC?

Choose FOK when partial execution creates an operational problem. Examples include hedging a derivative with an exact spot quantity where a mismatch leaves you exposed, executing an arbitrage where the profit only exists at full size, or rebalancing a portfolio where fractional fills complicate accounting. For most trading situations where partial fills are simply suboptimal but not harmful, IOC is the better choice because it maximizes the liquidity you capture while still preventing stale resting orders.

Should beginners use these flags from day one?

Post-only and reduce-only are beginner-friendly safety tools with no downside beyond occasional order rejections. Post-only saves fees on every successful fill. Reduce-only prevents the most common perpetuals mistake (accidental position flip). Start with both immediately. IOC and FOK require understanding liquidity and book depth to use effectively and have higher failure rates on thin pairs. Add them once you are comfortable reading order book depth and can assess whether your size matches available liquidity.


Key Takeaways

  • Post-only guarantees maker treatment or cancellation. Use it on every non-urgent entry to save fees across hundreds of trades.

  • Reduce-only prevents accidental position increases on perpetuals. Enable it on every exit order without exception.

  • IOC fills available liquidity immediately and cancels the rest. Use it when you need speed with a price ceiling and partial fills are acceptable.

  • FOK demands full immediate fill or cancels entirely. Reserve it for situations where partial execution creates downstream problems.

  • These are not order types but modifiers. They attach to your limit or market order and restrict which outcomes the exchange permits.

  • Post-only cannot combine with market orders. Reduce-only can combine with anything. IOC and FOK replace the default GTC time-in-force.

  • Action this week: On your next entry, enable post-only and compare your fill fee against a standard limit. On your next perps exit, enable reduce-only and confirm the order rejects if you accidentally overshoot your position size.

---

Researched and written by the Blofin Academy editorial team with AI-assisted drafting. Primary sources include BloFin exchange order-type documentation (execution constraints and time-in-force specifications); Cube Exchange educational guides on post-only and IOC/FOK mechanics (https://www.cube.exchange/what-is/post-only-order); Bitget futures trading documentation on GTC, FOK, and IOC order handling (https://www.bitget.com/support/articles/12560603818004); Gate.io IOC order analysis covering execution logic and risk management (https://www.gate.com/crypto-wiki/article/ioc-or-cancel-order-full-analysis-fast-execution-and-risk-management). All facts independently verified against cited documentation current as of April 2026.

 


This article is for informational purposes only and does not constitute financial advice. Cryptocurrency trading involves substantial risk of loss. Past performance does not guarantee future results. Always conduct your own research and consider your financial situation before trading. BloFin does not guarantee the accuracy of third-party data referenced herein.