Swap on Solana with Jupiter
How to use Jupiter, Solana's leading DEX aggregator: limit orders, perps, DCA, and Sanctum LSTs.
What you'll need (prerequisites)
- Self-custodial Solana wallet (Phantom, Solflare, Backpack, etc.)
- SOL for network fees
- Tokens to swap on Solana with
- Familiarity with transaction approvals
Recommended for this tutorial
Tools and accounts referenced in the steps below:
Step-by-step
-
Step 1: Connect a self-custodial wallet
Open Jupiter's official site (verify the URL — phishing fakes are common). Click "Connect Wallet" and choose your Solana wallet (Phantom, Solflare, Backpack, hardware). Approve the signature request — this does not move funds.
-
Step 2: Confirm you are on Solana
Jupiter runs on Solana. Make sure your wallet is set to the Solana network before connecting. Wrong-network connections are a common source of UX confusion.
-
Step 3: Acquire the input tokens
Most Jupiter actions require both the token you want to swap and some SOL to pay network fees. Hold a small SOL buffer for transaction fees.
-
Step 4: Review the quote and route
Jupiter routes your swap across Solana liquidity venues to find the best price. Review the quote, price impact, and the route before continuing. On Solana a swap is executed as a single signed transaction — there is no separate standing ERC-20-style allowance to grant.
-
Step 5: Execute the swap on Solana transaction
Enter the amount, review the slippage tolerance (0.1-0.5% for stablecoins, 0.5-1% for blue chips, more for thin-liquidity tokens). Click confirm and approve in your wallet. Wait for on-chain confirmation.
-
Step 6: Verify on-chain
Open the transaction on a Solana block explorer (Solscan or Solana Explorer). Confirm the balance change matches expectations. Save the transaction signature for tax records.
Common errors and fixes
- Transaction reverted. Most reverts are slippage exceeded, allowance not set, or insufficient gas. Increase slippage marginally and retry, or check Tenderly for the revert reason.
- Transaction expired or dropped. On Solana, transactions that miss their blockhash window simply fail rather than sitting pending — retry the swap, and add a priority fee during periods of high congestion.
- Approved a malicious contract. Immediately revoke at revoke.cash. Move remaining tokens to a fresh wallet if you suspect ongoing compromise.
- Wrong network. Switch chains in your wallet. If funds were sent cross-chain to a contract that doesn't exist on the destination, contact the bridge support.
- Slippage too high. For thin-liquidity tokens, split the swap into smaller chunks — Jupiter already routes across venues to find the best path, so smaller sizes reduce price impact.
FAQ
Is Jupiter safe?
Jupiter is one of the most widely used and audited protocols in DeFi. As with any smart-contract platform, residual risk includes: smart-contract bugs, oracle failure, governance attack, and economic exploits. Diversify across protocols and never deposit more than you can afford to lose.
What are the fees for Jupiter?
Protocol-level fees vary by action and chain. Network gas adds another $0.50-50 depending on chain congestion (much cheaper on L2s and Solana than Ethereum mainnet). Always preview fees before confirming.
Can I undo the transaction?
On-chain transactions are irreversible. Always test with small amounts first, double-check addresses and amounts, and use simulation tools (Tenderly, Pocket Universe) to preview the outcome.
Does Jupiter have an audit?
Yes — Jupiter has been audited by tier-1 firms (typically Trail of Bits, OpenZeppelin, ChainSecurity, Zellic, Spearbit). Audit reports are linked from the official docs. Audits reduce but never eliminate risk.
What is impermanent loss / liquidation risk?
For LP positions, impermanent loss is the difference between holding the LP vs holding the underlying tokens — it grows with price divergence. For lending positions, liquidation risk grows as collateral price falls; maintain a health factor well above 1.