Transaction fees on public blockchains can swing several times over within a single hour, with no announcement and no operator changing a price list. The cause is an auction for limited space, and understanding the auction explains almost every fee spike.

Block space is a fixed resource

A blockchain records transactions in batches called blocks, and each block carries a ceiling on how much data it can hold. That ceiling is written into the network's rules rather than adjusted in response to demand.

Blocks also arrive on a roughly fixed schedule, one every few seconds or every few minutes depending on the network. The size limit and the interval together fix how many transactions can settle in an hour.

Supply is therefore close to inelastic in the short run. When far more people want to transact, the network cannot manufacture extra capacity to meet them, so something else has to give.

Fees are bids rather than prices

Every transaction carries a fee that the sender attaches voluntarily. Whoever assembles the next block chooses which pending transactions to include, and the attached fee is the main signal used to rank them.

That makes the fee a bid in a continuous auction rather than a published tariff. A sender who wants a place in the very next block raises the bid, while one content to wait can offer far less.

When the queue of pending transactions is short, almost any reasonable bid clears quickly. When the queue is long, the marginal fee needed to get included climbs sharply, because bidders are competing against each other rather than against a fixed rate.

Demand arrives in bursts

Activity on these networks is anything but smooth. A heavily anticipated token launch, a violent price move or a wave of forced liquidations can push an enormous number of transactions into the queue at once.

Automated participants amplify the effect considerably. Trading programs react to the same triggers within the same instant, and they bid aggressively because their profit depends on being ordered ahead of everyone else.

The result is a spike concentrated into a few minutes, followed by a steep fall once the backlog drains. Ordinary users who happened to transact during that window paid the price of an auction they never entered deliberately.

Design choices decide who feels the crowding

Networks handle congestion in different ways. Some calculate a base fee automatically that rises as blocks fill and falls as they empty, which makes the price move predictably instead of through blind guessing.

Others push routine activity onto secondary layers that bundle many transactions together and settle them on the main chain as a single entry, spreading one fee across a large group of users.

Neither approach removes the underlying constraint, and neither is meant to. Congestion still prices access, and the smallest transfers become uneconomic first because the fee is fixed per transaction rather than proportional to the amount sent.