Airdrops & Balances
Fund dev and test wallets with faucet airdrops and inspect SOL balances from the CLI before you send transactions.
Search across all documentation pages
Fund dev and test wallets with faucet airdrops and inspect SOL balances from the CLI before you send transactions.
Quick-reference recipe card - copy-paste ready.
solana config set --url devnet
solana airdrop 2
solana balance
solana balance <PUBKEY>When to reach for this:
solana-test-validator.solana config set --url devnet
solana config set --keypair ~/.config/solana/id.json
# Request 2 SOL (subject to faucet rate limits)
solana airdrop 2
solana confirm -v $(solana transfer --from ~/.config/solana/id.json \
"$(solana address)" 0.001 --allow-unfunded-recipient --dry-run 2>/dev/null | head -1) 2>/dev/null || true
solana balance
solana balance "$(solana address)"What this demonstrates:
solana balance reads lamports and formats as SOL.solana airdrop requests lamports from the cluster faucet (devnet/testnet only).getBalance over JSON-RPC and converts to SOL for display.| Cluster | Faucet | Typical limit |
|---|---|---|
| devnet | Public RPC faucet | Rate-limited per IP/key |
| testnet | Public faucet | Lower traffic than devnet |
| mainnet-beta | None | Real SOL required |
| localnet | solana-test-validator | Generous for local keys |
# Airdrop to a specific pubkey (not only default keypair)
solana airdrop 1 <RECIPIENT_PUBKEY>
# Watch balance after a transfer
watch -n 2 solana balancesolana balance first; airdrop 1-2 SOL on devnet.solana config get and verify RPC URL.solana account when debugging.| Alternative | Use When | Don't Use When |
|---|---|---|
solana-test-validator faucet | Unlimited local iteration | You need real program state from mainnet |
| Provider devnet faucets (Helius, etc.) | Higher rate limits | You want zero external dependencies |
| Manual transfer from funded wallet | Team shared dev pool | Solo first-time setup |
spl-token minting | Testing tokens, not native SOL | Paying transaction fees |
1-2 SOL is enough for thousands of devnet transactions. Request more only when testing large transfers or rent-heavy account creation.
Devnet faucets throttle by IP and pubkey. Wait 24 hours, use localnet, or fund from a teammate's wallet.
Yes: solana airdrop 2 <PUBKEY> while pointed at devnet or testnet.
solana balance shows total lamports. Token and data accounts also hold rent-exempt minimums separate from your wallet balance display context.
Point config at http://127.0.0.1:8899, start solana-test-validator, then solana airdrop works against the local faucet.
A simple transfer costs 5,000 lamports base fee plus priority fee. Keep at least 0.01 SOL on dev wallets for headroom.
Usually one slot (~400ms). Use solana confirm <SIGNATURE> when scripting funding steps.
Yes with solana config set --url testnet. Faucet availability varies - devnet is the default choice.
Use solana account <PUBKEY> and read the lamports field in the output.
Often blocked by shared IP rate limits. Pre-fund a CI keypair once and store it as an encrypted secret, or use localnet in pipelines.
Stack versions: This page was written for Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0, and LiteSVM 0.6.x.
Reviewed by Chris St. John·Last updated Jul 16, 2026