Bitcoin Wallet Tracker, also known as bwt, is a free, open-source indexer for Bitcoin wallets. It is aimed at users who already run their own Bitcoin full node and want a private way to look up balances and transaction history for their wallets, without relying on public servers. It also suits developers who need a wallet backend for a payment processor or another Bitcoin application.
The program works by reading wallets defined by output descriptors and indexing their activity against a Bitcoin Core node. Because it runs on your own hardware, your addresses and balances are not shared with a third-party server every time you check your funds. It is written in Rust and is lightweight enough to run alongside a node on a typical home computer.
What Is a Bitcoin Wallet Indexer?
A wallet in the everyday sense is a set of keys that controls your bitcoins. The blockchain, however, does not keep balances per person. It records transactions between addresses. To find out how much a wallet holds, software has to scan the chain and collect every output that belongs to that wallet's addresses. That scanning process is called indexing.
A wallet indexer does this work once and stores the results in a form that can be queried quickly. Without an indexer, a Bitcoin Core node can tell you about individual transactions, but answering questions like "what is the balance of this wallet and what happened to it last week?" becomes slow and awkward. bwt fills that gap for descriptor-based wallets.
This is a different job from holding keys. bwt is not a place to store bitcoins, and it does not sign transactions on your behalf. It reads the public blockchain and reports what it finds.
Who Is Bitcoin Wallet Tracker For?
The program makes most sense for a small group of users. The first is the self-hosting Bitcoin user who already runs a full node and wants to check balances without asking a public server. Privacy-minded users appreciate that queries stay on their own machine.
The second group is developers building Bitcoin products. A small shop that accepts bitcoin payments, for example, needs to know when an invoice address receives funds and how many confirmations it has. An indexer like bwt can supply that information to an application through its interface.
The third group is people who simply want to understand how their wallet looks from the blockchain side. Running an indexer is a practical way to learn about descriptors, xpubs and the structure of UTXOs. It is less suited to someone who wants a point-and-click app with no technical setup.
Real-World Use Cases
Consider a user who runs a Bitcoin Core node at home and keeps a hardware-wallet-based setup for savings. They can connect bwt to the node, register the watch-only descriptor of their savings wallet, and check balances and recent activity from their own network. The signing keys never need to touch the indexer.
A second scenario is a merchant who accepts bitcoin at a small online store. The store's backend can derive a fresh address for each order from a descriptor and then ask the indexer whether payment has arrived. Server-Sent Events let the application react as soon as a transaction appears instead of checking repeatedly.
A third scenario is an Electrum user who wants a private server. Instead of connecting the Electrum client to a public server operated by someone else, they point it at their own bwt instance. The wallet behaves as usual, while the lookups are answered by hardware they control.
Key Concepts Behind the Program
Three ideas explain most of what bwt does. The first is the output descriptor, a compact text string that describes how a wallet derives its addresses, usually from an extended public key (xpub). Because the descriptor contains only public information, sharing it with an indexer does not expose spending keys.
The second is the UTXO, or unspent transaction output. Bitcoin balances are the sum of unspent outputs that a wallet can spend. An indexer tracks which outputs have been created and which have been consumed by later transactions.
The third is confirmations. A transaction included in a block has one confirmation; each later block adds one more. The minconf setting controls how many confirmations an output needs before it counts toward a balance. The default is 0, which means unconfirmed funds are included, so users who want a conservative view should raise this value.
How the Program Fits Into a Bitcoin Setup
bwt is one part of a larger stack. The base layer is a Bitcoin Core node that downloads and validates the blockchain. Above it sits the indexer, which builds a searchable view of your wallets. Above that is whatever you use to interact with your money, such as a desktop wallet, a mobile app or an application backend.
Because the indexer depends on the node, its performance and reliability depend on the node too. A node that is still syncing will give incomplete results. Keeping the node up to date and reachable is the main operational task.
Key features
Electrum Plugin
Server-Sent Events
Descriptor-Based Wallet Indexing
Developer-Friendly Design
Supported coins
The documentation for bwt mentions Bitcoin (BTC) and the Lightning Network, and the indexer works with the SHA-256 proof-of-work used by Bitcoin. It is a Bitcoin-only tool and does not index other blockchains.
How to install Bitcoin Wallet Tracker on Windows
- 1
Download the Release
Go to the official project page on GitHub at https://github.com/shesek/bwt and open the Releases section. Download the build for Windows from the release you want. Only download from the official site or the official GitHub repository, never from mirrors or links shared in forums.
- 2
Verify the File
Compute the SHA-256 checksum of the downloaded file using PowerShell, for example with the Get-FileHash command, and compare it with the checksum published on the release page. If they do not match, delete the file and download it again. Check the signature too, if the release provides one.
- 3
Prepare a Bitcoin Core Node
Install Bitcoin Core and let it sync the blockchain fully before relying on the indexer. The documentation recommends version 0.19, and 0.17 is considered sufficient. A pruned node is supported, so you do not need to keep the entire history if disk space is limited.
-
Configure and Start the Indexer
Create a configuration that points the indexer at your node, adds your wallet descriptors, and sets the minimum number of confirmations. Start the program from a terminal and check the log output to confirm it has connected to the node and begun indexing. Consider using a separate wallet for bwt so that watch-only activity stays apart from your main funds.
System requirements
- A Windows PC capable of running a Bitcoin Core node alongside the indexer
- A fully synced Bitcoin Core node, version 0.19 recommended and 0.17 sufficient
- Enough disk space for the blockchain, or a pruned node configuration
- Sufficient memory and a reliable network connection for continuous syncing
How to use Bitcoin Wallet Tracker
Using bwt is mainly a matter of connecting it to your node and then querying it. The workflow below assumes Bitcoin Core is already running and synced.
- Make sure Bitcoin Core is running and has finished syncing.
- Prepare the output descriptor or xpub of the wallet you want to track.
- Set the minimum confirmations value in your configuration. The default of 0 includes unconfirmed transactions.
- Start the bwt program from the command line with your configuration.
- Confirm in the log that the indexer has connected to the node and started scanning.
- Query the indexer for the balance or transaction history of the tracked wallet.
- If you use the Electrum plugin, point your Electrum client at your own server address.
- Keep the node online so the indexer stays current with new blocks.
Pros & cons
- Free and open source under the MIT license
- Runs on your own hardware, so queries stay private
- Works with descriptor-based wallets and output descriptors
- Supports Server-Sent Events for real-time updates
- Can serve as a personal Electrum server
- Lightweight Rust implementation
- Requires a running and synced Bitcoin Core node
- Setup involves a terminal and a configuration file
- Works with Bitcoin only, not other blockchains
- Requires txindex for some non-wallet transaction lookups
- Not a wallet in itself; it cannot send or store funds
- The last code update was in March 2022, so check the project status before relying on it
Is Bitcoin Wallet Tracker safe?
bwt does not hold private keys, but it is still a piece of software that runs on your computer and talks to your node, so treat it with care. Download it only from the official GitHub repository, verify the SHA-256 checksum or signature before running it, and never enter a seed phrase on a third-party website. Because the latest code update dates to March 2022, the project may not receive current security fixes, so review the release history and check the latest version on the official website before depending on it for anything important. Use a watch-only setup with descriptors rather than sharing private keys with any indexer.
- Official source only. Download from github.com/shesek/bwt. 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
bwt sits in a different niche from most of the programs in this catalog. Electrum and Sparrow Wallet are full desktop wallets that you use to hold and send bitcoins. Armory focuses on cold storage. Wasabi Wallet emphasizes CoinJoin privacy for its own coins. bwt does none of those jobs. It is a backend indexer, closer in role to the server side of Electrum than to a client. If you want to hold bitcoins on Windows, one of the wallets listed as alternatives is a better fit. If you want a private server for an Electrum client or a backend for your own Bitcoin application, bwt is the tool built for that purpose.
Specifications
- Price
- Free
- Type
- Open source
- License
- MIT
- Latest version
- v0.2.4
- Last update
- 31 Mar 2022
- Windows support
- Yes (Windows build or installer)
- Source code
- github.com/shesek/bwt
Frequently asked questions
Yes. The program is free and released as open-source software under the MIT license. You can download the source code from GitHub and build it yourself, or use a ready-made Windows build from the releases page. There are no license fees.
No. bwt is an indexer that reads the blockchain and reports on wallets you track. It does not hold private keys and cannot send bitcoins. Your funds remain controlled by whatever wallet holds the keys, which is a separate piece of software.
Yes. bwt connects to a Bitcoin Core node to read blockchain data. The documentation recommends version 0.19 and says 0.17 is sufficient. The node must be fully synced before the indexer can return accurate results.
It is safe to use if you take the usual precautions. Download only from the official GitHub repository, verify the SHA-256 checksum or signature, and do not give any indexer your private keys. Keep in mind that the last code update was in March 2022.
Yes. The program includes an Electrum plugin that lets an Electrum client use your own bwt instance instead of a public server. This keeps your wallet lookups on hardware you control.
No. The documentation mentions only Bitcoin and the Lightning Network, and bwt is designed for Bitcoin wallets using output descriptors. It does not index other cryptocurrencies.
It sets the minimum number of confirmations an output needs before it counts toward a balance. The default is 0, which includes unconfirmed funds. Raising the value gives a more conservative view of your balance.
Some comfort with the command line and configuration files is needed. Basic usage does not require writing code, but setting up the node, descriptors and configuration takes patience. Developers can also build it into their own applications.
Verdict
Bitcoin Wallet Tracker is a sensible choice for users who already run a Bitcoin Core node and want a private indexer for their wallets, and for developers who need a lightweight Bitcoin backend. It is not a wallet and should not be treated as one. Beginners who want a simple app for holding and sending bitcoins will be better served by a dedicated wallet, while technically inclined users will find bwt a useful and free tool.