A poker solver worth trusting.
Timba is a Nash-equilibrium solver written from first principles in Zig. It converges faster than PioSolver, uses a fifth the memory, and ships with a real API.
Benchmarked against every solver on the market.
Built from the card up.
We questioned every data structure, every access pattern, every assumption inherited from 2000s-era poker libraries. The result is smaller, faster, and more accurate.
Median river solve completes in 1.6 seconds. Turn spots under 40 seconds. The engine is fast enough to iterate on hand histories in real time.
f16 strategies, fixed-point regrets, sparse storage after burn-in. A full tree that used to need 15 GB fits in under 3.
A 99.9%-accurate neural net trained on converged solver output returns GTO strategies in under a millisecond, for any spot.
Every screen in the dashboard is a call to the same public REST API. Script study sessions, build custom tools, batch overnight.
Vulkan compute kernels for equity and regret updates. The same engine runs on CPU for laptops and on H100s for training.
Evaluator and CFR core are MIT-licensed. Benchmark yourself, contribute to the evaluator, or fork the whole thing.
Measured on the same trees as the others.
| Metric | Timba | PioSolver | GTO+ | Monker | Wizard |
|---|---|---|---|---|---|
| River Nash distance | 0.087% | 0.21% | 0.23% | 0.19% | n/a |
| Turn, 1 bet size | 0.067% · 37s | ~110s | ~130s | ~95s | n/a |
| Memory footprint | ~3 GB | 15 GB | 10 GB | 18 GB | n/a |
| API access | Full REST | — | — | — | Limited |
| GPU acceleration | Vulkan | — | — | — | — |
| Starting price | Free beta | $475 | $75–150 | $475 | $50–250/mo |
There's a lazy way to build a solver.
We chose the long way. Every data structure was written and measured before it was trusted.
Four card encodings were implemented and benchmarked before one was chosen. We didn't inherit a format from a 2000s C library.
72M matchups per second is the entry price. Hand evaluation fits in L1; the rest of the engine is allowed to be smart.
f16 strategy, fixed-point regrets, sparse post-burn-in storage. PioSolver wants 15 GB. We want 3.
A 99.9% neural net trained from solver output answers any spot in under a millisecond. Study speed matters.
If you can curl, you can solve.
Every screen in the dashboard is a call to the same public API. Build your own UI, script your own workflow, batch-solve overnight.
The REST endpoints are stable today — every screen in the dashboard uses them. Formal reference docs, TypeScript SDK, and Python SDK drop alongside the M6 release.
// POST /v1/solve/river curl -sS $API/v1/solve/river \ -H 'Authorization: Bearer <token>' \ -H 'Content-Type: application/json' \ -d '{ "board": ["Ks","7h","2d","4c","9s"], "pot": 100, "stacks": [200, 200], "bet_fractions": [0.33, 0.67, 1.0], "iterations": 500 }' // → 0.087% Nash distance in 1.6s across 1,081 active combosPublic, dated, checked off.
- M1Cards · evaluator · benchmarksShipped
- M2Kuhn · DCFR generic coreShipped
- M3Leduc · MCCFRShipped
- M4NLHE river solverIn progress
- M5NLHE turn solverIn progress
- M6NLHE flop solver + full 6-maxPlanned
- M7Vulkan GPU kernelsPlanned
- M899.9% neural net · instant APIPlanned