0xMowgli.

/ Writing · · 6 min read

Solana rent in 2026: what an account costs now, and how to get the difference back

By Oussama Allamou · Solana · Rent · Token Accounts · Infrastructure

A Solana account must hold a deposit of (128 + its data size) × a rate in lamports per byte. That rate was 6,960 until September 3, 2026. It is 5,080 today and is planned to reach 696, a 90% cut, in five steps (SIMD-0437). A token account now costs 0.00148844 SOL to create, down from 0.00203928, and will cost 0.000203928 after the last step.

Every figure on this page can be checked with one RPC call, and I show the call below. Pick an account and a step.

The formula

(128 + 165 bytes) × 5,080 lamports

= 1,488,440 lamports

Deposit to create it
0.00148844 SOL
Deposit before September 2026
0.00203928 SOL
An account funded at the old rate can take back
0.00055084 SOL
Try it · Rent by account and step5,080 / byte
27% cheaper

Token account, 165 bytes of data, at 5,080 lamports per byte (live since September 11, 2026). This is the rate mainnet uses today.

Every account pays for its data plus 128 bytes of metadata, so even an empty wallet has a minimum. The deposit is not spent. It comes back in full when the account is closed.

AccountRate

How much does a Solana account cost now?

AccountData bytesBeforeTodayAfter step 5
Wallet00.000890880.000650240.000089088
Token mint820.00146160.00106680.00014616
Token account1650.002039280.001488440.000203928
Stake account2000.002282880.001666240.000228288

Amounts are in SOL. "Today" is the rate I read from mainnet on October 11, 2026, and the last column is the target, not a promise.

The 128 is account metadata that every account pays for, which is why a wallet with no data still has a minimum. The word rent is old. Nothing is charged over time. The amount is a deposit that makes the account exempt, and it comes back in full when the account is closed.

What are the five steps, and which are live?

StepLamports per byteCutStatus
Before6,960Until September 3, 2026
16,3339%Live since September 3, 2026 (epoch 1028)
25,08027%Live since September 11, 2026 (epoch 1033)
32,57563%Expected with Agave 4.4
41,32281%Expected with Agave 4.4
569690%Expected with Agave 4.4

Each step is its own feature gate. The developers decide on each one after looking at how much new state the previous step produced, and there is a fallback gate that puts the rate back to 6,960. A second proposal, SIMD-0392, would allow raising it again later. So treat the rate as a value that moves in both directions.

How do I check the rent on mainnet myself?

curl -s https://api.mainnet-beta.solana.com -X POST -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"getMinimumBalanceForRentExemption","params":[165]}'

{"jsonrpc":"2.0","result":1488440,"id":1}

echo $((1488440 / (128 + 165)))

5080

curl -s https://api.mainnet-beta.solana.com -X POST -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"getMinimumBalanceForRentExemption","params":[0]}'

{"jsonrpc":"2.0","result":650240,"id":1}

Explainer · Reading the rent from mainnet
  1. Command 01Ask for the minimum

    getMinimumBalanceForRentExemption takes the data size in bytes. 165 is a token account. This is the answer mainnet gave on October 11, 2026.

  2. Command 02Work out the rate

    Divide by the data size plus the 128 bytes of metadata. 5,080 is step 2.

  3. Command 03Try an empty account

    Zero data bytes still costs 128 × 5,080 lamports. This is the least a wallet can hold.

When the result for 165 bytes drops to 754,475 the third step is live, 387,346 is the fourth and 203,928 is the last.

What happens to accounts I created before the cut?

They keep every lamport. An account opened at the old rate now holds more than the minimum, and each new step widens that gap. The network does not send the difference anywhere. It stays in the account until someone with authority over it moves it.

Locked at the old rate · 6,960
2.03928 SOL
Locked today · 5,080
1.48844 SOL
Locked after step 5 · 696
0.203928 SOL
Try it · Your accounts
1,000 × 165 bytes

Accounts you opened before September 2026 hold 0.55084 SOL more than they need today, and would hold 1.835352 SOL more than they need after the last step.

Nothing is refunded on its own. The extra stays in each account until its owner withdraws it or closes the account. Steps 3 to 5 are planned, not scheduled, so the last row is a target.

How you take it out depends on who owns the account:

  • Token accounts and mints, on both the Token program and Token-2022: the WithdrawExcessLamports instruction moves everything above the minimum to a destination you choose. The account stays open and the token balance does not change. The account's owner signs, or the mint authority for a mint.
  • Wallets: the extra is ordinary balance. You can already send it.
  • Stake accounts: a normal stake withdrawal.
  • Accounts owned by a program (PDAs): only an instruction in that program can move lamports out. If the program has none, the extra stays until the account is closed.
  • Any account you can close: closing returns the whole balance, old deposit included.

What should I change in my code?

  1. Remove typed-in minimums. 2039280 for a token account and 890880 for a wallet are the old values. Paying them still works and wastes the difference on every account you open.
  2. Do not type in the new ones either. The rate has three more steps and a way back up. Call getMinimumBalanceForRentExemption, or read the Rent sysvar inside a program, and cache it for minutes, not forever.
  3. Fix the "minimum SOL to keep" rule. A wallet check that refuses to go below 0.00089088 SOL is now stricter than the chain.
  4. Recount what a trade costs. A bot that opens a token account per coin pays about 27% less per account today. I wrote about the other number that moved under bots this autumn in how long a Solana slot is now.
  5. Sweep the extra. If you run many token accounts, one pass of WithdrawExcessLamports now, and one after each later step, returns the difference without closing anything.
  6. Expect more accounts. Cheaper deposits mean more state for indexers to follow. Formats do not change.

Fewer accounts per trade matter for the same reason. The new Pump v3 trade instructions drop ten of them.

What do the terms mean?

  • Lamport: the smallest unit of SOL. One SOL is 1,000,000,000 lamports.
  • Rent-exempt minimum: the balance an account must hold to exist. It is a deposit, not a recurring charge.
  • Lamports per byte: the rate the minimum is computed from. 5,080 on mainnet on October 11, 2026.
  • Account overhead: the 128 bytes of metadata every account is charged for on top of its data.
  • Excess lamports: what an account holds above its minimum.
  • Feature gate: a switch in the validator software that turns on at an epoch boundary.

FAQ

How much SOL does a token account cost in 2026?

0.00148844 SOL on October 11, 2026, which is (128 + 165) bytes at 5,080 lamports per byte. It was 0.00203928 SOL until September 3, 2026 and is planned to reach 0.000203928 SOL after the fifth step.

What is the minimum SOL balance for a wallet now?

650,240 lamports, or 0.00065024 SOL, on October 11, 2026. It was 890,880 lamports before the cut and would be 89,088 after the last step.

Do I get a refund for rent I paid before the reduction?

Not automatically. The lamports stay in your account. For token accounts and mints you can withdraw the part above the new minimum with WithdrawExcessLamports, and closing any account returns its whole balance.

Is Solana rent charged over time?

No. The rent-exempt minimum is a one-time deposit that sits in the account. It is returned in full when the account is closed.

Can Solana rent go back up?

Yes. The rollout includes a fallback gate that resets the rate to 6,960 lamports per byte, and SIMD-0392 would allow increases later. Read the current value from the network when you need it.

Further reading