Auction Types

Compare UniswapX auction mechanisms across Ethereum, Arbitrum, Base, and Unichain using chain-specific timing models.

UniswapX uses different auction mechanisms across supported chains, each tuned to chain characteristics. Understanding these differences is important when integrating UniswapX on each chain.

The following table summarizes the auction mechanisms on each chain.

ChainAuction TypeCompetition ModelTiming Mechanism
EthereumExclusive Dutch AuctionExclusive via RFQ, then openExclusivity period, then time-based decay
ArbitrumDutch AuctionOpen competitionBlock-based decay
Base, UnichainPriority Gas AuctionPriority fee biddingTarget block activation, then priority fee bidding

Regardless of their differences, all auctions do not require users to pay gas. Gas fees are wrapped into the final price and are paid by the filler, and failed swaps do not incur any fees at all.

Ethereum: RFQ + Exclusive Dutch Auction

TL;DR

Two-phase auction system with exclusive filling rights for winning quoters.

Key terms

  • Request for Quote (RFQ): A process of crowdsourcing quotes for price discovery.
  • Fillers: Parties who settle orders programmatically. These participants may also be called market makers, searchers, solvers, or MEV bots.
  • Quoters: A subset of fillers that provide quotes in the RFQ process.
  • Classic Quote: The quote from the AMM route.
  • Soft Quote: An indicative quote used to show users their expected swap result.
  • Hard Quote: The final quote collected to parameterize the auction before posting onchain.

UniswapX on Ethereum uses a two-phase auction system that balances execution quality with gas efficiency. Due to Ethereum's higher gas costs and 12-second block time, the system uses RFQ to improve pricing before users submit onchain transactions. This approach grants temporary exclusivity to winning quoters, then falls back to an open Dutch auction if the exclusive filler does not settle. The two-phase design reduces failed transactions while preserving market competition.

Quote discovery (steps 1 to 3)

  1. User goes into the interface and inputs a swap.
  2. Uniswap Labs fetches two quotes in parallel:
    • Classic Quote: A quote from classic Uniswap Protocol pools.
    • UniswapX Quote: A quote determined via a Request for Quote (RFQ) process with quoters. Because of the nature of the system, this set of market makers is permissioned and known to Labs.
  3. Uniswap Labs selects the best quote (soft quote) returned and compares it to the Classic Quote. If the UniswapX quote is better, the user is shown a purple lightning bolt Bolt icon, indicating that they will be swapping through X.

Order execution (steps 4 to 5)

  1. The UniswapX Quote contains auction parameters, which the user signs to create a gasless offchain message. This signed message commits to the auction parameters and defines a slippage tolerance, representing the minimum amount the swapper will accept.
  2. This gets sent to Uniswap Labs' server, which requests a final "hard quote" from the group of quoters. Whichever quote (hard quote) is highest wins exclusivity and gives the quoter a fixed amount of time to fill the order (sending users their tokens and settling the transaction).
    • If no quoter provides the amount that the swapper had signed for (e.g. prices moved), then the order is sent out without exclusivity, meaning anyone can fill the order.
    • Orders may use soft exclusivity, where non-exclusive fillers can override the exclusivity window by providing additional tokens to the swapper (determined by the exclusivityOverrideBps parameter). This means the swapper is never worse off if exclusivity is overridden, as they receive at least as much as the exclusive price, and potentially more.

Fallback mechanisms (steps 6 to 7)

  1. Sometimes the market maker who won the RFQ does not want to fill the order anymore (for example, price moved against them). This is called "fading." The system can penalize quoters who fade too frequently by ignoring their quotes for a period of time.
  2. If the exclusive filler fades or there is no exclusive filler, the system proceeds to a Dutch Auction (a descending price auction), where the user's transaction is posted for anyone to permissionlessly fill the order.
    • The auction starts at or slightly below the quote price that the quoter faded.
    • Every block, the price decreases by a small amount.
    • This can improve outcomes through competition because market makers are incentivized to fill when pricing becomes profitable for them.
    • In this flow, market makers in step 2 are "Quoters" because they respond to RFQ requests. Market makers in step 6 are "Fillers." Quoters are permissioned, while fillers are permissionless.
Ethereum UniswapX flow showing RFQ quote discovery, exclusive filling, and Dutch auction fallback

Cosigners

Cosigners update auction parameters to reflect real-time prices, compensating for the delay between quoting and signing (which can be up to 30 seconds). They set the auction start block and adjust pricing within the user's signed parameters, while never exceeding the user's slippage tolerance. See the technical overview of UniswapX RFQ for details on how cosigners work in practice.

Currently, the Uniswap Interface and Uniswap API set the cosigner to Uniswap Labs, though this may be updated in the future.

Arbitrum: Dutch Auction

TL;DR

Direct Dutch auction without RFQ, leveraging fast block times for onchain price discovery.

Because Arbitrum's block frequency is much higher than Ethereum's, the Dutch auction can decay through more price points in the same amount of time. For example, exploring 5 price points takes 60 seconds on Ethereum (5 × 12-second blocks) but only 1.25 seconds on Arbitrum (5 × 0.25-second blocks). This speed advantage eliminates the need for an RFQ process since the auction can open directly to all fillers without exclusivity and still deliver excellent price discovery within an acceptable timeframe.

  1. Based on the token pair and AMM liquidity, Uniswap Labs determines whether the swap will likely benefit from UniswapX.
  2. If not, the user is routed to the AMM.
  3. If so, an algorithm (called Unimind) sets the auction start and end prices (auction parameters) based on the historical performance of this pair.
    • Unimind is a gradient descent algorithm developed by Uniswap Labs to optimize both the amount given to the swapper and auction speed.
  4. The user signs the auction parameters and sends them to Uniswap Labs.
  5. Uniswap Labs updates the auction parameters to set the auction start block and sends the auction to fillers.
  6. Fillers compete to fill the auction onchain.

Base & Unichain: Priority Gas Auctions

TL;DR

Priority fee bidding system leveraging OP Stack transaction ordering.

OP Stack rollups use Priority Ordering, a method for determining transaction order in a block based on priority gas fees. This contrasts with Arbitrum, which uses first-come-first-serve ordering. Priority Gas Auctions (PGA) are a UniswapX auction type that uses this priority ordering mechanism to determine the winner.

Unlike a Dutch auction that decays over time, Priority Orders function more like a traditional English auction, where the auction starts at the user's max slippage tolerance. At a specified start block, the auction opens and fillers simultaneously submit their bids by including priority fees with their transactions. The highest priority fee wins the right to fill the order, while competing transactions revert.

  1. Based on the token pair and AMM liquidity, Uniswap Labs determines whether the swap will likely benefit from UniswapX.
  2. If not, the user is routed to the AMM.
  3. If so, the auction is created using the classic price and max slippage provided by the user.
  4. The user signs the auction parameters and sends them to Uniswap Labs.
  5. Uniswap Labs updates the auction parameters to set the auction start block and sends the auction to fillers.
  6. Fillers compete to fill the auction onchain by submitting transactions with varying priority fees at the target block.