SupaLaunch LogoSupaLaunch Demo
Blog

Building a Poker AI: Our Technical Journey

12 Oct 2024
By Exploit Coach Team

Building a poker analysis tool that's fast, accurate, and actually useful is surprisingly hard. This is our journey - the good decisions, the mistakes, and what we learned along the way.

The Problem We're Solving

Traditional poker solvers like PioSolver and GTO+ are incredibly powerful, but they have real UX problems for everyday players:

  • Slow: A single postflop scenario can take 5-30 minutes to solve
  • Complex: You need to understand bet tree construction, card abstraction, and solver parameters
  • Desktop-only: No mobile access, no cloud-based collaboration
  • Expensive: $250-$1,200 upfront cost
  • Pure GTO: They tell you equilibrium strategy, but not how to exploit weak opponents

We wanted to build something different:

  • ⚡ Fast enough to analyze dozens of hands per session
  • 🧠 Smart enough to work without manual configuration
  • 📱 Accessible from anywhere
  • 💰 Affordable for recreational players
  • 🎯 Practical - both GTO baseline AND exploitative adjustments

Our Tech Philosophy

We made a few key architectural decisions early on:

1. Web-First, Not Desktop

Every competitor is a desktop app. We went web-based because:

  • Accessible anywhere - analyze hands on your phone after a session
  • No installation friction - works immediately in any browser
  • Always up-to-date - no manual updates required
  • Cross-platform - works on Mac, Windows, Linux, iOS, Android

Trade-off: We can't use every CPU core on your machine like desktop solvers do. But cloud GPUs are getting cheaper, and web UX is far better.

2. Speed Through Smart Caching

Traditional solvers re-compute everything from scratch. We use a hybrid approach:

Common scenarios - Pre-computed and cached

  • BTN vs BB single-raised pots (most common scenario)
  • Standard stack depths (50bb, 100bb, 200bb)
  • Common board textures

Novel scenarios - Computed on-demand with optimizations

  • Unusual stack depths
  • Multi-way pots
  • Custom bet sizes

This gives us instant results for 70%+ of queries, while still handling edge cases.

3. AI as Enhancement, Not Replacement

We use AI in specific ways:

What AI does:

  • Explain poker concepts in natural language
  • Parse hand histories from different formats
  • Suggest exploitative adjustments based on opponent stats
  • Provide context and reasoning for recommendations

What AI doesn't do:

  • Solve poker (we use proper game theory algorithms for that)
  • Make up strategies (all recommendations are validated)
  • Replace human judgment (it's a tool, not an autopilot)

A lot of "AI poker tools" are just ChatGPT wrappers. That's not good enough - GPT doesn't know GTO without proper training data and validation.

Major Challenges We Faced

Challenge 1: The Complexity Explosion

Poker game trees are absurdly large. Even a "simple" heads-up postflop scenario has:

(169 hero hands) × (1,326 villain hands) ×
(22,100 flops) × (47 turns) × (46 rivers) ×
(multiple bet sizes at each decision) =

Way too many to compute exhaustively

Our solution:

  • Focus on most common scenarios first
  • Use board texture clustering (similar boards → similar strategies)
  • Implement smart card abstraction
  • Pre-compute during idle time, serve from cache during peak usage

Challenge 2: Accuracy vs Speed Trade-offs

Traditional solvers: 99.9% accurate, takes 20 minutes Our goal: 95%+ accurate, <1 second response

Is 95% accurate "good enough"? For most players, yes:

  • The difference between 95% and 99% GTO is smaller than most players' execution errors
  • Fast feedback means you'll analyze more hands (volume matters)
  • You can always deep-dive specific spots in a traditional solver

We're transparent about this: use our tool for hand review sessions, use desktop solvers for deep study.

Challenge 3: Making GTO Actionable

Solver output looks like this:

AKs: Bet 33% (47.2%), Bet 75% (28.1%), Check (24.7%)

That's not helpful for most players. They want to know:

  • Why does GTO prefer smaller bets here?
  • When should I deviate from this?
  • How does this change against this specific opponent?

We spent months building the "explanation layer" - turning solver math into actionable insights. This is where AI helps: translating poker theory into plain English.

Challenge 4: Handling Exploitative Play

Pure GTO is defensive - you can't lose long-term, but you're leaving money on the table against weak players.

We needed to layer exploitative recommendations on top:

Input: Opponent stats (VPIP, PFR, fold-to-3bet, etc.) Process: Compare to GTO population averages Output: Specific adjustments ("This player folds 68% to 3-bets → increase your 3-bet bluff range by 40%")

This is tricky because:

  • Sample sizes matter (don't adjust based on 10 hands)
  • Good players adjust back (don't over-exploit)
  • Context matters (tournament vs cash, stack depth, etc.)

Getting this right required studying thousands of hands and validating recommendations.

What We Got Right

1. Starting Simple

Our MVP was just: BTN vs BB cash game hands, 100bb deep. That's it. We could've tried to solve every scenario on day 1, but focusing on the single most common spot meant we could iterate fast.

2. Beta Testing Early

We launched with "beta" in the name and were transparent about limitations. Users gave us incredible feedback:

  • Edge cases we never considered
  • UX confusion we missed
  • Feature requests we wouldn't have thought of

Ship early, iterate based on real usage.

3. Being Transparent About Trade-offs

We don't claim to be better than PioSolver at deep analysis. We're faster and more accessible for everyday hand review. Different tools for different jobs.

Users appreciate honesty more than marketing hype.

What We'd Do Differently

1. Infrastructure Earlier

We initially underestimated how much compute we'd need. Should've architected for scale from day 1, not refactored after launch.

2. More Automated Testing

Poker has so many edge cases. We should've built automated test suites earlier to catch regressions.

3. User Onboarding

Even with a "simple" interface, poker strategy tools are complex. We should've invested in tutorials and tooltips from the start.

Lessons for Other Builders

If you're building a poker tool (or any niche SaaS):

1. Talk to users obsessively

  • Poker players know what they need
  • Feature requests reveal real pain points
  • Beta testers will find bugs you never imagined

2. Don't over-engineer

  • Build the minimum that's useful
  • Iterate based on real usage, not hypothetical scenarios
  • You'll never predict every edge case

3. Be honest about limitations

  • Users respect transparency
  • Over-promising destroys trust
  • "Good enough" today beats "perfect" never

4. Differentiate on UX, not just features

  • Every poker tool has "hand analysis"
  • Ours is faster, web-based, and explains reasoning
  • UX is a feature

What's Next

We're constantly improving:

Short-term (Q4 2024):

  • Expanding to more preflop scenarios
  • Multi-way pot support
  • Mobile-optimized UI improvements

Medium-term (Q1 2025):

  • Tournament mode (ICM calculations)
  • Hand history bulk import
  • Opponent tracking across sessions

Long-term (2025+):

  • PLO (Pot-Limit Omaha) support
  • Video hand review tools
  • Community features (share analyses, discuss spots)

Try It Yourself

We've been building Exploit Coach for over a year, and we're excited to finally share it with the poker community.

If you want to:

We're committed to building the best poker training tool for serious players who want to improve without spending $1,000+ on desktop software.


Questions about our approach or product decisions? Reach out on Discord - we love talking shop with other poker players and builders.

- The Exploit Coach Team