Frequently Asked Questions

Where does Sparrow store data?

Sparrow’s home folder is different depending on the operating system:

Platform Location
macOS ~/.sparrow
Linux ~/.sparrow
Windows %APPDATA%/Sparrow

On Windows, the %APPDATA% folder can be found by opening File Explorer/Windows Explorer, typing %APPDATA% into the address bar, pressing enter. The Sparrow folder will be in the Roaming or Local subfolder.

You can change the home folder using the -d command line flag (see the following FAQ for details). This is useful to store wallets in separate locations, or have a different application configuration for different sets of wallets.

How can I run testnet?

Testnet is a copy of the Bitcoin network where coins have no value. It is ideal for testing wallets and transactions, and it’s use is highly recommended. The simplest way to start Sparrow using testnet is via the Tools > Restart in Testnet menu command. This will close Sparrow, and restart it with a separate testnet configuration in the testnet folder in Sparrow home.

It’s also possible to run Sparrow from the command line (or set up an equivalent shortcut). Sparrow has a number of command line options, for example to change its home folder or use testnet:

Usage: Sparrow [options]
  Options:
    --dir, -d
      Path to Sparrow home folder
    --help, -h
      Show usage
    --level, -l
      Set log level
      Possible Values: [ERROR, WARN, INFO, DEBUG, TRACE]      
    --network, -n
      Network to use
      Possible Values: [mainnet, testnet, regtest, signet]
    --terminal, -t
      Terminal mode
      Default: false
    --version, -v
      Show version
      Default: false

For example:

macOS:

> open /Applications/Sparrow.app --args -n testnet

Linux:

> Sparrow/bin/Sparrow -n testnet

Windows:

> Sparrow.exe -n testnet

As a fallback, the network (mainnet, testnet, regtest or signet) can also be set using an environment variable SPARROW_NETWORK. For example:

> export SPARROW_NETWORK=testnet

A final fallback which can be useful when running the Sparrow binary is to create a file called network-testnet in the Sparrow home folder (see below) to configure the testnet network.

Note that if you are connecting to an Electrum server when using testnet, that server will need to be running on testnet configuration as well.

When not explicitly configured using the command line argument above, Sparrow stores its mainnet config file, log file and wallets in a home folder location appropriate to the operating system.

Testnet, regtest and signet configurations (along with their wallets) are stored in subfolders of Sparrow’s home folder to allow easy switching between networks.

Once Sparrow is running in testnet, you will need to connect it to server or node that is also configured for testnet. A public testnet server is configurable from the Server Preferences tab.

Finally, you can receive free testnet bitcoin from a Bitcoin Testnet Faucet like https://testnet-faucet.mempool.co/.

How can I choose where my wallet is saved?

See the section above. You need to run Sparrow with the -d command line flag. Setting this will cause Sparrow to store its configuration and any wallets at the given location. For example on Windows:

> Sparrow.exe -d D:\sparrow

This feature allows you to store all Sparrow data on removable media making for more plausible deniability.

All my addresses have changed!

This is almost certainly due to an incorrect passphrase. Following the BIP39 specification, Sparrow stores nothing in your wallet file that is derived from your passphrase. This makes a passphrase enabled wallet more difficult to brute force. It also means that if you enter an incorrect passphrase, Sparrow will be using a different seed and will therefore derive different addresses. Your existing address labels will even be applied to the new addresses, since Sparrow has no way of telling the passphrase has changed. Further, your wallet will show no funds are present. They are not lost however.

To fix this, close the wallet and reopen it, entering the passphrase carefully. If you can’t remember your passphrase, take your time and try different options systematically.

I’ve restored my wallet but some of my funds are missing

If you have restored your wallet from seed, but are missing newer transactions, it is likely you need to increase the wallet gap limit. This is a setting which controls how far ahead a wallet looks in your sequential address list for new transactions. You can increase it in the Settings tab by clicking Advanced. Increase the gap limit value, Close and then Apply. The default is 20 for normal wallets, and 40 for Postmix wallets. If you have had a lot of connection errors while coinjoining, the gap limit may be need to be increased substantially. Increasing it makes Sparrow look farther ahead in the address list, but don’t increase it too much as your wallet loading will take longer.

UTXOs are missing from my Postmix wallet

See the answer above.

How do I increase the fee on a broadcasted transaction?

A transaction’s fee can be increased either by replacing it (RBF), or creating a child transaction (CPFP).

To perform Replace by Fee (RBF), the transaction must:

  1. Be in the mempool (not yet confirmed)
  2. Have all inputs enabled for RBF (this is the default for transactions sent by Sparrow)
  3. Have all inputs from your wallet

If all the above is true, then Sparrow will add a hover icon next to the transaction on the Transactions screen which looks like a hand with a cross above it. You can also right click to ‘Increase Fee’, which takes you to the Send screen with the transaction loaded, from where you can increase the fee (Sparrow may add another UTXO if there is insufficient change).

You can also use CPFP by spending the outputs of the transaction at a higher fee rate.

Does Sparrow require Tor?

While Sparrow does not require Tor (which can be unreliable), it is used for all external connections when either of the following are true:

  1. An external Tor proxy is configured (see the following FAQ)
  2. A .onion server address is configured

In the latter case, Sparrow will start its internal Tor proxy.

How does the proxy support work?

When you configure a proxy in Sparrow, it will be used for all external connections. This excludes IP addresses in the 192.168.*.*, 172.16.*.* and 10.*.*.* ranges, so you can connect directly to your node on the local network even with a proxy configured. If Sparrow cannot connect via the configured proxy, but the server is using an onion address, it will start it’s internal Tor proxy automatically. You can disable this behaviour by closing Sparrow and changing the value of the autoSwitchProxy property in the config file.

What does a red Tor icon in the status bar mean?

This error (with the tooltip “External Tor proxy error: Connection refused”) occurs when you have configured an external proxy (or one was running previously), and Sparrow can no longer connect to it. Most likely, the proxy is simply not running. For a Tor proxy running on the standard port, check if it is working with

> curl --socks5-hostname localhost:9050 https://check.torproject.org/api/ip

What does a red wallet icon mean?

If your wallet tab has a red icon, it means there was an error loading the wallet history from your configured server. This is due to either a problem with the connection to it, or (more likely) a problem with the server itself. If you are using a prebuilt node (like Umbrel) it is often a good idea to restart it. Also, consider uninstalling unnecessary apps on it, which can affect performance of the system as a whole. If the issue persists, consider upgrading to a more performant server such as Fulcrum.

Your system is missing a dependency for the webcam

If you see this error on a Windows machine, you are probably missing two Microsoft libraries the webcam driver depends on. These standard libraries can be added by installing the Microsoft Visual C++ 2010 Service Pack 1 Redistributable Package MFC Security Update. Here’s a guide that describes the installation process.

Some users have also reported success by downloading msvcr100.dll and msvcp100.dll from dll-files.com, and copying them into C:\Windows\System32.

I can’t connect to my Ledger

Make sure that:

  • Ledger Live is not running
  • The Bitcoin app is running on the device
  • If you are on Linux, ensuring that udev rules are installed. Install using the command in the Tools menu, or manually.
  • If you are on Windows, ensuring your antivirus is not blocking Sparrow. For example, Norton users may need to add Sparrow.exe as a Process Exclusion for Data Protector.
  • Nothing is running on ports 2222, 21324, 11044, or 9999. For example, Acronis users may need to change it’s port.

If that doesn’t help, try rebooting your computer to resolve any USB related issues.

How do I import my Trezor?

If you have been using the Trezor web wallet at trezor.io, it is likely that when recreating your wallet in Sparrow you need to select the ‘Nested Segwit’ script type. After this is done, import your Trezor xpub by using the Connected Hardware Wallet option.

You can also get Sparrow to search for the script type by using File > Import Wallet…, then click Scan for Connected Devices at the bottom.

There is an error when signing with my Jade

If you are connecting over USB, you may need to update the driver. See Fix issues connecting Jade via USB.

Does getting the fiat value leak privacy?

Sparrow gets the exchange rate from the configured exchange rate provider, and then multiplies that with your wallet balance internally. Your wallet balance is never shared externally.

If you have a Tor proxy configured, Sparrow will use it to retrieve the exchange rate. You can also turn it off by configuring ‘None’ for the exchange rate provider in the Preferences.

What is the master fingerprint for a watch-only wallet?

Often, when setting up a watch only wallet only the xpub is known. In this case, it’s safe to use a default value like 00000000 for the master fingerprint. The derivation path can be set to the default for the script type (indicated in the textfield prompt) if not known.

I’m getting a “man-in-the-middle” certificate warning when connecting

This is an SSL error, mostly likely due to an expired certificate. If you are using a public server, it may simply be that the certificate has been replaced, in which case it is safe to proceed. Otherwise, it may make sense to be cautious, especially if you are connecting over a public wifi. To find the existing certificate, look in the certs folder of Sparrow home for a file with the same name as the URL of the server. You can delete that file to clear Sparrow’s record of the SSL cert. It will download the cert again on reconnection.

How can I see the log file?

Sparrow’s log file is available in the Sparrow home folder, as sparrow.log.

You can open it by using the Help > Show Log File menu command.

How do I use coin control?

Go the UTXOs screen (just above the Settings), select the UTXOs you want to spend (use Ctrl/Cmd+Click to select several), and click ‘Send Selected’.

You will need to fill in the address to send to and the label on the Send screen.

I’m running on a high resolution screen and Sparrow icons and text are tiny

It’s possible to control the scaling of Sparrow in Linux or Windows by setting an environment variable.

On Linux:

_JAVA_OPTIONS=-Dglass.gtk.uiScale=200% /opt/sparrow/bin/Sparrow

You can also try setting the scaling factor in GNOME more globally:

gsettings set org.gnome.desktop.interface scaling-factor 2

On Windows:

Set the environment variable glass.win.uiScale to whatever percentage of scaling you require (e.g. 200%). Here’s a guide on how to do it.

Sparrow is too big for my screen

See the answer above, but set the scaling factor to 80%.

What NFC readers are supported?

Coinkite lists supported readers for the Tapsigner/Satscard.

How do I connect my NFC card reader in Linux?

You need to install a few packages first:

sudo apt install libccid libpcsclite-dev pcscd

Make sure the pcscd daemon is running:

service status pcscd

What keys are using during PGP download verification?

Sparrow uses up to 3 sources for keys when verifying signatures for download verification:

  • Any keys optionally provided by the user in the dialog
  • The gpg user keyring, usually located at ~/.gnupg (or the value of $GNUPGHOME)
  • Verified keys included in the Sparrow release

How do I rename my wallet?

To rename a wallet, use the File > Rename Wallet menu option.

I get a No route to host error connecting to a .local address

On macOS 15 or later, you will need to grant permission to access the local network. Go to Settings > Privacy & Security > Local Network and select Sparrow.

I can’t import my Cobo Vault

Some devices that are no longer supported by the manufacturers are deprecated in Sparrow. You can show options for deprecated devices by setting the value of showDeprecatedImportExport to true in Sparrow’s config file. Note however that deprecated devices will be removed in a future release.

Is the Apache 2 license open source?

Yes! The Apache 2 license is very similar to the MIT license, which is used by Bitcoin Core. You can read a reasonable summary here: MIT vs. Apache vs. GPL

How can I build and run from source?

Read the instructions here: https://github.com/sparrowwallet/sparrow

How can I report an issue?

Please use the Issues on Github to report an issue. If possible, look in the sparrow.log file in the configuration directory for information helpful in debugging.