Blockchains, Front-Running, and Candle Auctions

47 Pages Posted: 18 May 2021

See all articles by Samuel Häfner

Samuel Häfner

Web3 Foundation; University of St. Gallen

Alistair Stewart

Web3 Foundation

Date Written: May 14, 2021


Unlike in a standard auction setting, blockchain implementations of auctions have to deal with the problem of front-running: block production happens at discrete intervals and anyone can inspect the incoming bids before they are written on chain. In first-price auctions, this gives tech-savvy bidders the possibility to outbid other bidders as they please. In second-price auctions, the auctioneer could raise the payment of the winning bidder at no cost by registering his own (pseudonymous) bidder. Whereas cryptographic solutions to these problems exist, they are either very computing intensive or require multiple actions by the bidders. As an alternative that works without encrypting bids, this paper proposes a dynamic first-price auction with a random ending time --- a so-called candle auction. Time is discrete and in every round two bidders move sequentially and in a fixed order. We show that a random-closing rule both revenue-dominates a hard-closing rule and makes participation for the bidder being front-run more attractive. In particular, under a uniform ending-time distribution both the utility of the disadvantaged bidder and total revenues approach that of a second-price auction as the number of rounds grows large. Furthermore, the good is allocated efficiently.

Keywords: auctions, blockchains, front-running, random ending time

JEL Classification: D44, D82, G29, C72

Suggested Citation

Häfner, Samuel and Stewart, Alistair, Blockchains, Front-Running, and Candle Auctions (May 14, 2021). Available at SSRN: or

Samuel Häfner (Contact Author)

Web3 Foundation


University of St. Gallen ( email )

Varnbuelstr. 14
Saint Gallen, St. Gallen CH-9000

Alistair Stewart

Web3 Foundation ( email )


Do you have a job opening that you would like to promote on SSRN?

Paper statistics

Abstract Views
PlumX Metrics