Enter the Lab →
Methodology

How ET Parlays works, and where it is wrong

By ET · Updated 2026-10-05
The voice behind ET Parlays. Grades the props and teaches the math the books don’t itemize.

ET Parlays rates player props against its own model, grades every rating against the official box score, and publishes the result whether it flattered us or not. This page is the receipt. It covers where the data comes from, how a read is produced, how it is graded, how much of the board never gets graded, and every place our numbers are currently wrong.

We are not a sportsbook. You cannot place a bet here, we hold no money, and no sportsbook pays us. We publish research, and research is worth exactly what its track record says it is worth.

What ET is, and what it is not

ET is a research tool. It reads a slate, rates props, and explains the reasoning in plain English. It does not tell you what to bet.

We call our outputs reads, not picks, and the distinction is the point. A pick is somebody’s bet. A read is a piece of research with a number attached and a record behind it. You are meant to disagree with it sometimes.

Three things we will not do, so you can hold us to them:

Where the numbers come from

Two kinds of data go in, and they are not equally interesting.

For grading, we use the official league feed for that sport, and nothing else. For MLB that is the same box score the league publishes. We never grade a read against our own copy of a result, our own scraper, or a third party’s summary. If our record says a player got two hits, the league says he got two hits, and you can check it in ten seconds.

That is the part that decides whether the tables on this page are worth anything, so that is the part we pin down.

For producing a read, we use a mix of public league data and a commercial odds feed. We do not itemise those sources, for the same reason we do not publish the model: naming the ingredients is most of the recipe. Treat that as a real limitation rather than a footnote. You can audit our outputs, not our method, and this page is built so the outputs are enough.

How a read is produced

Every read is a probability first and a letter second.

  1. A model estimates the chance that one player clears one line in one specific game.
  2. That probability is compared against the market price for the same prop, where we captured one.
  3. The probability is banded into a letter, S through C, so you can scan a board without reading twenty numbers.
  4. The read is written to the database with its probability, its line, its side and the game date, before the game starts.

That last step is what makes the record checkable, and it is the only step here we would defend at length. A read cannot be edited after the fact, because grading looks up the row that was written before first pitch. Nothing in the tables below is a bet we decided we had made after we saw how it went.

We also check it. Every night, before the tables are built, each read’s write time is compared with its team’s scheduled first pitch, and any read written later is left out. That check exists because the rule was broken for four months, and how it was broken is further down.

How a read is graded

For MLB props, a nightly job pulls every box score for the slate and compares the actual stat to the line on the row.

That last rule matters more than it sounds. A did-not-play is not a wrong read. Scoring it as a loss would make us look worse than we are, and scoring it as a win would make us look better. It is removed.

What counts as graded, and what does not

The whole board, read from the database when this page last rebuilt.

Reads written since 2026-04-14129,898
Reads on games already played129,551
Graded99,255
Voided, player did not play8,025
Played, ungraded, no explanation on the row22,308

17.2% of the board we have already played has never been graded. That is the least flattering number on this page, so it sits above the calibration tables rather than below them.

Why those rows are missing

One-off audit · September 9, 2026 · not live

Most of them are players who never played. We rate a slate before lineups are posted. When a player we rated does not end up in the lineup, and the automatic void rule does not catch it, the row sits there unresolved.

On the September 9, 2026 audit, of 24,684 ungraded player prop rows, 19,031 belonged to a player with no graded row at all that day. For 87.9% of those, no lineup spot was ever recorded, against 52.3% for rows that did grade.

The remaining 5,653 are different, and worse. Those players did play. They graded in another market the same day. Their rows are gradeable and missing.

On September 24 we graded the ones we honestly could. The grader had stopped at 1,000 rows on 26 heavy slates between April and August, a limit we removed on September 4. Of the 5,735 hitter rows like this counted that day, 3,024 were written before their game started, and we graded them from MLB’s box scores with the same rules the grader uses. Checked the same way, 2,974 of 2,979 reads we had already graded came out the same. The other 2,711 stay ungraded: 2,640 were written after their game had started, for the reason below, 70 fell on a team’s doubleheader, where we cannot tell which game the read was for, and one had no box score line.

And a smaller reason, found 2026-09-10

73 first-inning reads will never be graded, because they were not predictions. The job that writes those reads runs three times a day so it can pick up posted lineups, and nothing stopped a later run from writing a fresh pre-game read for a game that had already started. Across the season, 78 of 1,337 were written after first pitch, some by more than two hours, on a market that settles in the first inning.

The job now refuses any game whose scheduled first pitch has passed. The rows it already made stay in the record as ungraded, permanently, because grading them would put a bet placed after the whistle into a table that exists to show we do not do that. They are counted in the ungraded number above rather than quietly deleted.

And a larger one, found September 24, 2026

11,828 hitter reads had been graded even though they were written after their game started. That is 14.6% of the 81,236 graded hitter reads, and 77 pitcher reads had the same problem. From May to August, saving the Lab’s board after midnight Eastern wrote that day’s reads again, for games already played, typically about six hours after first pitch. The lock added on September 4 stopped it, and none have been written since.

They did not make us look better. At the same stated chance, they landed as often as the reads written on time, or less often, and leaving them out changes our calibration error by less than a third of a point in any market. They are left out anyway, from every calibration table on this page, because a read written after the game started is not a prediction. The counts at the start of this section still include them, because they were graded, and we would rather show that than trim a number quietly. The tables now check every read’s write time each night, so this cannot come back unnoticed.

Two families were graded and never reached this record. Fixed September 10, 2026

This was the least defensible thing the audit found, and it turned out to be two separate defects sitting on top of each other.

No runs first inning had 1,124 graded outcomes in its own table and zero here. The grader copies each outcome into this record as a second write. For that market it was writing the word “NRFI” into a column that holds true or false, so the database refused it every single time, every night since April. The refusal was returned rather than thrown, and the code that would have caught it could only catch something thrown. Nothing was ever logged.

Game winner was worse, because it was not missing, it was wrong. The grader knows which side it leaned and writes one true-or-false. This record holds a row for each team. The copy had no filter for which team, so it stamped the same answer on both. Of 826 graded moneyline rows, 191 sat in games where both teams were graded, and all 191 pairs said the same thing about a game only one of them could have won. Zero were right in the way a pair has to be right.

What we did about it. Both copies now read the rows first and grade each one against the side it actually published, report every failure instead of discarding it, and count what they wrote so a silent zero is visible. The history was repaired from the tables that hold the real outcomes: 1,085 first-inning reads filled in and 191 moneyline rows corrected. The tables on this page are computed from the repaired record.

We found it by auditing this page rather than by an alert firing, and it had been wrong for five months. That is the honest version of how it surfaced.

The part that should worry you most

One-off audit · September 9, 2026 · not live

The ungraded rows are not a random sample of the board. Grading is more complete on the reads we rated highest. On the audit, S reads were 8.8% of the graded set against 3.1% of the ungraded set, and C reads were 54.4% against 70.9%. The missing rows are more C-heavy and slightly lower-probability than the graded record.

What that means for the tables below: they are computed on a subset that over-represents our confident reads. The missing rows have no outcome, so we cannot know directly whether they would have landed at the same rate.

What we can say is more specific, and it comes from asking why a row goes ungraded rather than what the missing rows look like. The tables are banded by the probability we stated, not by the letter, so a shift in the mix of letters cannot move a band. For our record to be flattered, the missing rows would have to be losers within their own probability band. The mechanism that makes a row go missing is that the player was not in the box score, and whether a man was in the lineup is a fact about the lineup, not about whether the read would have won.

That is a mechanism rather than a resemblance, and it is the reason we are willing to publish the tables at all.

Where that argument did not hold, and what happened when we checked: the 5,653 rows belonging to players who did play. We expected that group to skew toward losses, because the usual reason a hitter finishes with one at bat is that he came in late, and we said so here before grading them.

We were wrong. On September 24 we graded the 3,024 of them that were written before their game started. On hits, total bases and hits plus runs plus RBIs they landed within about half a point of the on-time reads at the same stated chance. Home runs landed more often, 20.5% against 14.6% across 683 reads, though those rows come from only 26 slates, so we do not read much into it. Adding them made our calibration error slightly smaller in four markets out of five, not larger.

What the record actually says

Every table below is read from the graded record when this page rebuilds. Each one bands the reads by the probability we stated, then shows what happened in that band. A band appears only once it has at least 30 graded outcomes. Season window, calibration version 2026-10-05.

Home runs, 24,552 graded

We saidLandedGapReads
3.6%4.2%+0.7589
7.3%7.3%+0.13,308
12.1%12.3%+0.24,318
17.2%16.8%−0.44,897
22.0%16.3%−5.72,442
27.2%16.9%−10.33,051
31.9%17.9%−14.02,639
36.7%18.0%−18.71,406
42.0%20.9%−21.1870
46.7%21.4%−25.3462
50.0%22.8%−27.2570

Total bases, 16,278 graded

We saidLandedGapReads
17.6%24.5%+6.894
22.6%25.2%+2.6361
27.4%29.2%+1.81,114
32.5%32.6%+0.14,026
37.0%36.7%−0.44,476
41.9%37.9%−4.12,477
47.1%40.1%−7.03,390
51.8%33.2%−18.6226
55.9%49.1%−6.759
67.0%29.1%−37.955

7 further bands are withheld for having fewer than 30 graded outcomes.

One or more hits, 16,097 graded

We saidLandedGapReads
42.5%45.6%+3.192
47.6%54.1%+6.6471
52.6%54.1%+1.51,648
57.3%56.0%−1.33,312
62.1%59.2%−2.94,093
66.8%61.3%−5.53,274
71.9%62.9%−9.01,680
76.6%61.8%−14.81,084
81.4%62.4%−19.0372
85.8%80.3%−5.571

1 further band is withheld for having fewer than 30 graded outcomes.

Hits plus runs plus RBIs, 16,010 graded

We saidLandedGapReads
27.6%27.4%−0.273
32.6%35.2%+2.6341
37.4%39.9%+2.51,265
42.4%41.5%−0.93,157
47.3%45.8%−1.54,499
52.0%48.9%−3.13,162
56.9%50.5%−6.42,052
61.7%45.5%−16.21,073
66.7%48.3%−18.4323
71.2%60.0%−11.265

2 further bands are withheld for having fewer than 30 graded outcomes.

Moneylines, 2,607 graded

We saidLandedGapReads
52.2%49.5%−2.61,652
57.0%55.8%−1.3735
61.9%57.9%−4.0183
66.2%73.0%+6.837

2 further bands are withheld for having fewer than 30 graded outcomes.

Hits plus runs plus RBIs at the higher rung, 1,446 graded

We saidLandedGapReads
63.7%58.5%−5.141
68.2%77.4%+9.362
72.3%62.3%−10.0244
77.2%70.0%−7.2290
82.1%67.7%−14.4489
86.5%71.6%−14.8268
90.9%76.9%−14.052

2 further bands are withheld for having fewer than 30 graded outcomes.

No runs in the first inning, 1,313 graded

We saidLandedGapReads
53.4%49.8%−3.5305
56.9%52.7%−4.2877
61.4%62.6%+1.2131

2 further bands are withheld for having fewer than 30 graded outcomes.

Pitcher outs, 857 graded

We saidLandedGapReads
37.7%33.3%−4.436
42.6%54.5%+11.966
47.9%64.7%+16.868
52.6%46.8%−5.877
57.5%53.1%−4.364
62.5%44.4%−18.181
67.0%49.4%−17.589
72.4%60.4%−12.0106
76.9%33.0%−44.088
82.1%62.3%−19.861
87.5%53.1%−34.432
99.1%53.9%−45.289

8 further bands are withheld for having fewer than 30 graded outcomes.

First five innings, 431 graded

We saidLandedGapReads
52.3%51.8%−0.5222
57.0%40.3%−16.7144
62.1%47.7%−14.565

2 further bands are withheld for having fewer than 30 graded outcomes.

NPB, 79 graded

We saidLandedGapReads
46.8%23.5%−23.334
58.0%60.0%+2.045

5 further bands are withheld for having fewer than 30 graded outcomes.

Strikeouts, 37 graded

We saidLandedGapReads
66.8%73.0%+6.237

7 further bands are withheld for having fewer than 30 graded outcomes.

Tennis (ATP), 30 graded

We saidLandedGapReads
62.5%60.0%−2.530

3 further bands are withheld for having fewer than 30 graded outcomes.

Tennis (WTA), 30 graded

We saidLandedGapReads
67.4%73.3%+6.030

3 further bands are withheld for having fewer than 30 graded outcomes.

Read the pattern, not the rows

Where we say something is unlikely, we are close to right. Home run reads in the 5% to 15% range land within about a point of the stated number, across thousands of reads. That is the largest and most reliable part of our board.

Where we say something is likely, we are too confident, and the gap grows with the confidence. A home run read we called a coin flip lands about a quarter of the time. That coin flip was a ceiling in the model, not a judgment about a hitter. Since September 10, 2026 the number you see for a home run is the one the record supports, and the row stays in the table because it is what we showed at the time.

The shape is the same in every family with enough data to check. This is a known statistical failure mode. When you rank thousands of candidates and keep the top ones, the top of the list is partly genuine quality and partly luck that has not reverted yet. The luck reverts. We have now measured the same effect in three separate places in our own product.

Anyone telling you their high-confidence selections outperform their stated probability, without showing you a table like the ones above, has not checked.

What we know is wrong right now

  1. The model’s confidence runs hot in every family, and worse the higher the number goes. The tables above show the number you were shown against what happened. Until 2026-09-10 that was the model’s own number, so most of each table still describes the model. Since then every batter market reaches you through a layer that lowers the model’s number to what the last sixty days of this record support. In the four largest batter markets, those lowered numbers landed within about two points of what they said over their first two weeks. That is a short window, and the model underneath is unchanged. The pitcher markets and the game markets do not have the layer yet.
  2. That layer may only lower a number, never raise one. Our families are measured biased upward, so refusing to raise is the safe direction for you and the honest one for us. It has a cost, and it is ours to state: where a band runs cold, the layer leaves it cold. The clearest one is in hits: a band stating about 48% that landed 54% across 471 reads, and the layer will not raise it. We would rather understate a long shot than talk you into one.
  3. On total bases and hits plus runs plus RBIs, the letter does not rank. Measured 2026-09-10 on the published board: C landed 51.7% on the 2+ rung across 1,850 reads while A landed 47.8% across 159. Re-cutting the thresholds does not fix it. The best cut available, fitted April to July, held less than four points in August and September and clears no bar we would accept. The models do rank across the full pool; the board is the top of a slate, and on those two markets the letter has nothing left to separate.
  4. The pitcher outs model is the worst offender. In its top band, 89 reads stated about 99% and landed 54%. Treat outs reads as directional only. We are rebuilding it.
  5. 17.2% of the played board is ungraded, and the missing part is not random. Shown above.
  6. Fixed 2026-09-10: two markets were graded and never reached this record, and one of them was being graded wrongly rather than not at all. Written up above, including what it did to the moneyline numbers this page used to show.
  7. Fixed 2026-09-24: 11,828 hitter reads written after their game started had been graded. They are now left out of every calibration table here, and each read’s write time is checked every night. Written up above.
  8. Strikeout reads have no published record right now. We found the model running about 9% hot, rebuilt it, and it went live on 2026-09-08. A recalibrated model’s record starts the day it first scored a board. Rows from the old model describe a model that no longer exists, so we deleted its record rather than let it flatter or damn the new one.
  9. Our one apparent edge over the sportsbook was selection. Measured 2026-09-09 and written up above. Price capture covers 22.3% of graded reads and is heavily skewed toward reads we rated likely.
  10. We do not publish our method. Outputs are auditable, inputs are not.

Why there is no single accuracy number on this page

We could compute one. It would be a good number. It would also be wrong.

Pool every family together and you get a flattering score that mostly measures something trivial: that home run reads are rarer than hit reads. Split the same data by family and the apparent skill largely disappears. The pooled figure describes our board’s composition, not our judgment.

This is a well-known trap, and it is exactly the number a founder reaches for. So we wrote a rule for ourselves: no pooled performance metric, ever, on any surface. If you see one on a competitor’s site with no per-market breakdown underneath it, that is what it is.

What happened when we checked whether we beat the book

One-off audit · September 9, 2026 · not live

We had one number that looked like an edge. On hits, our Brier score was 0.2416 against the book’s 0.2490 across 10,096 graded reads that carried a captured price. Lower is better. That is the number a founder puts on the homepage.

We ran the check anyway. It does not survive.

Prices are captured on 22.3% of our graded reads, and that fraction is not a random sample. Coverage runs from 0.1% of the reads we rated under 10% to 66% of the reads we rated above 90%. The priced set has a mean stated probability of 57.8%. The unpriced set, 38.3%. We were not comparing ourselves to the book across our board. We were comparing ourselves on the part of the board where we had already decided the answer was likely.

Hold the stated probability fixed and the edge goes away. Inside matched bands we are better in four and the book is better in four, but two of our four are differences of two ten-thousandths. Our average winning margin is 0.0011. The book’s is 0.0171, fifteen times larger. Across the nine markets with enough priced reads to check, the book’s Brier is better in seven.

The comparison is also rigged in our favour, and it still loses. The book’s implied probability includes its own margin, which makes the book’s forecast look worse than the book’s actual belief. We could not remove it, because that needs both sides of the same prop captured together and ours are not paired. The real gap is wider than the numbers above.

There is a third problem and it is the one that would have been hardest to spot. Whether a read got priced is correlated with whether it won, even inside a single probability band. In the band where we stated above 90%, priced reads landed 52.3% and unpriced reads landed 76.5%. We do not yet know why, and until we do, no comparison drawn from the priced subset means very much.

That is why “we beat the sportsbook” appears nowhere on this site. The check is rerunnable and it lives in our repository rather than in someone’s notebook, so the day it passes will be a fact rather than a feeling.

What we do about it

The measurement above is not filed away. It runs the product.

Every night we rebuild a calibration table from the graded record, banding reads by the probability we stated and recording what happened in each band. When Slip Check or the public checker at /check shows you a probability, it has been mapped through that table first. The number you see is the number our own record supports, not the number the model produced.

Two rules constrain that layer, and both exist to stop it being used as a marketing device. They are promises you can hold us to:

Ten questions to ask any betting site, including this one

Borrowed from David Spiegelhalter’s The Art of Statistics and answered here about ourselves. Take them to any site making claims about accuracy.

  1. How rigorously was this done? Every graded read written before its game started, counted, with no sampling. Reads written after first pitch are left out. 17.2% of the played board has no grade, mostly players who never got into the game.
  2. What is the uncertainty? Every band above carries its sample size. Bands under 30 are not shown.
  3. Is the summary appropriate? Banded by market, never pooled. See the section above.
  4. Is the source reliable? We grade ourselves, using official league box scores. You should weigh that.
  5. Is it being spun? The most flattering framing available to us is that our low-probability reads are accurate within a point. It is true. It is also the least useful part of our board for most bettors, and we said so.
  6. What are you not being told? That the ungraded part is not random, and that we do not publish our method.
  7. Does it fit what else is known? Yes. Overconfidence at the top of a ranked list is expected and well documented.
  8. Is an explanation being claimed? No. The tables describe what happened, not why any single read hit.
  9. Is it relevant to me? Only if you were going to trust a confidence label. That is what it measures.
  10. Is the effect important? The ordering is real and useful. The stated probabilities at the top are not, yet.

How to check us

What changes this page

The tables are read live. The defect list changes immediately in both directions: when one is fixed, it moves to a dated entry rather than disappearing.

We publish the failure before we publish the fix. It is the only order that lets you check whether the fix worked.

Nothing here is betting advice, and no research changes the fact that these are negative-expectation wagers. Bet only what you can afford to lose. If it stops being fun, take a break.

Questions

Is ET Parlays a sportsbook?

No. You cannot place a bet on ET Parlays. We do not hold funds and we are not paid by sportsbooks. We publish research about props you bet somewhere else.

How accurate is ET Parlays?

It depends on the market and the confidence level, which is why this page carries a table rather than a number. Our low-probability reads land within about a point of what we state, across thousands of graded outcomes. Our high-confidence reads land well below what we state. Both are on this page, computed from the live record.

Do you delete losing reads?

No. Every graded read stays in the record. Reads where the player did not play are voided rather than scored, and that rule is stated on this page so you can judge it.

Is this a tout service?

No. We do not sell a slate of picks or claim a winning record. We rate props, publish how those ratings have performed, and let you decide.

How often is this page updated?

The tables are read from the live record every time the page rebuilds, at most an hour old. The defect list is updated whenever one is found or fixed.

Why will you not publish your model?

Competitive reasons, and we would rather say that than dress it up. It is a real limitation on how far you can audit us, which is why every output on this page is checkable even though the method is not.