Here's Exactly
Where We Are
GG Anvil is real, it's running, and it's early. This page is the honest map — what works today, what we're hardening right now, and what's still a promise on the roadmap. No fog.
Early, On Purpose
A real product
Not a demo or a waitlist. Leagues are running matches through it today, screenshots in, verified scoreboards out.
A small fleet of leagues
We're onboarding a handful of leagues by hand, not the whole world at once. You get attention, not a queue.
Founder-direct support
You talk to the people building it. Bug, question, or odd request — it goes straight to us, not a ticket queue.
Your feedback steers it
What you hit, what you wish it did — that genuinely reorders the roadmap below. Early users shape the product.
Early pricing, honoured
The rate you start on is the rate you keep as the product grows. Early backers don't get repriced for being early.
Rough edges, named
Some things are still being hardened — and we tell you which ones, right here, rather than letting you find out the hard way.
From Fire to Forged
Three states. Things you can use right now, things landing and being hardened, and things we've promised but haven't built. We'd rather you knew the difference.
Forged
Live todayShipped, deployed, and in use. You can do all of this right now.
Discord login + the portal
Type /ggportal in Discord, accept the one-time privacy gate, click your personal handshake link, and you're in the portal. No password, no separate account. The whole UI themes to your Discord accent colour.
Competition engine
Round-robin, seeding stages, and single-elimination brackets. Pick a CDL preset or build a custom ruleset with your own modes, scoring, and seeding points. Standings track live.
Match cards
A scheduled match is a real object — both clans, their rosters, the format grid, and the maps in one place. Lifecycle phases (notify, availability, veto-lock, go-live, close) fire as per-match scheduled tasks.
In-portal map veto
A guided captain panel runs the CDL pick/ban sequence inside the match flow — BO3, BO5, and BO7. The server enforces the sequence, gates moves to the two leaders, and auto-locks at the deadline.
OCR screenshot → scoreboard
Upload your in-game scoreboard. The pipeline verifies it's a real scoreboard, reads the scores and stats, matches names against the roster, and validates the numbers — then cascades into per-player, per-clan, and division boards.
Human confirmation + the Anvil badge
The machine does the reading; leaders keep the final say. Both leaders confirm the extracted scores before a result locks. A confirmed result carries the Anvil mark — verified, not just typed in.
Public match-night veto tool
A free, no-login veto tool for any match night — share a link, both captains pick and ban live. Now clan-aware: it can pull in real clan names from leagues that opted their teams public.
Player cards & standings
Every confirmed game feeds career and competition stats — K/D, wins, history. Player cards, clan cards, and org-level scoreboards fill themselves straight from OCR results.
Org, clan & role management
Orgs run competitions, competitions hold clans, clans hold players, with a strict chain of authority and no self-replicating ownership. Ghost seats let you populate a whole 40-player league before anyone signs in; players claim their seat with one click.
Spectator pages
Opt a competition public and it gets a /watch page — live bracket and standings, viewable by anyone, no account needed.
On the Anvil
In progressLanded but still being hardened, wired through, or watched in the wild.
Public clan opt-in
Leagues can now opt their teams into a public, players-stripped clan feed that the veto tool and marketing surfaces read from. Just shipped — we're watching how it behaves with real leagues before we lean on it.
Scoreboard cascade
The full chain from a confirmed scorecard up to team and division boards is wired and live. We're still ironing the edges — what happens when a slot is missing, when an admin overrides a stat, when two submissions disagree.
Veto hardening
The match-card veto just had a concurrency pass — duplicate-move races rejected, leader-only gating, deterministic auto-lock at the deadline. The kind of thing you only find once real captains start clicking fast.
Smarter notifications
Delegation routing so org delegates absorb the noise and owners only hear what matters. Per-match scheduled reminders and the match-card comment thread are designed in the spec but not fully built yet.
Match-day rich view
Streamer links on fixtures and inline admin fixture editing landed recently. Match night is getting a proper home; expect this to keep filling out.
Cost & scale guardrails
A monthly AWS budget guard and a founder-gated daily OCR ceiling are in. The dev account still caps concurrent work low, so bursty moments can throttle — a quota lift is queued before we open the doors wider.
In the Fire
PlannedPromised, designed, or on the wishlist — but not built yet. Named so you can hold us to it.
White-glove onboarding
For now, getting your league set up means talking to us directly — and honestly, that's the best way to do it in early access. A self-serve, guided setup that gets you live without a call is on the roadmap.
White-label
Your branding throughout the experience — logos, colours, your league's identity instead of ours. The per-user accent theming is already live; full white-label for the League and Enterprise tiers is a promise, not a shipped feature yet.
API access
Programmatic access to your standings, results, and rosters so you can pipe them into your own site, overlays, or stream tooling. Planned for the higher tiers — not built.
Multi-game support
Today the OCR and formats are tuned for the current Activision-flavoured BO3/5/7 world. Other shooters and formats can follow once the core is proven.
Get In Early
Talk to us directly about bringing your league on while it's still early. The door is open.