Another simple Gas fee model: The "Escalator Algorithm" from the Agoric Papers

Important questions are raised that I think would benefit from a bit more clarity on the user tip (really the “gas premium”) vs. actual miner revenue. The user specifies both a gas premium and a fee cap. The miner receives either the whole gas premium, or the fee cap minus the prevailing basefee, whichever is lower. Unless miners artificially depress the basefee to recreate a first-price auction, the basefee and the miner revenue are only interacting or in conflict when basefee + premium > fee cap for a tx.

In a tale of two users, say A’s tip is set to 2 Gwei and B’s to 1 Gwei. Take basefee = 5 Gwei. A sets the fee cap to 7 Gwei (they are not willing to pay more than the current basefee and their tip), while B sets the fee cap to 10. Suppose the network is congested and basefee jumps to 6.5. The miner including A’s tx would receive 0.5 Gwei (feecap 7 - basefee 6.5) while including B’s yields 1 Gwei (B’s premium), so B would have the advantage. I give another worked example here where a miner who knows they will mine the next two blocks can optimise their rewards by controlling the basefee.

In this sense, fee cap expresses some of the time preference that the escalator is able to more fully describe, in that higher fee cap => less chance of your transaction premium eaten away by the basefee => your transaction “drops out” later than others. I expect that the fee cap, by default, would be set at least to current basefee + gas premium (although there hasn’t been much discussion on how fee cap would be set, implicitly it seems people use the “fee cap = current basefee + gas premium + a small margin in case basefee goes up” heuristic, but to me this is underexplored atm), except in very high congestion cases (the super super 1000 Gwei txs) where a wallet could warn you that the current price levels are in the .01% top quantile historically. In any case the “tip” has more complicated dynamics than a once and for all user-set value.

  • If fee cap > current basefee + gas premium, miners do not get anything from lowering the basefee, as they still only get the full gas premium only.
  • If fee cap < current basefee + gas premium, as a user I am expressing that the current price level is too high, but I would be willing to get in later. Miners might still include my transaction if basefee < fee cap, though they may not reap the whole gas premium. That they might “game” the basefee to get the whole gas premium does not seem like it goes contrary to the mechanism’s intent in this case: if as a user I wanted to get in faster, I should have set a higher fee cap than I did.

In this light, let’s try to address the intuition that by keeping basefee arbitrarily low, miners can reproduce a first-price auction setting. In a non-congested setting, it doesn’t seem to me that miners can push users to a bidding war and from the point of view of gas premiums/fee caps, there is no reason why miners shouldn’t eat their whole cake either, whether they depress the basefee or not.

In a high congestion setting, miners can observe users’ willingness to pay by looking at the fee caps (or some lower bound of WTP at the very least, since it’s unlikely users would consistently set the fee cap above their WTP). With this observation, they can gauge “how much money is on the table”. Whether they can consistently depress the basefee is unclear, since as they do so, gas premiums would tend towards true WTP, in which case the “money on the table” keeps increasing. Does it reach a point where artificially not including these transactions becomes more unprofitable than being greedy and playing the short term strategy of simply maxing out your rewards? Likely it does, though this is something more thorough analysis could tell us.

Assuming for instance that all miners are colluding and have common beliefs about the WTP which they can all observe, as the premiums go up, it degenerates quickly to a game of Corvid as @danfinlay tweeted about :slight_smile: What if you knew and you knew everybody knew that premiums were at 80% of the WTP? Would you care to wait much longer? But if you knew that people wouldn’t wait much longer, wouldn’t you move a bit earlier? etc. etc. Unless people could durably censor your blocks (“tit-for-tat”) I think collusions are very unstable in this scenario.

2 Likes