Surfpool is a free, open source local development environment for Solana, built for developers who write and test programs on their own machine. It works as a drop-in replacement for solana-test-validator, so existing workflows can usually move over with little rework. The project is written in Rust and released under the Apache-2.0 license.
Its central idea is working with real mainnet state without downloading the entire chain. That lets you test against live account data while keeping the local setup light. The latest release is 1.7.0, and the most recent code update was made on October 30, 2026, so the project has been updated recently. This guide covers installing Surfpool for Windows, how it fits into a development workflow, and how it compares with similar tools.
What Is a Local Solana Test Environment?
A local test environment is a copy of blockchain behavior that runs on your own computer. Instead of deploying every experiment to a public network, you start a local instance, deploy your program there, and check how it behaves. This saves time and avoids spending real funds on trial and error.
Solana developers usually rely on a validator-like tool for this purpose. The tool processes transactions, keeps account state, and exposes an RPC endpoint that your client code can call. Surfpool fills that role on Windows, and it aims to match the behavior developers already expect from solana-test-validator.
Who Surfpool Is For
Surfpool is aimed at developers who build on Solana and want a faster feedback loop. Typical users include smart contract developers writing and debugging programs, QA engineers building integration tests, and teams that run automated checks before each release.
A realistic scenario is a developer testing a token transfer flow. They need accounts that look like the real network, but they do not want to fund wallets on a public chain for every attempt. A local environment with mainnet-derived state gives them that middle ground, and the same test scripts can run repeatedly without manual cleanup.
Why Working With Mainnet State Matters
Many bugs only appear when code meets real data. A program may behave correctly with empty test accounts but fail when it encounters balances, token accounts or configurations that exist on mainnet. Testing against mainnet-like state helps catch these issues earlier.
The trade-off is that live data changes over time, so results can differ between runs. Good practice is to record which state you tested against, keep assertions focused on logic rather than exact balances, and rerun critical tests when your dependencies change. Surfpool gives you the access, but disciplined test design still matters.
Key features
Drop-in solana-test-validator replacement
Mainnet state without the full chain
Open source and built in Rust
Supported coins
The documentation mentions Solana (SOL) and USDC, which reflects the project's focus on the Solana ecosystem. Test scenarios involving SOL transfers or USDC token accounts are the most direct use cases. Surfpool is built for Solana development rather than for other blockchains.
How to install Surfpool on Windows
PS> scoop install surfpool - 1
Install Scoop if you do not have it
Scoop is a command-line package manager for Windows that handles downloads and PATH setup. Install it first, then download Surfpool only from the official website at surfpool.run or from the project's GitHub Releases page.
- 2
Run the install command
Open PowerShell and run scoop install surfpool. Scoop fetches the packaged program and places it where your shell can find it, so you do not need to edit system settings by hand.
- 3
Confirm the installation
Open a new terminal window so the updated PATH is loaded, then check that the surfpool command runs. If Windows reports that the command is not found, close all terminals, reopen one, and try again.
-
Optional: use Docker
Docker is also listed as a supported platform. If you prefer an isolated environment or do not want to use Scoop, you can run Surfpool in a container. Follow the container instructions in the project's GitHub repository.
How to use Surfpool
Surfpool is meant to fit into a workflow you already have. Once the program is installed, the typical pattern is to start a local instance, point your tests or client code at it, and iterate. The steps below describe a general flow. Check the project's documentation for exact options and flags.
- Open a terminal in your Solana project folder.
- Start Surfpool by running the surfpool command.
- Wait for the local instance to start and note the local RPC address shown in the output.
- Point your Solana client or test suite at that local address instead of solana-test-validator.
- Deploy your program or run your test script against the local environment.
- Stop the instance when you finish, and review the output for errors before changing your code.
Pros & cons
- Drop-in replacement for solana-test-validator
- Works with mainnet state without downloading the full chain
- Free and open source under the Apache-2.0 license
- Written in Rust, with source code available on GitHub
- Available through Scoop on Windows and also listed for Docker
- Aimed at developers, so it is not a general-purpose node for everyday users
- Windows installation runs through Scoop or Docker, which adds a step for users who have neither
- Assumes familiarity with Solana tooling and concepts
- Mainnet-derived state changes over time, so test results can vary between runs
Is Surfpool safe?
Surfpool is a development tool rather than a wallet, but it still runs code on your machine, so basic precautions apply. Download only from the official website, surfpool.run, or from the project's GitHub Releases page at github.com/solana-foundation/surfpool. Before you run the installer or binary, verify the SHA-256 checksum or signature published with the release. Never enter a seed phrase or private key on a third-party website, and keep real wallet keys out of test configuration files. Keep Windows Defender or your other security software and system updates active.
- Official source only. Download from surfpool.run. Ignore ads and lookalike domains.
- Check the SHA-256. Compare the installer hash with the value the developer publishes before running it.
- Never share your seed phrase. No developer, support agent or website — including CryptApps — will ever ask for it.
Alternatives
Surfpool and Agave both belong to the Solana tooling family, but they solve different problems. Agave is a validator for the Solana blockchain, the software that runs a network node. Surfpool is a local development environment that stands in for solana-test-validator, so it is aimed at testing on your own machine. The original Solana repository has been archived, with its code moved into Agave, so it is mainly useful for reference. Geth and Bitcoin Core serve other chains, so they are not direct alternatives for Solana development.
Specifications
- Price
- Free
- Type
- Open source
- License
- Apache-2.0
- Latest version
- 1.7.0
- Last update
- 30 Oct 2026
- Windows support
- Yes (available via Scoop)
- Official site
- surfpool.run
- Source code
- github.com/solana-foundation/surfpool
- Install command
- scoop install surfpool
Frequently asked questions
Yes, Surfpool is free and released as open source under the Apache-2.0 license. You can download it, use it for development, and read or modify the source code on GitHub. On Windows, the simplest route is installing it with Scoop using the command scoop install surfpool. Docker is also listed as a platform if you prefer a containerized setup.
Surfpool is safe to install when you take standard precautions. Get the file from surfpool.run or the GitHub Releases page, and verify the SHA-256 checksum or signature before running it. Because it is a development tool and not a wallet, the main risk is running an untrusted binary, so checking the file's source matters most.
Yes, Surfpool is designed as a drop-in replacement for solana-test-validator. Existing workflows can often switch over with minimal changes. Its main addition is the ability to work with real mainnet state without syncing the whole chain, which suits tests that depend on live account data.
No. Surfpool is built so you can work with mainnet state without downloading the entire chain. That keeps setup faster and lighter than running a full node. You still need enough local resources to run the tool itself, but the storage burden is much smaller.
Install Scoop if you do not have it, then run scoop install surfpool in PowerShell. Open a new terminal window afterward so the command becomes available. Docker is an alternative if you prefer not to use Scoop, and the project's GitHub repository has details for that route.
The documentation mentions Solana (SOL) and USDC, so the project is focused on the Solana ecosystem. Those assets are the clearest starting point for tests that involve transfers or token balances. Surfpool is built for Solana development rather than other blockchains.
The latest release is version 1.7.0. The most recent code update was made on October 30, 2026, which shows the project is being actively worked on. Version numbers and release details can change, so compare your installed version against the latest release on the project's GitHub page.
Verdict
Surfpool is a strong pick for Solana developers on Windows who want a local environment that stands in for solana-test-validator and can work with mainnet state without downloading the entire chain. It is free, open source under Apache-2.0, and written in Rust. It is less suited to people who need a general node for everyday use or who have no interest in Solana development. Check surfpool.run for the latest version before you install.