> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chainstack.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Bitcoin testnets: Testnet, Signet Testnet, and Testnet4

> Compare Testnet (testnet3), Signet Testnet, and Testnet4, the Bitcoin test networks on Chainstack, with network parameters, address formats, fee estimation on Testnet4, and a checklist for moving from Testnet (testnet3) to Testnet4.

Chainstack serves three Bitcoin test networks on Global Nodes: Testnet (testnet3), Signet Testnet, and Testnet4. Use Signet Testnet or Testnet4 for new work. Bitcoin Core marks testnet3 as deprecated, and Testnet4 replaces it with consensus rules that stop CPU miners from flooding the chain with blocks.

Every Bitcoin network on Chainstack, including the testnets, runs Bitcoin Core non-pruned with `txindex` enabled and serves the same JSON-RPC methods. See [Bitcoin methods](/docs/bitcoin-methods) for availability and [Bitcoin tooling](/docs/bitcoin-tooling) for connection examples.

## Which Bitcoin testnet to use

Testnet4 is the general-purpose public testnet that replaces Testnet (testnet3). Signet Testnet is the testnet that unauthorized miners cannot flood with blocks, because every block needs a signature from the signing keys.

| Network | Who produces blocks | Block production | Use it for |
| - | - | - | - |
| Testnet (testnet3) | Anyone, by proof of work | Deprecated in Bitcoin Core since version 28.0. Prone to block storms, which have pushed the chain past 5 million blocks. | Existing integrations that have not moved to Testnet4 |
| Signet Testnet | Holders of the default signet signing keys, by proof of work plus a signature ([BIP325](https://github.com/bitcoin/bips/blob/master/bip-0325.mediawiki)) | Blocks target a 10-minute interval, and only the signing keys can add blocks, so the chain has no block storms | Integration tests and demos that need a stable chain |
| Testnet4 | Anyone, by proof of work | Follows [BIP94](https://github.com/bitcoin/bips/blob/master/bip-0094.mediawiki). A block mined more than 20 minutes after the previous one may use the minimum difficulty, and blocks often carry only the coinbase transaction. | Wallets, exchanges, and services that need a public proof-of-work testnet in place of Testnet (testnet3) |

## Network parameters

The `chain` value and the genesis block hash identify each network. The Bitcoin Core options and default ports apply when you run your own Bitcoin Core next to your Chainstack node, for example for a local wallet. A Chainstack endpoint is HTTPS on port 443 for every network.

| Parameter | Testnet (testnet3) | Signet Testnet | Testnet4 |
| - | - | - | - |
| Network name on Chainstack | Testnet | Signet Testnet | Testnet4 |
| `chain` in `getblockchaininfo` | `test` | `signet` | `testnet4` |
| Genesis block hash | `000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943` | `00000008819873e925422c1ff0f99f7cc9bbb232af63a077a480a3633bee1ef6` | `00000000da84f2bafbbc53dee25a72ae507ff4914b867c565be350b0da8bf043` |
| Bitcoin Core option | `-testnet` | `-signet` | `-testnet4` |
| Config file section | `[test]` | `[signet]` | `[testnet4]` |
| Default P2P port | `18333` | `38333` | `48333` |
| Default RPC port | `18332` | `38332` | `48332` |
| Block explorer | [mempool.space/testnet](https://mempool.space/testnet) | [mempool.space/signet](https://mempool.space/signet) | [mempool.space/testnet4](https://mempool.space/testnet4) |

<Note>
  `bitcoin-cli` connects over plain HTTP only. Bitcoin Core removed RPC TLS support in version 0.12, so `bitcoin-cli` cannot call a Chainstack HTTPS endpoint. Use curl or an HTTP client library, as shown in [Bitcoin tooling](/docs/bitcoin-tooling#testnet-signet-testnet-and-testnet4).
</Note>

## Why an address does not identify its testnet

Testnet (testnet3), Signet Testnet, and Testnet4 use the same address and key encodings, so the same address string is valid on all three networks, with a separate balance on each chain.

| Encoding | Prefix on all three testnets |
| - | - |
| Native SegWit and Taproot (bech32 and bech32m) | `tb1` |
| Legacy (P2PKH) | `m` or `n` |
| Script hash (P2SH) | `2` |
| Extended keys | `tpub` and `tprv` |

To confirm which network an endpoint serves, read `chain` from `getblockchaininfo` when your application starts:

<CodeGroup>
  ```bash cURL theme={"system"}
  curl YOUR_CHAINSTACK_ENDPOINT \
    -H "Content-Type: application/json" \
    -d '{"jsonrpc":"1.0","id":1,"method":"getblockchaininfo","params":[]}'
  ```
</CodeGroup>

A Signet Testnet endpoint returns `"chain": "signet"`, and a Testnet4 endpoint returns `"chain": "testnet4"`.

Bitcoin libraries follow the same encodings. In bitcoinjs-lib, `networks.testnet` produces addresses for all three testnets. In python-bitcoinlib, `SelectParams("testnet")` does the same. Neither library has a separate Testnet4 setting.

## Fee estimation on Testnet4

Testnet4 blocks often carry only the coinbase transaction, so `estimatesmartfee` often lacks data for short confirmation targets and returns `"errors": ["Insufficient data or no feerate found"]` instead of a `feerate`. Longer targets, such as 144 or 1008 blocks, usually return a fee rate.

When `estimatesmartfee` returns no estimate, fall back to `mempoolminfee` from `getmempoolinfo`, the lowest fee rate the node accepts into its mempool. Signet Testnet blocks carry regular traffic, and `estimatesmartfee` returns a fee rate for short targets there.

## Move from Testnet (testnet3) to Testnet4

Testnet4 keeps the consensus rules of Testnet (testnet3) and adds the BIP94 rules, so an application that reads and writes through a node's JSON-RPC API needs only the Testnet4 network parameters. Software that validates blocks itself must also enforce the BIP94 rules, or it can follow a chain that Testnet4 nodes reject. To move an integration:

1. Deploy a Bitcoin Testnet4 [Global Node](/docs/global-elastic-node) on Chainstack and replace your Testnet (testnet3) endpoint with it.
2. Check that `chain` is `testnet4` when your application starts.
3. Fund new Testnet4 addresses. Testnet (testnet3) coins do not exist on Testnet4, so every balance starts at zero.
4. Keep your address and key handling. The encodings are the same, so library network settings and the testnet derivation coin type `1` don't change.
5. Discard stored Testnet (testnet3) block heights, block hashes, and transaction IDs. None of them exist on Testnet4, and its chain is far shorter.
6. Add a fee fallback for short confirmation targets. See [Fee estimation on Testnet4](#fee-estimation-on-testnet4).
7. If you run your own Bitcoin Core as well, upgrade it to version 28.0 or later, replace `-testnet` with `-testnet4`, and move testnet settings from the `[test]` config section to `[testnet4]`.

## Testnet faucets and explorers

[mempool.space](https://mempool.space) runs block explorers for Testnet (testnet3), Signet Testnet, and Testnet4, with the links in [Network parameters](#network-parameters).

Signet Testnet and Testnet4 coins come from community-run faucets. For current faucets, see the [Bitcoin Wiki Signet page](https://en.bitcoin.it/wiki/Signet) for Signet Testnet and the [testnet4.dev](https://www.testnet4.dev/) list for Testnet4. Signet Testnet blocks need a signature from the signing keys, so faucets are the practical way to get Signet Testnet coins.

## FAQ

### Is Testnet (testnet3) going away?

Bitcoin Core marks testnet3 as deprecated and states that support "will be removed in an upcoming release". As of Bitcoin Core 31.1, no release has removed it and no removal version is set. Chainstack serves Testnet (testnet3) on Global Nodes.

### Do Signet Testnet and Testnet4 support the same methods as Bitcoin Mainnet?

Yes. The Bitcoin JSON-RPC methods available on Chainstack are the same on Mainnet, Testnet (testnet3), Signet Testnet, and Testnet4. See [Bitcoin methods](/docs/bitcoin-methods).

### Can I reuse a Testnet (testnet3) address on Testnet4?

The address string is valid on Testnet4, because the encodings are the same, but its Testnet (testnet3) balance does not carry over. Fund the address on Testnet4 before you spend from it.

### Is historical data available on the testnets?

Yes. Chainstack Bitcoin testnet nodes keep every block from genesis and have `txindex` enabled, so `getrawtransaction` returns any transaction by its ID except the genesis block coinbase, which Bitcoin Core does not treat as an ordinary transaction. Read the genesis coinbase with `getblock` at verbosity `2`. Historical address queries need an address indexer such as electrs. See [Bitcoin methods](/docs/bitcoin-methods).

### Does Chainstack offer regtest?

No. Regtest is a private network that you run locally with `bitcoind -regtest`. It has no shared chain to connect to.
