deploya tokenTools / Native Wrapper

Wrap and Unwrap SOL

Turn a chain's native coin into its wrapped ERC-20 or SPL form, and back. Pools and many programs need the wrapped kind.

Solana0.1 SOL per use

Wallet not connected

Connect your wallet to wrap and unwrap SOL. You sign every action yourself, and nothing is custodial.

How to wrap and unwrap SOL

  1. Check whether you actually need this first. Most apps that want wSOL wrap it for you inside their own transaction, so you may have nothing to do here.
  2. Connect your wallet and choose Wrap or Unwrap.
  3. To wrap: enter an amount of SOL. Leave enough unwrapped to pay network fees, since a wallet with everything wrapped cannot pay for the transaction to unwrap it.
  4. To unwrap: the whole wSOL balance is returned at once, because unwrapping works by closing the account that holds it.
  5. Approve in your wallet. The amount never changes: one wSOL is one SOL in both directions, always.

Common questions

What is wrapped SOL?

The same SOL, held in a token account instead of directly in your wallet. Programs that expect an SPL token cannot accept plain SOL, so they accept this instead. Nothing is exchanged and no price is involved: one wSOL is one SOL, permanently and by construction.

Do I need to wrap SOL?

Probably not. If you are holding, sending or receiving SOL, plain SOL is what you want. You need wSOL only when something specifically asks for it, and most swap routes and pools wrap it for you as part of their own transaction without you ever seeing this step.

Is there any risk of losing value when wrapping?

No. There is no exchange rate, no slippage, no counterparty and no market. Wrapping puts your lamports into a token account and unwrapping takes them out again. The only cost is Solana's network fee and the small refundable rent deposit the account holds while it exists.

Why can I only unwrap everything at once?

Because of how unwrapping works: it closes the token account, and closing an account returns everything in it. There is no partial close. If you want to keep some wrapped, unwrap the lot and then wrap the amount you actually want.

I wrapped all my SOL and now nothing works. What happened?

You need unwrapped SOL to pay network fees, and if everything is wrapped there is nothing left to pay with. Send a small amount of SOL to the wallet from somewhere else, then unwrap normally. Always leave a little behind when wrapping.

Does wSOL expire or need managing?

No. It sits there indefinitely and stays worth exactly the SOL you put in. The only reason to unwrap is that you want ordinary SOL back, plus the rent deposit the account is holding.

Why wrapped SOL exists at all

Solana has two kinds of value that behave differently. SOL is native: it lives in your wallet account and pays for transactions. Everything else is an SPL token, which lives in its own token account and follows the token program's rules.

That split is convenient until a program needs to handle both. A liquidity pool holding a token on one side and SOL on the other would need two entirely separate code paths. Wrapped SOL removes the problem by making SOL look like a token: same value, standard token interface, one code path.

What actually happens when you wrap

A wSOL account is an ordinary token account for the native mint, and its lamport balance is its token balance. So wrapping is three steps: create the account, put lamports in it, and tell the token program to notice. Unwrapping is one step: close the account, which returns every lamport in it to you.

Nothing is traded, nobody holds anything on your behalf, and no rate is involved. This is the rare corner of Solana where there is genuinely nothing to worry about beyond the network fee.

The one mistake worth avoiding

Do not wrap everything. Network fees are paid in unwrapped SOL, so a wallet whose entire balance is wrapped cannot afford the transaction that would unwrap it. The fix is easy, send a little SOL from elsewhere, but it is an annoying thing to learn at the moment you are trying to do something else. Leave a small amount unwrapped.

On an EVM chain it is a contract, not an account

Pick any of the EVM chains in the sidebar and the same idea works through a different mechanism. There is no rent and no account to open or close: a wrapped native token is an ordinary ERC-20 whose contract holds one unit of the chain's currency for every unit it has issued. deposit() pays in and mints; withdraw() burns and pays out. One for one, both ways, with no price and no counterparty, exactly as on Solana.

Two differences worth knowing. Unwrapping takes an amount rather than the whole balance, because there is no account being closed, so a Max button is offered there and deliberately not on the wrapping side: wrapping everything leaves nothing to pay for the transaction that would unwrap it again.

And the address is checked before anything is offered. This is the only tool here that sends a chain's own currency to an address that came out of a table, and an address with no code would accept it silently and permanently. So the contract is read first, and a chain whose address has not been confirmed is refused by name rather than served a guess.

Related tools

Sources