How HitDuel Works
Real-money chess, start to finish — sign in, stake, play, get paid.
Sign in with email or wallet
HitDuel uses Privy for sign-in — email, Google, or an existing wallet all work. Privy gives you an embedded, non-custodial wallet: HitDuel never sees your private key, and the same wallet persists across sessions once you sign in the same way each time.
Pick a stake and time control people are actually playing
The lobby's stake and time-control chips show a live badge with how many players are waiting right now at that exact combination, refreshed every 15 seconds. A quiet chip with no badge doesn't mean nothing's there — it means nobody's currently waiting there — so picking a bucket that already shows a badge is the fastest way to get matched instead of sitting in an empty queue.
Lock your stake in escrow
Pick a stake tier ($1.00 and up) and time control, then confirm. Your USDC is locked in the HitDuelEscrow smart contract on Base — not held by HitDuel's servers — the instant both players have deposited the same amount, the match begins. A small, tier-dependent fee (as low as 4-5% at higher stakes) is disclosed up front before you confirm. You have 3 minutes to deposit once you're matched — if either side misses that window, the match voids and both stakes (if already sent) are refunded in full. You'll also need ~0.0005 ETH on Base in the same wallet — locking your stake is an on-chain transaction, and network gas is paid separately from the USDC stake itself. That's enough for this and several future matches, not just one.
Play — server-validated, engine-audited
Bullet (1+0), Blitz (3+0), and Blitz (5+0) — deliberately fast formats, so there's little time to relay a position out to an external engine. Every move is validated server-side (a client can never send an illegal move), and a post-match Stockfish correlation pass checks for suspiciously engine-like play. A flagged match holds the payout for review rather than paying out automatically.
Automatic payout after a 5-minute security window
When the match ends, the result is signed and submitted on-chain — but funds don't move immediately. A mandatory 5-minute verification hold gives the anti-cheat pipeline a window to catch anything the live checks missed. Once it elapses with no flag, an automated relayer submits the payout on-chain for you — no manual claim needed. You'll see it land in your inbox the moment it happens.
Rules for a Smooth Match
The mechanics that keep a real-money match fair and fast — worth knowing before your first one.
Canceling before you're matched is free
Nobody has deposited yet while the lobby says "Finding you an opponent" — hit Cancel any time with nothing at risk. The stake clock only starts once you're actually matched.
Reconnect within 60 seconds once the match is live
A dropped connection isn't an instant loss — once your match is actually underway, you have 60 seconds to get back online and resume. Miss that window and it's scored as a forfeit. Before that — matched but still depositing — you get the full 3-minute deposit window instead, so a brief drop there doesn't cost you the match.
Stay on the tab during your own turn
Backgrounding the browser or switching windows specifically while it's your move is logged and feeds the same fraud-review pipeline as engine detection — it's fine between turns, just not on your clock.
Resigning is immediate and irreversible
There's one confirmation step, and that's it — your locked stake transfers to your opponent the moment you confirm. No undo.
Keep match chat short and clean
Messages are capped at 200 characters with a brief cooldown between them. Plenty for banter and GG's — not for spam.
Full anti-cheat and payout enforcement details are in the Skill Wagering Rules.