Rent

The small SOL deposit required to store data on-chain, calculated by account size, which is fully refundable when you close the account, so accounts holding two years' worth of rent are exempt from ongoing charges.

What is Rent?

Rent is Solana's way of ensuring accounts pay for the space they take up. Today, every account is "rent exempt": it doesn't pay a per-use fee, it just keeps a minimum SOL deposit equivalent to its size, and the full deposit is refunded when the account is deleted. The name is actually archaic; the rent collector function was deactivated years ago, and rent-exempt deposits are the only type of account currently used.

Imagine a returnable bottle deposit. The store charges an extra 10c per bottle- not a fee, but a hostage. If you return the bottle the 10c gets refunded in full. Similarly Solana requires you to post a deposit per byte of state you take up, and if you delete your account every lamport goes back to whatever wallet you send it to.

Rent In Detail

The deposit amount increases based on how much space the account takes up. To get a small account with no data, you need about 0.00089 SOL. A common token account, of 165 bytes, needs about 0.002 SOL (which is $0.16 assuming SOL is at $80). Programs that hold larger state have similarly larger deposits. Neither a validator nor the Solana Foundation holds these SOL; rather, they just hang out in the account balance and are paid out when the account is deleted.

The cost usually accumulates silently on the user's first interaction. Say you do your first swap on Jupiter into a new token. An Associated Token Account gets silently created behind the scenes; you paid 0.002 SOL for the creation of the ATA. Mint an NFT, and the Metaplex standard creates three accounts (mint, associated token account, metadata)- all with their own deposits. Someone who is actively doing DeFi can be easily sitting on 0.05 SOL or more in deposits by opening positions in different DeFi lending protocols like Kamino and Solend.

There are changes happening in the next year on this, and the timing may affect things. Solana is undergoing upgrades to reduce the account creation cost. The upgrades will come online through gradual feature activation, and the goal is to lower account creation costs by 90%. The SIMD-0389 proposal by Solana Labs engineer Brennan Watt would cut the account rent-exempt cost to just 1/10th- an average account could go from around 0.0015 SOL to 0.00015 SOL. He cites one motivation as the fact that billions of dollars of SOL are currently trapped in accounts too small to be worth closing.

How Rent Compares to Ethereum

On Ethereum, you pay for storage upfront in the form of gas on write, and the gas is then never refundable. Ethereum originally required 20,000 gas to allocate a fresh storage slot, but refunds for storage clearing were drastically reduced (from 15000 gas to 5000 gas) in EIP-3529 in 2021. One of the most pressing long-term technical challenges with Ethereum is the state bloat: millions of abandoned storage slots are never cleaned up by anyone, resulting in gigabytes of useless storage that no one is incentivized to remove. The refundable deposit mechanism of rent flips this incentive- the user literally gets paid to delete their dead accounts, and there are already tools developed to find and delete your old/unused token accounts to reclaim the rent.

Of course, the trade-off is that this approach pushes the cost forward to when accounts are created. So when a protocol tries to onboard their first million accounts, they actually have to bring in millions of dollars in new deposits to create all those accounts. It is also somewhat confusing for users, as 0.002 SOL seems to vanish at the moment of a swap until the user is told that it is only a deposit.

Why is Rent Important?

Rent has two effects that any new Solana user will eventually come across. The first is the confusing loss of value. Do a swap for a token on Jupiter for the first time and you notice that the value you are holding went down slightly more than the cost of doing the swap. This is because your new token is sitting in a token account and the creation of this new account is what "took the money." The second is a weird transaction error when you try and move an exact amount of SOL out of your wallet: "insufficient funds for rent, wallet size exceeds rent exemption threshold." Solana does not allow a wallet to fall below its rent-exempt deposit threshold, and you will always have a small amount of money left behind unless you use a "slippage" amount. Keep 0.01 SOL in your wallet (or more) if you want to avoid these headaches. If the account creation reductions come online in the next year, users will directly experience a 10x drop in how much it costs to onboard, mint, and open positions, which is very rare for protocol changes.

Do I lose my rent deposit?

Only if you don't clean your old token accounts up. If you do, Phantom and other cleanup tools will automatically find your orphaned token accounts, and delete them, returning the deposit to your wallet in a single transaction.

Contents

Writen By

Stay Updated - Follow us on X

Project review threads, dApp insights, announcements, news, and more.