About The Card Counting
The Card Counting is a free, browser-based trainer for the card games where skill gives you an edge — eight of them, with blackjack as the flagship. It is built by a solo developer, it involves no real money, and the part worth explaining is the boring part: where the correct answers come from.
What this is
A practice tool. You drill the Hi-Lo, KO, Hi-Opt I and Omega IIcounts against a live shoe, grade your running and true count at timed checkpoints, and answer hit/stand/double/split/surrender hands that are marked against a rules-accurate chart. Beyond blackjack there are trainers for Spanish 21, Hearts, Poker odds, Spades, Euchre, Bridge and Gin Rummy — the same five underlying skills (counting, decisions, memory, inference, probability) in seven other shapes. It runs in the browser, needs no download, and works as a guest with no account.
What this is not
- Not gambling. There is no real money anywhere in the app, in either direction. The coins and chips are practice currency — you earn them by drilling and spend them on cosmetics, and there is no way to buy them.
- Not a casino funnel.No casino links, no affiliate links, no sponsored “where to play” section. Nothing here is trying to route you to a table.
- Not a get-rich pitch. Counting is a small statistical edge that takes a lot of accurate repetition to hold, and the site is honest about that — see the bankroll calculator, which exists mostly to show how large a bankroll a small edge actually demands.
How the answers are verified
Most strategy sites publish a chart as a picture and implement their trainer separately. That is how a site ends up disagreeing with itself. Here there is exactly one source of truth: a pure engine in src/engine/ — plain TypeScript with no React, no network calls and no hidden state, shuffling from a seeded PRNG so a given shoe is reproducible. Every chart, cheat sheet and graded answer is a call into it.
The chart is generated, not typed
The strategy chart does not store any cells. Each cell is rendered by calling basicStrategy(playerHand, dealerUpcard, rules) once, and the decision trainer grades your answer through correctPlay(), which resolves to that same function. A chart cell and a graded hand are therefore literally the same call with the same arguments — they cannot drift apart, because there is nothing for them to drift from. The rules argument is your own table settings, so changing decks, dealer-hits-soft-17, double-after-split or surrender rewrites both the chart and the grading at once.
The counting tags are generated too
The per-system tag tables in the reference render straight from tag(system, rank) — the same function runningCount() sums while the counting trainer deals. The true count shown in the trainer is that running count divided by the decks remaining, computed in the same module.
Index plays are data, and the data is bounded
Count-based deviations live as a 14-entry table — a subset of the Hi-Lo Illustrious 18, each with its hand, dealer upcard, threshold and action. They are hit, stand and double indices only: there are no surrender indicesin the table, so the site does not claim a “Fab 4” it hasn't implemented.
Tests pin the edge cases
The engine ships with its own unit suite — 8 spec files and 93 tests for the blackjack core, 331 tests across 16 files for the engine as a whole, covering hard/soft/pair strategy, deck composition, hand values, dealer play, the counting systems, the running-to-true conversion, every deviation threshold and payout scoring. The suite is where the corrections are kept honest. One concrete example: an early draft of the pair chart split 9,9 against a dealer 10 and stood against an 8 — an off-by-one in the dealer column. The correct row is split vs 2–6, 8 and 9; stand vs 7, 10 and A, and there is now a test named for that fix asserting all six of those cells. Two H17 cells that the same draft omitted — hard 11 doubling against an Ace, and soft 19 (A,8) doubling against a 6 — are pinned the same way.
None of this makes the site infallible. It makes it checkable: if a cell is wrong, it is wrong in one function, and the same wrong answer shows up everywhere instead of hiding in one of them.
What is deliberately missing
- No casino or affiliate links. The site earns nothing from sending you anywhere, which is the only way the strategy advice stays trustworthy.
- No device-assist tooling. There is no tap counter, no live-table overlay, no companion app for counting while you actually gamble. That is a deliberate refusal, not a missing feature.
- And the legal note that goes with it. Counting cards in your head is not a crime — it is arithmetic. But casinos are private property and may bar a player they suspect of counting, and in Nevada NRS 465.075 prohibits using a device to keep track of the cards played in a licensed gaming establishment. A phone, a chart on paper or a trainer like this one is a study tool. Do not take it to a live table. See is card counting illegal? for the longer version.
Who builds it
One person, working on it in the open and shipping in small pieces. There is no company behind it and no team — which is also why the roadmap carries no dates. If you want to know exactly what the site stores about you, the privacy page lists every key and every row, including the parts most sites leave out.
For educational and entertainment use only; this involves no real-money gambling.