If you're running transactions on a testnet, you need testnet ETH — or testnet SOL, testnet MATIC, depending on the network. You won't find it on any exchange. It can't be bought. It's distributed through faucets: web services that send small amounts of test tokens to any address that requests them.
The concept is simple. The execution has a few friction points worth knowing upfront.
A faucet is a web interface (or API endpoint) that holds a reserve of testnet tokens and sends a fixed amount to any address on request. The tokens have no monetary value — they exist solely so you can pay for gas on a test network without spending real money.
Faucets operate on the same basic mechanics as the testnet itself: transactions, gas, confirmations. The difference is that the network's consensus is typically maintained by a small number of nodes controlled by the development team, and the tokens are distributed freely by design.
When testnet ETH arrives in your wallet, it looks identical to mainnet ETH — same format, same address structure. The wallet doesn't visually distinguish between networks. You have to check which network you're connected to manually. This trips people up occasionally: the balance shows zero not because the faucet failed, but because you're viewing the mainnet view.
Here's the structural challenge: if tokens are free, someone will try to acquire large quantities to game anything that uses them. Draining a faucet removes testnet tokens from circulation for everyone else — other developers and testers suddenly can't work. This is why faucets have rate limits, eligibility requirements, and sometimes proof-of-work puzzles.
Common restrictions you'll encounter:
None of these are perfect. Together they keep faucets functional for legitimate users.
Sepolia is the primary Ethereum testnet for general use as of 2026. Goerli is deprecated — any guide directing you there is outdated. For Sepolia ETH:
Alchemy Sepolia Faucet (sepoliafaucet.com) — Requires a free Alchemy account. Sends 0.5 Sepolia ETH per day. Generally the most reliable option. Mainnet balance requirement is active.
Google Cloud Faucet (cloud.google.com/application/web3/faucet) — No account required, which makes it the lowest-friction starting point. Smaller amounts; rate-limited by IP. Good for getting started quickly.
QuickNode Faucet — Supports multiple testnets. Requires a QuickNode account but the free tier is sufficient.
Chainlink Faucet — Gives both testnet ETH and testnet LINK on several networks. Useful specifically if you need LINK for any Chainlink-related integration testing.
Infura Faucet — Requires an Infura account. Replenishment times can be slow during high demand periods.
For Holesky (used for staking and validator testing specifically): QuickNode and pk910.de/holesky-pow-faucet are common sources. Holesky faucets tend to be more restrictive because staking tests require larger ETH amounts to simulate realistic scenarios.
For Solana devnet: the Solana CLI command solana airdrop 2 is the standard developer path. The web interface at faucet.solana.com also works and doesn't require CLI setup. Devnet airdrops are capped at 2 SOL per request.
Faucets run dry during periods of high demand — major protocol launches, hackathons, intensive testing windows. When this happens:
Try a different faucet. Rate limits are per-service, not global. If Alchemy is rate-limited, try Google Cloud or QuickNode. You'll likely get enough from a second source.
Ask in developer communities. Most testnet-active teams maintain their own reserves and will send testnet ETH to legitimate requests. The Ethereum Foundation Discord, Alchemy's Discord, and Chainlink's Discord are common venues for this.
Recycle existing testnet funds. If you've done testnet work before, check old wallets — unused testnet ETH persists on the network. Sending testnet ETH between your own wallets costs only testnet gas, which you can cover with what's already there.
Use local network tooling. Foundry's Anvil and Hardhat Network let you spin up a local Ethereum node with funded accounts — no faucet required. This is overkill for basic address or wallet testing, but it's the standard approach in smart contract development and removes the faucet dependency entirely.
Add Sepolia to your wallet. Settings → Networks → Add Network, or use Chainlist.org to add it with one click. Copy your wallet address. Go to a faucet — Google Cloud is the lowest-friction start if you don't have any developer accounts. Paste address. Complete authentication if required. Wait for testnet ETH to arrive, usually within two minutes.
The testnet ETH will show up in your wallet only when you're viewing the Sepolia network. Switch back to mainnet view and the balance won't display — expected behavior. If you're on Sepolia and the balance is still zero after a few minutes, use a block explorer (sepolia.etherscan.io) to check the address directly.
The testnet funding problem is actively debated in developer communities. The current model — centralized faucets with rate limits — creates real friction, especially for high-volume testing scenarios. Alternative approaches under discussion include proof-of-work faucets that reward computational contribution, and decentralized faucet networks. Neither has replaced the current model as of mid-2026.
One practical direction: account abstraction implementations don't require ETH for gas if the protocol sponsors transactions through paymasters. For some testing scenarios involving smart accounts specifically, it's possible to skip the faucet step entirely.
Now: Alchemy and Google Cloud Sepolia faucets are the standard paths for most users. Keep a small testnet ETH reserve rather than refilling each session — the rate limits make it easier to maintain a buffer than to restart each time.
Next: Faucet tooling is improving slowly. Better distribution mechanisms are a recognized gap in the developer experience, but not a high-priority fix.
Later: Local network tooling (Anvil, Hardhat) already makes faucets irrelevant for smart contract development environments. As tooling matures, the cases where you need a public faucet may narrow.
This covers how to get testnet tokens and what the structural constraints are. It doesn't address network configuration in depth, smart contract testing frameworks, or the mechanics of specific testnet deployments. Getting testnet ETH is the prerequisite step — the actual work happens with what you do with it once you have it.
The faucet landscape changes. If a specific URL stops working, the provider is either down, deprecated, or renamed — check the network's official developer documentation for the current recommended source.




