League of Legends Champion Select Win Probability
What this does
- 1 Capture or upload a champion-select screenshot
- 2 Local OCR reads both teams off it
- 3 Get a calibrated win probability for your side
No screenshot? You can simulate results by picking the teams manually — build a lobby below and get the same win probability.
See how it works for the full mechanics, including the model's other honest limits.
Or build a lobby by hand — no screenshot needed
Pick champions for either side and calculate the win probability — no screenshot needed. You don't need all ten to get a read.
Ally
Enemy
Example lobby — import a screenshot, or build one manually above, to get your own.
* Enemy roles are a guess — champ select never labels them. Each one is inferred by matching the champion's role distribution from aggregate ranked-match data across the five lanes, picking the combination that's jointly most likely rather than each champion's best lane independently.
Understanding your result
What the screenshot actually gives it
Should I Dodge reads a champion-select screenshot with a local OCR engine (Tesseract) running on the same server that renders this page; nothing about the image goes anywhere else. It picks the ten champion names off both teams, and it works out roles too: your own team's lanes are read directly off your side of the screen, while the enemy side, which champ select never labels, gets inferred from each champion's typical role distribution rather than guessed lane by lane. The full mechanics — OCR, role inference, and the win-probability model itself — are covered in how it works.
Reading the five bands
Every champion's win rate becomes a log-odds contribution; your team's contributions are summed, the enemy's are subtracted, and the net figure turns into a single win probability. That percentage alone doesn't say much — a bare 54% could be a striking result or a completely ordinary one, and there's no way to tell which just by looking at it. So the app doesn't stop at the number. It sorts the probability into one of five bands — really low, low, neutral, high, really high — using a spread measured separately for each rank, Iron through Challenger. The bands are calibrated per tier rather than against a flat 50%, because how far win-probability readings normally drift from 50% is genuinely different rank to rank: Diamond's readings cluster tightly, Challenger's scatter nearly three times as wide, and why tier affects win rates goes through the full breakdown of that spread and what plausibly explains it, and what doesn't.
A worked example
Say a Gold lobby comes back at 55% for your side. Gold's measured spread puts that reading a little under one standard deviation above 50%, which sorts it into the high band: a genuinely favourable draft, but one tier short of really high, which is reserved for readings rare enough to show up in only about 1 in 15 lobbies. The same 55% in a Challenger lobby, where readings ordinarily scatter across a much wider range, would land inside neutral instead — unremarkable there. That's the whole reason the bands exist per tier: the number 55% means something different depending on where it's measured, and a flat threshold would be lying about that. Take "high" as a nudge that the picks favour you, not a guarantee that the game does.
What the model doesn't know
It works from aggregate champion win rates alone, which means it has no idea about player skill, champion mastery, individual matchups, team synergy, or the order picks happened in. A team that drafted its way into a rough individual matchup can still read as "low," because the model only ever sees the champions, never the matchup between them; aggregate vs matchup win rates and reading a losing draft both go into what that gap looks like in practice.
A partial lobby doesn't get a tighter reading either. If champion select is still going, or OCR couldn't match a pick or two, the calculator scores whatever it has rather than waiting — but it widens that tier's bands rather than narrowing them. Fewer picks locked in is weaker evidence, not stronger, so a six-champion reading needs to drift further from 50% before it earns a "really low" or "really high" label than a full ten-champion one does. See when to dodge for how a reading like this fits into an actual decision.
