Overview
FAQ
Short answers to the questions people ask first.
Trading#
Why does one pair have several pools?
Each pool has its own hook, fee and liquidity. A pair can have a plain pool, a dynamic-fee pool and a TWAP pool side by side. The swap page quotes all of them and chooses the best fill for you, so you don't have to know which is which.
My swap failed although the quote looked fine. Why?
Usually one of three things. The price moved past your slippage limit between the quote and execution (6007). The pool holds a filled range order and your swap would have moved the price back into it (7013). Or the transaction ran out of compute. In every case nothing was swapped; you paid only the network fee. See Errors.
Why is the fee in a dynamic-fee pool above its base fee?
The pool's hook raises the fee after swaps have been moving the price, and lets it decay back second by second while trading is calm. The receipt says when the fee came from the hook. See Dynamic fee.
Can a hook take my tokens?
Not directly. A hook never sees a vault, your token accounts or your signature. Within its pool's permissions it can raise the fee up to the pool's max fee, add a surcharge up to the pool's cap, or refuse your trade. Both limits are shown on the pool's page and in the swap receipt.
Does Socket take a cut?
No. The whole swap fee goes to the liquidity providers in range. A hook with the surcharge permission can charge extra for the pool's creator; none of the built-in hooks do.
Liquidity#
Why is my position "Out of range"?
The price has moved outside your range. The position isn't earning fees and is held entirely in one token. It earns again if the price comes back. You can withdraw it at any time.
Can I add liquidity to a range-order pool?
Only its owner can. A range-order pool's liquidity is the owner's order and nothing else. Anyone can swap against it.
Can I transfer a position to another wallet?
No. Positions are program accounts tied to the wallet that opened them. To move liquidity, withdraw it and deposit from the other wallet.
The app#
Why do pages take a few seconds to update after a transaction?
Socket reads finalized state only, so nothing shown can still be rolled back. A transaction is final about 13 seconds after it confirms; the app refreshes then.
Which wallets work?
Browser wallets that support the Wallet Standard, such as Phantom, Solflare and Backpack. Hardware wallets connected over USB are not supported in the app.
Can I create a pool with my own hook in the app?
Not in the app; it creates pools with the built-in hooks. Use the SDK or the API. See Write a hook.
SOCKET#
What is SOCKET for?
SOCKET is Socket's governance token. Holders vote on which hooks the app and API route trades through, and hook authors stake it behind the hooks they list. See The SOCKET token.
How was SOCKET distributed?
In a fair launch: the whole supply went into one public launch on the same terms for everyone. There was no presale, no team or investor allocation, no airdrop and no vesting. Providing liquidity earns the pool's fees, not SOCKET.