Proposal: Using a Harberger Tax in the Global State Machine

Tea Project Blog
4 min readJun 18, 2022


The Harberger Tax is a type of taxation scheme designed to encourage the efficient allocation of finite (and therefore scarce) resources.

There are specifically two resources related to the global state maintainer nodes that the TEA Project ecosystem is looking to protect:

  • The state memory.
  • The global state machine nodes.

The State Memory

Developers will need to utilize the global state memory for their apps to update their apps’ status. TEA Project app developers must contend with the fact that the state memory is a limited resource and will have costs associated with using it.

The two costs are as follows:

  • Devs will need to purchase the state memory token issued on a bonding curve, where the privilege of using 1 MB of state memory is denominated as one token’s worth.
  • There’s also an associated state memory tax calculated as follows: the current state memory token price x 1% (the tax percentage is determined by the DAO). This amount is calculated every day (24 hours).

The state memory tax is calculated based on how many tokens are held by the developer (or user/speculator). If a dev purchases 4 tokens worth of state memory, then that associated 4 MB of state memory will be subtracted from the total state memory. The developer will be taxed on those 4 tokens whether or not their app utilizes all available 4 MB. The state memory token can therefore be considered a “hot” asset in that it’ll burn a hole in the developer’s / speculator’s pocket (through the state memory tax) just by holding it.

The state memory is a limited resource that’s shared among all TApps. The TEA tokenomics design must therefore incentivize efficient usage of this scarce resource. That’s why we’ve implemented a mechanism similar to the Harberger Tax as devs must constantly judge if it’s worth the carrying costs of being taxed for the state memory they’ve claimed.

Here’s a visual diagram showing the money flow of the state memory tax. Note that these payments are divided among all the global nodes and is the sole source of revenue for the global node operators.

For every 1 token (equalling 1 MB of state memory), devs are taxed (the token price) * 1% every day.

Consequences of the State Memory Tax

Note that the state memory tax is the sole source of the global state maintainer nodes’ revenue, but it doesn’t go directly to the node owners. The revenue is split between being paid out as dividends to the global bonding curve token holders (where the CML node owner probably owns a large share) and as public service rewards to hosting CML. So being a global CML node owner (or a staker to these nodes) makes one very interested in how well the TApps are doing in the TEA ecosystem.

The practical consequences of the state memory tax are that in a downturn with low app usage & resource utilization by TApps, there’ll be less need for the state memory tokens by apps. Therefore the price of these tokens will be lower, which means there’ll be fewer taxes paid by app developers and less money made by the global state maintainer node operators.

In a time of great demand in the TEA ecosystem, the opposite occurs. There’s a surge in demand for state memory, causing its price to rise and more revenue for global state maintainer node operators. There’s a potential issue if memory prices go too high that it might pressure devs to shut down their TApps as they’ll be squeezed out in the race for state memory.

Global State Machine Maintainer Tax

As noted above, the global state maintainer nodes receives an even share of the state memory tax paid by TApp developers. But this revenue isn’t free in that they have to pay a tax that’s based on the following formula:

Tax rate (7%) * the miner’s self-assessed value (CML) = daily global state machine maintainer tax

• The DAO sets the tax rate for global node owners.
• The miner’s self-assessed value for their CML is where the Harberger Tax dynamics come into play. If a miner sets this value too low (in an effort to lower their tax burden), then another user can purchase the CML at the self-assessed price.

Note that the miner’s self-assessed value for their state maintainer node licenses is the value in the maintainer tax that they can control. Suppose there’s considerable demand in the TEA ecosystem for app utilization. In that case, the state memory taxes will be higher than average, and the global state maintainer node operators will be enjoying a great increase in mining profits. In that case, global state maintainer node owners will likely increase their self-assessed value. But then their taxes begin to climb for operating a global state maintainer node, so there’s always an equilibrium that must be maintained between revenue and expenses (taxes).

Some Practical Consequences of the Global State Machine Maintainer Tax

The self-assessed value of the global state maintainer node is what’s controlled by the global CML owner and through which the Harberger tax dynamics operate. If the CML owner sets too high of an assessed value, they end up paying unnecessarily high taxes. If they set it too low, then an opportunistic buyer can swoop in and pay a bargain price to claim the CML. The self-assessment is not only for tax purposes, but an actual price at which others in the ecosystem can buy the CML away from you.

These are all preliminary sketches as the TEA Project is undergoing a revamp of its tokenomics. Please share your thoughts in the comments, in Github Discussions, or in our Telegram.