Hearthstone Deck Tracker: a Windows overlay and deck manager, reviewed for adoption
A deck tracker and deck manager for Hearthstone on Windows
At a glance
- What is it?
- Hearthstone Deck Tracker is a C# WPF overlay and deck manager for Hearthstone on Windows, distributed as an installer from hsdecktracker.net. The project is active and the code is public, but the licence is not.
- Who is it for?
- Adopt it if you play Hearthstone on Windows and want in-game card counts, opponent tracking, per-deck win rates and a deck manager that can push saved decks past the game's 27 deck limit. Do not adopt it on macOS, Linux, Android or iOS; the README lists Windows Vista or higher and .NET Framework 4.5 as the requirements, and the repository carries no cross-platform client.
- Can I use it commercially?
- Not without permission. GitHub finds no licence file in the repository, and without a licence all rights are reserved by default: you may read the code but not reuse it. Check the README, or ask the authors, before using it.
- Is it still maintained?
- Yes. The repository last received commits 2 days ago.
- What is it written in?
- Mainly C#, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.
Editorial analysis
Who Hearthstone Deck Tracker is built for
Hearthstone Deck Tracker, usually shortened to HDT, is a Windows application that watches a Hearthstone match and reports what is left in your deck and what your opponent has played. The README's feature list is explicit about the audience: constructed ladder players who want draw probabilities and opponent hand counts, arena players who want to import a drafted deck and see the results, and deck collectors who have run into the game's 27 deck limit. It is not a general card database and it is not a coaching tool. Everything it shows comes from reading the game client's state while you play.
The deck manager half is a separate concern that shares the same window. Decks can be imported from arenavalue, hearthstats, hearthpwn, hearthhead, hearthstoneplayers, tempostorm, hearthstonetopdeck and hearthnews, tagged, given notes, screenshotted, and shared as XML files or id-strings. That import list is a good signal of the project's age and its focus: it names sites that the Hearthstone community used when the tracker was written, and the README does not claim to parse anything newer. If your decks live somewhere else, check the import dialog rather than assuming it will work.
How the overlay, HearthWatcher and deck stats fit together
The repository layout tells you more about the architecture than the README does. The top level holds HearthWatcher and HearthWatcher.Test as separate projects, plus the main Hearthstone Deck Tracker project, an HDTTests project, an HDTUninstaller, a Bootstrap folder, build-scripts, lib and packages. HearthWatcher is the piece that observes the game and raises events; the tracker project consumes those events and renders them. Keeping the watcher in its own project means it can be tested without the WPF UI, which is why a test project sits next to it.
The UI is WPF, which the repository topics confirm (wpf, overlay, c-sharp). The overlay and the extra windows described under Options > General > Additional Windows are two presentations of the same tracked state, so a card counter that looks wrong in the overlay will look wrong in the window too. The deck manager, the stats screens and the importers all live in the same process, which is why the app is a single installer rather than a service plus a client.
Automatic deck selection is the part most users notice first. The README says the tracker tries to automatically select the deck you are playing, and the stats-per-deck feature depends on that selection being right: win/loss results, opponents, game mode and win rate against each class are all recorded against a deck. When auto-selection picks the wrong list, the game is still tracked but it lands in the wrong bucket. That is a data-quality failure, not a crash, and it is the kind of thing you only notice after a session's stats look strange.
Installing Hearthstone Deck Tracker and importing your first deck
There is no package manager step and no source build in the install instructions. The README lists two requirements, Windows Vista or higher and .NET Framework 4.5 or higher, and then points at the installer. The repository also contains bootstrap.ps1 and a Bootstrap folder, so a scripted path exists in the tree, but the README does not document it as the supported install method.
Download and run the installer from the project's download page:
# Open https://hsdecktracker.net/download/ in a browser on Windows,
# download the installer, and run it.
# Requirements per the README: Windows Vista or higher, .NET Framework 4.5 or higher.After the app starts, the deck manager is the first thing worth exercising. Importing from a supported site is the documented path, and the README gives the menu location for the other deck operations. Exporting a saved deck back into Hearthstone is the feature that works around the 27 deck limit:
My Decks > More... > ExportThe README states that saved decks can be exported to Hearthstone from My Decks > More..., and that the same menu holds notes and screenshots. Sharing is a separate action: decks export as XML files or id-strings, and both formats can be brought back in through New Deck > Import. If you are moving a collection between machines, that is the route the README describes, not a cloud sync.
Two settings change how much the tracker does. Options > General > Additional Windows moves the cards and timer out of the overlay and into separate windows, which is what streamers tend to want. Options > Other selects which game modes are tracked for stats. Neither is required to start playing, but leaving the game-mode selection at its default is how people end up with arena games mixed into their constructed win rates.
The licence is the real adoption blocker
The README's licence section is one line: Copyright © HearthSim. All Rights Reserved. There is no OSI identifier, no LICENSE file named in the top-level listing, and no permission grant for reuse, modification or redistribution. The repository is public and readable, and CONTRIBUTING.md sets out coding style and commit guidelines for people who want to send patches, but reading and contributing are not the same as a licence to ship a fork.
For an end user running the installer this changes nothing. For an engineer who wants to embed the tracker, ship a modified build to a team, or reuse HearthWatcher in another product, it changes everything: the default under copyright is that you have no such rights. The repository listing does include a licenses/ directory, which suggests third-party components carry their own terms, but the README does not describe the project's own grant. If you need one, the documented support channel is [email protected] for HSReplay.net integration questions, and HearthSim is the copyright holder named in the README. This is not legal advice; it is a statement of what the README does and does not say.
Windows only, and what happens when tracking breaks
The single hardest constraint is the platform. The README's requirements are Windows Vista or higher and .NET Framework 4.5 or higher. There is no macOS build, no Linux build, and no mobile client in the repository, and the search terms people use around this project (Android, Mac, Linux, mobile) do not correspond to anything the README offers. If you play on a phone or a Mac, HDT is the wrong tool and no configuration will fix that.
The second limitation is that tracking depends on reading the game. HDT does not have an official game API to query; it watches what the client exposes and reconstructs the state. Anything the watcher cannot observe becomes a gap: cards your opponent obtained through a random effect, or state changes the watcher does not model. The README leans into this by listing what it does track about the opponent, including cards that were mulliganed, stolen or returned, and by phrasing opponent probabilities as probabilities rather than certainties. Treat the opponent panel as an estimate. A number that looks authoritative is still derived from incomplete information.
Third, the plugin surface is the project's extension point and also its weakest contract. The README links to a wiki page of available plugins rather than listing them, so plugin compatibility is a wiki question, not a README question. A plugin that has not been touched since an older release may not load, and the README does not describe a compatibility policy or a plugin API version.
Finally, there is no documented rollback. The README covers installing and points at an FAQ, a Discord and a support address, but it does not describe how to revert to a previous version if an update misbehaves. If you depend on a specific build, keep the installer you used.
HDT against HSReplay.net and Overwolf-based trackers
The closest thing to an alternative is HSReplay.net, which is not a separate product so much as the other half of this one. The README's homepage field points at hsreplay.net/downloads/, and the README treats HSReplay.net integration as a supported feature with its own support address. The difference in approach is where the work happens: HDT is a local Windows application that holds your decks, renders the overlay and writes stats to your machine, while HSReplay.net is a service that aggregates uploaded game data across its user base. If what you want is population-level deck statistics, a local tracker is not that, and HDT's per-deck stats are your own results only.
The other family of alternatives is the Overwolf-based trackers, which is one of the search phrases people associate with this project. Those run inside the Overwolf platform rather than as a standalone .NET application, which changes the install footprint, the update mechanism and the plugin story. The practical difference for an engineer: HDT is a C# WPF application you can read and build from the repository, while an Overwolf app is built against Overwolf's platform. If you want to modify the tracker itself, that distinction decides the choice before any feature comparison does. The README does not benchmark HDT against either, so any performance claim would be guesswork.
Maintenance, updates and what a fork actually costs
The repository is not archived, and the last push was on 2026-09-22. Releases are frequent: v1.55.6 on 2026-08-13, v1.55.5 on 2026-08-11 and v1.55.4 on 2026-08-10, with patch versions landing days apart. For an end user that means the installer you download today is likely to be superseded within weeks, and the update path is the installer rather than a package manager. The README does not describe an in-app updater or a silent update channel, so plan on re-running the installer.
For anyone considering a fork, the cost is not the code, it is the platform. The solution is a Visual Studio solution (Hearthstone Deck Tracker.sln) with WPF, .NET Framework 4.5, AppVeyor CI, a Bootstrap folder, build-scripts, a nuget.config and a packages folder. That is a Windows toolchain with a pinned framework version, and .NET Framework 4.5 is old enough that you should check your build environment before assuming it compiles cleanly. CONTRIBUTING.md governs patches to the upstream project; it is not a licence to redistribute your own build, and the README grants no such rights. If your interest is the game-state observation rather than the UI, HearthWatcher is the project to read first, since it is separated out and has its own test project.
Editorial conclusion
Adopt it if you play Hearthstone on Windows and want in-game card counts, opponent tracking, per-deck win rates and a deck manager that can push saved decks past the game's 27 deck limit. Do not adopt it on macOS, Linux, Android or iOS; the README lists Windows Vista or higher and .NET Framework 4.5 as the requirements, and the repository carries no cross-platform client. Before you build anything on it, verify two things: whether HearthSim will grant you rights under a licence, since the README states all rights are reserved, and whether the plugin you depend on is still listed on the wiki's Available Plugins page.
Frequently asked questions
What does Hearthstone Deck Tracker do?
It tracks the cards left in your deck and the cards drawn from it, your hand count, deck count and draw chances, and the same information for your opponent, including how long each card sat in their hand. It also provides a turn timer, a deck manager with import from several deck sites, and per-deck win/loss statistics.
How do I install Hearthstone Deck Tracker?
The README lists Windows Vista or higher and .NET Framework 4.5 or higher as requirements, then directs you to download and run the installer from the project's download page. There is no documented package manager or source-build install path.
How do I use Hearthstone Deck Tracker for arena?
The tracker handles arena through the same overlay and deck manager as constructed play, and Options > Other selects which game modes are tracked for statistics. The README also notes that a partial opponent deck from a tracked game can be imported as a new deck.
How do I update Hearthstone Deck Tracker?
The README does not describe an in-app updater or a silent update channel; installation is by running the installer from the download page. Releases are frequent, with v1.55.6, v1.55.5 and v1.55.4 published within days of each other in August 2026.
How do I uninstall Hearthstone Deck Tracker?
The repository contains an HDTUninstaller project alongside the main application, but the README does not document an uninstall procedure. The README's troubleshooting pointer is the project wiki FAQ.
Can I run Hearthstone Deck Tracker on Linux or macOS?
The README's requirements are Windows Vista or higher and .NET Framework 4.5 or higher, and the repository contains no macOS or Linux client. The overlay, deck manager and HearthWatcher are all part of the same Windows WPF application.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/hearthsim-hearthstone-deck-tracker)