CS2 · demo-evidence analytics
Connect a league and the demos arrive on their own, or upload them yourself. Parsed to round level. No sample, no number.
OpenID sign-in — CS Anchor never sees your password. Early access: live surfaces are free.
Illustrative — sign in to see your own
Connect the league and the demos arrive on their own. The match library, scouting on the next opponent, and a hub the whole roster preps from.
Sign in and set up a teamUpload your own demos into a workspace nobody else is in. Your stats, your maps and your zones, kept private. No roster to join and no team to set up.
Sign in and start on your ownOne sign-in for both. It asks which of the two you are, and the product follows that answer.
The 3D replay
The real viewer, running a real match, in this page. Drag to orbit; click any player and the camera switches to him.
The house rules
A stat with no sample renders a dash. "0%" is a claim about evidence; absence of evidence is shown as absence.
58.3% means nothing alone; 7 of 12 rounds is a fact you can check. Sample sizes ride on every card, and thin samples are tagged.
When a stat can't be computed correctly from the demos, the page says why it's absent instead of shipping a plausible wrong number. Knife rounds never count as real rounds.
One connection puts the organiser's fixtures, results and table into the product, and on the feeds that publish them, the match demos too. Nobody uploads anything.
| # | Team & last five | W–L | Pts |
|---|---|---|---|
| 1 | Infurity WWWWW | 8–1 | 24 |
| 2 | Rotaryon LWWWW | 7–2 | 21 |
| 3 | 1ADL WWLWL | 6–3 | 18 |
| 4 | Bitfix Gaming WLWWW | 6–3 | 18 |
| 5 | VanirQuick WWLLW | 6–3 | 18 |
| 6 | Nidaros E-sport WWWLL | 5–4 | 15 |
| 7 | Highscore LLLWW | 3–6 | 9 |
| 8 | Quadrivium LLLWL | 2–7 | 6 |
| 9 | SLG LLLLL | 2–7 | 6 |
| 10 | Center Gaming LLLLL | 0–9 | 0 |
A fixture finishing is the only trigger. Everything from there to a round you can orbit happens without a person in the loop.
The connector reads the division's own fixture list on a fifteen-minute timer. Finished means the organiser stamped it finished, not that we guessed from a score.
Straight from the league, a few hundred megabytes at a time. The size is checked before a byte moves, the file is verified to really be a demo, and an identical one already in the bank is recognised and not stored twice.
Ten to twenty seconds per demo: rounds, kills, economy, positions at eight hertz. A parse that finishes but reads implausibly is quarantined rather than published.
The 3D payload is extracted as the last step of the parse, before the demo file can ever be cleaned up. The match turns up in the bank labelled as the feed's, and its page carries Watch in 3D.
Nothing ahead is on file
Every fixture in 1. divisjon has been played: all 45 finished, none pending. The connector records the organiser's own fixture list as it polls, and nothing it has recorded here is still unplayed. When they publish the next season, those fixtures appear in this module on the next poll.
Last results
This is what the product does with an empty schedule: it says so, and shows what it does have. An analytics page that filled the gap with a placeholder fixture would be inventing a match that nobody is playing.
Three modules off a single league match, exactly as the product draws them for a signed-in team. Every figure on them carries the rounds it was computed from.
Bitfix Gaming 13–7 VanirQuick · de_overpass · from the Komplett ligaen feed
A match page carries ten of these families, and the Openings & trading page carries the season-scale version of the matrix: the same grid over every round a team has played rather than one map's.
Solo
My stats with form and progress, clutch records by situation, per-map breakdowns, your demos parsed and kept. No team setup required.
Start a solo workspaceTeam
Match library, the Players split and Openings & trading; scouting reports on upcoming opponents; a hub with roster, join flow and a prep checklist the whole team works from.
Start a team workspaceWhat it measures
Series grouped into expandable rows, per-map detail, and canvas round replay drawn from real position traces.
Presence by named zone 20s in, duel share by area, kill locations — versioned vocabulary, recomputable as it improves.
Trades and time to trade, man-advantage conversion and its matrix, economy cross-tabs, the cost of a death.
An opponent's season shape, save patterns backed by economic evidence, players to plan for, head-to-head ledger.
Standings computed from the league's own rules, fixtures as they finish, and bracket odds that publish their seed and assumptions.
Team hub with a shared prep checklist, and revocable share links for any page worth showing around.
Tiers
Billing is not active yet. CS Anchor is in early access — everything live today is free to use, and caps and prices will be announced before anything is charged.
Your demos, parsed honestly.
Pricing at billing activation
Depth for the player who reviews.
Pricing at billing activation
The shared home for a roster that preps together.
Early access: the hub, scouting, leagues and sharing are live today — player invites and seats arrive with billing.
Pricing at billing activation
FAQ