Nuttiness beats raw equity
PLO equities run close together. A disconnected rainbow hand still keeps about 31% against double-suited aces, which leaves preflop equity a poor way to sort hands. What sorts them is nut potential. These queries measure the equity floor, dominated draws, and how often a big-looking hand is already second best.
6 runnable queries. The stated numbers are what we measured, not a promise. Monte-Carlo runs wobble, and the solver-referenced ranges move when we re-solve. Run the cells for today's figures.
Two claims from the strategy material set this up. The worst PLO hands still hold roughly 35% against some of the best, so preflop equity barely separates anything and equity realization does the separating. And the chronic PLO leak is overplaying non-nut holdings: low flush draws, sucker-end straight draws, weak trips. Their raw equity looks fine, which is the trap.
1. The equity floor: junk against the best hand in the deck
select avg(equity(hero)) from game='omahahi', hero='9h7s5d2c', villain='AsAhKsKh' A disconnected rainbow nothing-hand against double-suited aces.
About 31%. Even 3-3-2-2 rainbow, close to the worst hand you can be dealt, keeps about 26%. The material rounds the floor to 35%. Nothing in PLO is ever crushed preflop the way 72o is crushed by aces.
Run in the PQL engine →2. The wrap that wins and the wrap that pays off
select count(minHandType(hero, river, straight)) as makes_straight,
count(minHandType(hero, river, straight) and not winsHi(hero)) as straight_but_loses
from game='omahahi',
hero='JsTh7d6c',
v1='****', v2='****',
board='9s8d2c' J-T-7-6 wraps the top side of 9-8. Re-run with hero=7s6h5d4c for the bottom-side wrap on the same flop.
The nut-side wrap makes a straight about 70% of the time and loses with it about 13%, so roughly one straight in five is no good. The bottom-side wrap makes one about 53% and loses about 17% of the time, closer to one in three. Draw to the low end and the hand you eventually make is often the second-best hand at the table, which is why the material rates a draw to the third nuts so low.
Run in the PQL engine →3. The ten-high flush draw is drawing dominated
select count(hasFlushDraw(villain, flop)) as villain_flush_draws,
count(hasFlushDraw(villain, flop) and inRange(villain, '(Ah,Kh,Qh,Jh)')) as draws_above_the_T
from game='omahahi',
hero='Th8h7s6d',
villain='#6m/rfi/utg',
board='9h6h2s' Hero holds the ten-high heart draw. The second count asks how many of a tight UTG range's flush draws contain a heart bigger than the ten.
About 22% of the UTG range holds a flush draw, and over 90% of those hold the Ah, Kh, Qh or Jh alongside it. Tight preflop ranges are built out of big suited cards, so a low flush draw is nearly always looking at a bigger one. The material files stacking off with it under habits imported from Hold'em.
Run in the PQL engine →4. Weak trips on K-8-8, three-handed
select count(inRange(v1, '8')) as each_opponent_has_an_8,
count(bestHiRating(flop) > hiRating(hero, flop)) as hero_already_beat
from game='omahahi',
hero='Ts9s8d7c',
v1='****', v2='****',
board='Kh8s8c' Hero flops trips with T-9-8-7. The first count is per opponent (v1). The second asks how often anybody at the table already has hero beaten on the flop.
About 9% per opponent holds the case eight, which matches the material working the same hand and calling it eight and a half to nine percent. Its running total of almost 25% beaten measures closer to 16% here. The material flags its own arithmetic as off-the-cuff and says to check estimates away from the table, so check it.
Run in the PQL engine →5. Sets are rare, trips are everywhere
select count(minFlopHandCategory(v1, set)) from game='omahahi', hero='Ts9s8d7c', v1='****', board='Kh7d2c' A random hand flopping a set on an unpaired board. On the trips side, a random hand holds any given live rank about 15-17% of the time once the board pairs. Cell 4 read about 9% only because hero's own eight took half the remaining supply out of the deck.
About 4%, against the material's 1.5% per rank and 4.5% per flop. Put the two counts side by side and you run into trips on a paired board three or four times as often as you run into sets on an unpaired one.
Run in the PQL engine →6. What a blocker is worth, in combos
select count(minHandType(villain, river, flush)) as villain_has_flush
from game='omahahi',
hero='AhKh2d2c',
villain='#6m/rfi/btn',
board='9h6h2sKd3h' Hero holds the nut flush on a three-heart river. Re-run with hero=AsKc2d2c, no hearts, for the unblocked baseline.
About 14% with the two hearts in hero's hand against about 27% without them, so holding flush cards roughly halves the flushes an opponent can turn up with. That is why a made flush keeps value-betting into a board that could hold a bigger one. Keep the size of the effect in view though: a blocker moves combo counts by a few points, while getting a frequency wrong moves results by tens.
Run in the PQL engine →Preflop equity is a weak sorting key in PLO, and realization and nut potential do the sorting instead. The labels hide most of what matters, because "made straight" and "flush draw" each cover a two- to threefold difference in how often the hand is actually best. Only two of your four cards play at showdown, so judge the two-card combos you make hands with rather than the four you were dealt. Estimates drift too. The material's own worked example overshoots by nine points, which is the argument for running the query instead of trusting the count you did at the table.
PQL computes entirely in your browser, no install or account. New to it? See the PQL syntax reference, open the PQL engine, or browse all recipes.