Solana Address Validator

Check that a Solana address is well-formed and find out whether it is a regular wallet account or a program-derived address (PDA) such as a token account. Works for SOL, USDC and USDT on Solana.

Paste up to 200 addresses. Each is decoded, its checksum verified, and the network and address type identified.
Pick the network you intend to send on. A valid address of the wrong network is flagged.

Checked in your browser with JavaScript. Addresses are never uploaded or stored.

What is a Solana address validator?

A Solana address validator checks that a string is the Base58 encoding of exactly 32 bytes, the size of an ed25519 public key, and then tests whether those bytes decode to a point on the ed25519 curve. On-curve keys belong to ordinary wallets; off-curve values are program-derived addresses (PDAs). Solana addresses carry no checksum, so the curve test is the only typo detection available.

What the result tells you

How the curve check works

An ed25519 public key encodes the y-coordinate of a curve point plus one sign bit. From y the tool computes x² = (y² − 1) / (d·y² + 1) modulo 2²⁵⁵ − 19 and tests whether x² has a square root. If it does, a point exists and the key could have a private key; if not, the address is off-curve. The arithmetic runs in your browser with BigInt.

Common Solana address mistakes

  1. Missing last character. Chat apps sometimes truncate long strings. A 43-character address that should be 44 will decode to the wrong length and fail.
  2. Confusing a mint with a wallet. USDC's mint address EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v is a valid address, but sending tokens there burns them. Only send to addresses a person gave you as their wallet.
  3. Pasting an Ethereum address. 0x… is not Solana. Bridges aside, assets sent cross-format are lost.

Create a Solana Pay code for a verified address with the Solana Pay QR generator.

Frequently asked questions

How long is a Solana address?

A Solana address is a 32-byte ed25519 public key encoded in Base58, which gives 32 to 44 characters, typically 43 or 44. It uses the Bitcoin Base58 alphabet, so 0, O, I and l never appear.

Why is there no checksum?

Solana chose raw public keys without checksum bytes to keep addresses short. The downside is that any 32-byte value looks valid. This tool compensates by checking that the point lies on the ed25519 curve, which a random typo fails about half the time.

What is a program-derived address?

A PDA is an address deliberately generated off the curve so that no private key exists for it; a program controls it instead. Associated token accounts, exchange deposit sub-accounts and protocol vaults are PDAs. Sending SOL to one is only correct if the owner told you that exact address.

Should I send USDC to my wallet address or my token account?

Send to the wallet address (the on-curve key). Wallets and exchanges derive the associated token account automatically. Sending to a token account address directly can work but is error-prone.

Can this detect a wrong-network address?

Yes. Ethereum 0x, Tron T… and Bitcoin addresses are recognised and flagged as not Solana when the Solana network is selected.