Serie A · Italy
MonzavUdinese
Referee
Not appointed
0 matches on record
Fouls per game
—
League average
22.9
fouls per match, both teams
Value
No edges published on this fixture. An edge is published only when a bookmaker's price beats the model's fair price by that market's full bar — most fixtures never produce one. The value board explains every gate a candidate has to clear.
What these numbers are
Not tips and not prices. Each row is the model's expected count for one player in this match — how many fouls, tackles or shots it thinks he records — plus the full spread of outcomes around it. Nothing here has been compared to a bookmaker.
Step 1
His own record
Every completed match in the dataset, as a rate per 90 minutes. The n column is how many matches that rests on.
Step 2
Pulled toward his position
A thin record gets pulled hard toward other players in his position, in his league — a goalkeeper toward goalkeepers, not toward the outfielders around him. How hard is fitted per market, not chosen: tackles pull about four times harder than shots on target.
Step 3
This fixture's conditions
How much of the stat the opponent concedes, what the referee's matches look like, and home or away. This is where a projection stops being a season average.
Step 4
Scaled to expected minutes
A rate becomes a count only once you say how long he plays. 60 minutes carries two-thirds the exposure of 90, and the distribution is built at that exposure.
How to read each columnClose
- Model /90
- The model's rate for this match with the minutes taken back out — steps 1 to 3 already applied. It moves with the opponent and the referee, so it is not his raw career rate; the builder shows career and model rates side by side.
- Exp. mins
- Minutes the model expects. Confirmed means the lineup is out; provisional means it is guessing from his start rate, and is the widest of the three.
- Projected
- The expected count in this match, at those minutes. This is the number a line is set against.
- Over 1.5, etc.
- Read straight off the distribution beside it, not off how often he has beaten that line before. It answers what the model thinks, not what has happened.
- n
- Matches behind his own rate. Under 30 it turns amber: the projection is mostly his position group speaking, and §6.3 will not publish an edge on it.
- Distribution
- The whole spread, not just the average. The dashed amber cut is the line; jade bars beat it. An expected 1.8 fouls made of 2 every week and an expected 1.8 made of a 0 and a 5 are different bets, and this is where you see which one you have.
Counts are modelled as negative binomial rather than Poisson, because fouls and tackles are overdispersed and a Poisson would systematically underprice the tails — which is exactly where over bets live. Every market on this page cleared its calibration gate before it was allowed to produce a projection: when the model says 60%, it lands within a point or so of 60% out of sample.
Fouls v20260813-1451 · Tackles v20260813-1451 · Shots v20260813-1451 · Fouls won v20260813-1451 · Cards v20260813-1451 · Saves v20260813-1451
Model projections
Fouls45 playersHighest: Nicolò Zaniolo, 1.97 expectedshowhide
What drives it — Who referees the match. A strict official lifts every player on the pitch, which is the part most books price off a season average. See what has actually happened.
| Player | Team | Model /90 | Exp. mins | Projected | Over 1.5 | n | Distribution |
|---|---|---|---|---|---|---|---|
| Nicolò ZanioloFWD | Udinese | 2.50 | 71provisional | 1.97 | 57% | 29 | 017% 126% 224% 317% 49% 54% 6+2% |
| Armando IzzoDEF | Monza | 1.98 | 82provisional | 1.79 | 53% | 28 | 020% 128% 225% 316% 48% 53% 6+1% |
| Sandi LovrićMID | Udinese | 2.32 | 59provisional | 1.52 | 44% | 35 | 026% 130% 222% 313% 46% 52% 6+1% |
| Warren BondoMID | Monzanow at AC Milan | 1.56 | 81provisional | 1.41 | 41% | 19 | 027% 132% 223% 312% 44% 51% 6+0% |
| Keinan DavisFWD | Udinese | 2.08 | 59provisional | 1.37 | 39% | 40 | 031% 130% 220% 311% 45% 52% 6+1% |
| Jean-Daniel Akpa AkproMID | Monza | 1.73 | 69provisional | 1.33 | 38% | 12 | 030% 132% 222% 311% 44% 51% 6+0% |
| Christian KabaseleDEF | Udinese | 1.55 | 74provisional | 1.28 | 37% | 42 | 030% 134% 222% 310% 44% 51% 6+0% |
| Jesper KarlströmMID | Udinese | 1.32 | 87provisional | 1.28 | 36% | 73 | 029% 135% 222% 310% 43% 51% 6+0% |
| Pablo MaríDEF | Monza | 1.30 | 86provisional | 1.24 | 35% | 19 | 030% 136% 222% 39% 43% 51% 6+0% |
| Thomas KristensenDEF | Udinese | 1.35 | 82provisional | 1.22 | 34% | 49 | 031% 134% 221% 39% 43% 51% 6+0% |
10 of 45 players shown, ranked by projection. Show all 45 → 2 of the 45 have since left the club — the squad is built from who has played for these teams, not from who is registered today, so they are shown rather than quietly dropped.
Tackles45 playersHighest: Andrea Carboni, 2.08 expectedshowhide
What drives it — Possession share. A tackle count depends far more on how much of the match is played at your own end than on a player’s own form. See what has actually happened.
| Player | Team | Model /90 | Exp. mins | Projected | Over 1.5 | n | Distribution |
|---|---|---|---|---|---|---|---|
| Andrea CarboniDEF | Monza | 2.22 | 84provisional | 2.08 | 58% | 26 | 016% 126% 224% 317% 49% 55% 6+3% |
| Oumar SoletDEF | Udinese | 1.95 | 86provisional | 1.86 | 53% | 52 | 019% 128% 224% 315% 48% 54% 6+2% |
| Jean-Daniel Akpa AkproMID | Monza | 2.41 | 69provisional | 1.86 | 52% | 12 | 022% 126% 222% 315% 48% 54% 6+3% |
| Warren BondoMID | Monzanow at AC Milan | 1.76 | 81provisional | 1.59 | 45% | 19 | 025% 130% 223% 313% 46% 52% 6+1% |
| Jesper KarlströmMID | Udinese | 1.62 | 87provisional | 1.56 | 45% | 73 | 024% 131% 223% 313% 46% 52% 6+1% |
| Pedro PereiraDEF | Monza | 1.81 | 77provisional | 1.54 | 44% | 32 | 027% 130% 222% 312% 46% 52% 6+1% |
| Alessandro BiancoMID | Monza | 1.76 | 77provisional | 1.50 | 42% | 32 | 027% 131% 222% 312% 45% 52% 6+1% |
| Matteo PessinaMID | Monza | 1.66 | 78provisional | 1.43 | 41% | 11 | 027% 132% 222% 311% 45% 52% 6+1% |
| Kingsley EhizibueDEF | Udinese | 1.92 | 66provisional | 1.42 | 40% | 52 | 033% 128% 219% 311% 45% 52% 6+1% |
| Pablo MaríDEF | Monza | 1.45 | 86provisional | 1.38 | 39% | 19 | 028% 133% 222% 311% 44% 52% 6+1% |
10 of 45 players shown, ranked by projection. Show all 45 → 2 of the 45 have since left the club — the squad is built from who has played for these teams, not from who is registered today, so they are shown rather than quietly dropped.
Shots45 playersHighest: Nicolò Zaniolo, 2.15 expectedshowhide
What drives it — The player’s own shot rate, shrunk toward others in his position, then adjusted for how many shots the opponent concedes. See what has actually happened.
| Player | Team | Model /90 | Exp. mins | Projected | Over 1.5 | n | Distribution |
|---|---|---|---|---|---|---|---|
| Nicolò ZanioloFWD | Udinese | 2.73 | 71provisional | 2.15 | 60% | 29 | 016% 124% 223% 317% 410% 55% 6+4% |
| Daniel MaldiniMID | Monzanow at Cagliari | 2.92 | 66provisional | 2.13 | 58% | 17 | 018% 124% 222% 316% 410% 55% 6+4% |
| Milan DjuricFWD | Monza | 2.29 | 71provisional | 1.80 | 51% | 17 | 021% 128% 223% 314% 48% 54% 6+2% |
| Dany MotaFWD | Monza | 2.29 | 68provisional | 1.73 | 49% | 27 | 022% 129% 223% 314% 47% 53% 6+2% |
| Keita BaldéFWD | Monza | 2.52 | 59provisional | 1.66 | 46% | 7 | 026% 127% 221% 313% 47% 53% 6+2% |
| Keinan DavisFWD | Udinese | 2.26 | 59provisional | 1.49 | 42% | 40 | 030% 128% 220% 312% 46% 52% 6+1% |
| Gianluca CaprariFWD | Monza | 2.40 | 49provisional | 1.30 | 35% | 20 | 036% 129% 217% 310% 45% 52% 6+1% |
| Sandi LovrićMID | Udinese | 1.69 | 59provisional | 1.11 | 30% | 35 | 037% 132% 218% 38% 43% 51% 6+0% |
| Jakub PiotrowskiMID | Udinese | 1.83 | 52provisional | 1.05 | 28% | 22 | 041% 131% 217% 37% 43% 51% 6+0% |
| Alessandro BiancoMID | Monza | 1.10 | 77provisional | 0.94 | 24% | 32 | 041% 134% 216% 36% 42% 50% 6+0% |
| Warren BondoMID | Monzanow at AC Milan | 1.03 | 81provisional | 0.93 | 24% | 19 | 042% 134% 217% 36% 42% 5+0% |
| Jurgen EkkelenkampMID | Udinese | 1.32 | 63provisional | 0.92 | 24% | 50 | 043% 132% 216% 36% 42% 50% 6+0% |
| Andrea PetagnaFWD | Monza | 3.32 | 25provisional | 0.92 | 21% | 3 | 049% 130% 211% 35% 43% 51% 6+1% |
| Georgios KyriakopoulosDEF | Monza | 0.93 | 84provisional | 0.86 | 21% | 34 | 043% 135% 215% 35% 41% 5+0% |
| Vakoun BayoFWD | Udinese | 2.44 | 32provisional | 0.86 | 21% | 6 | 050% 129% 212% 35% 42% 51% 6+1% |
| Adam BuksaFWD | Udinese | 1.90 | 36provisional | 0.77 | 18% | 10 | 051% 130% 212% 34% 42% 51% 6+0% |
| Matteo PessinaMID | Monza | 0.88 | 78provisional | 0.76 | 18% | 11 | 048% 134% 213% 34% 41% 5+0% |
| Samuele BirindelliDEF | Monza | 0.98 | 70provisional | 0.76 | 19% | 18 | 049% 132% 213% 34% 41% 5+0% |
| Gaetano CastrovilliMID | Monza | 1.35 | 50provisional | 0.75 | 18% | 10 | 050% 132% 213% 34% 41% 5+0% |
| Oumar SoletDEF | Udinese | 0.78 | 86provisional | 0.74 | 17% | 52 | 049% 134% 213% 33% 41% 5+0% |
| Idrissa GueyeFWD | Udinese | 3.09 | 21provisional | 0.73 | 16% | 3 | 052% 132% 211% 33% 41% 51% 6+0% |
| Jean-Daniel Akpa AkproMID | Monza | 0.92 | 69provisional | 0.71 | 17% | 12 | 051% 132% 212% 33% 41% 5+0% |
| Samuele VignatoMID | Monza | 2.09 | 27provisional | 0.63 | 14% | 4 | 059% 127% 29% 33% 41% 50% 6+0% |
| Stefano SensiMID | Monza | 2.28 | 23provisional | 0.57 | 12% | 3 | 060% 127% 28% 33% 41% 5+0% |
| Patrick CiurriaMID | Monza | 0.94 | 53provisional | 0.55 | 12% | 13 | 061% 126% 29% 33% 41% 5+0% |
| Hassane KamaraDEF | Udinese | 0.70 | 69provisional | 0.54 | 11% | 47 | 060% 129% 29% 32% 4+0% |
| Christian KabaseleDEF | Udinese | 0.60 | 74provisional | 0.49 | 9% | 42 | 062% 129% 28% 31% 4+0% |
| Jesper KarlströmMID | Udinese | 0.51 | 87provisional | 0.49 | 9% | 73 | 062% 129% 27% 31% 4+0% |
| Danilo D'AmbrosioDEF | Monza | 0.74 | 55provisional | 0.45 | 9% | 13 | 067% 124% 27% 32% 4+0% |
| Pedro PereiraDEF | Monza | 0.52 | 77provisional | 0.44 | 8% | 32 | 065% 127% 27% 31% 4+0% |
| Nicolò BertolaDEF | Udinese | 0.63 | 63provisional | 0.44 | 8% | 23 | 066% 126% 27% 31% 4+0% |
| Lennon MillerMID | Udinese | 0.94 | 41provisional | 0.43 | 8% | 13 | 068% 124% 26% 32% 4+0% |
| Andrea CarboniDEF | Monza | 0.42 | 84provisional | 0.40 | 6% | 26 | 068% 126% 25% 3+1% |
| Luca CaldirolaDEF | Monza | 0.54 | 63provisional | 0.38 | 6% | 12 | 069% 124% 25% 31% 4+0% |
| Kingsley EhizibueDEF | Udinese | 0.50 | 66provisional | 0.37 | 6% | 52 | 070% 123% 25% 31% 4+0% |
| Oier ZarragaMID | Udinese | 1.03 | 29provisional | 0.34 | 6% | 16 | 074% 120% 25% 31% 4+0% |
| Thomas KristensenDEF | Udinese | 0.34 | 82provisional | 0.31 | 4% | 49 | 074% 122% 24% 3+0% |
| Armando IzzoDEF | Monza | 0.34 | 82provisional | 0.31 | 4% | 28 | 074% 122% 24% 3+0% |
| Rui ModestoMID | Udinese | 0.86 | 31provisional | 0.30 | 5% | 9 | 076% 120% 24% 31% 4+0% |
| Alessandro ZanoliDEF | Udinese | 0.37 | 68provisional | 0.28 | 4% | 17 | 076% 121% 23% 3+0% |
| Pablo MaríDEF | Monza | 0.29 | 86provisional | 0.27 | 3% | 19 | 076% 121% 23% 3+0% |
| Juan ArizalaMID | Udinese | 1.10 | 18provisional | 0.22 | 3% | 1 | 081% 116% 22% 3+0% |
| Stefano TuratiGK | Monza | 0.00 | 89provisional | 0.00 | — | 30 | 0100% 1+0% |
| Răzvan SavaGK | Udinese | 0.00 | 89provisional | 0.00 | — | 19 | 0100% 1+0% |
| Maduka OkoyeGK | Udinese | 0.00 | 88provisional | 0.00 | — | 54 | 0100% 1+0% |
All 45 players shown, ranked by projection. Show fewer ↥ 2 of the 45 have since left the club — the squad is built from who has played for these teams, not from who is registered today, so they are shown rather than quietly dropped.
Fouls won45 playersHighest: Nicolò Zaniolo, 2.01 expectedshowhide
What drives it — How much a player runs at defenders. Dribble volume drives this far more than the referee does. See what has actually happened.
| Player | Team | Model /90 | Exp. mins | Projected | Over 1.5 | n | Distribution |
|---|---|---|---|---|---|---|---|
| Nicolò ZanioloFWD | Udinese | 2.55 | 71provisional | 2.01 | 57% | 29 | 018% 125% 223% 316% 49% 54% 6+3% |
| Daniel MaldiniMID | Monzanow at Cagliari | 2.65 | 66provisional | 1.94 | 54% | 17 | 020% 126% 222% 316% 49% 54% 6+3% |
| Warren BondoMID | Monzanow at AC Milan | 1.99 | 81provisional | 1.80 | 52% | 19 | 020% 128% 224% 315% 48% 53% 6+2% |
| Keita BaldéFWD | Monza | 2.66 | 59provisional | 1.75 | 49% | 7 | 025% 127% 221% 314% 48% 54% 6+2% |
| Alessandro BiancoMID | Monza | 2.02 | 77provisional | 1.72 | 49% | 32 | 022% 129% 223% 314% 47% 53% 6+2% |
| Armando IzzoDEF | Monza | 1.68 | 82provisional | 1.52 | 44% | 28 | 025% 131% 223% 313% 45% 52% 6+1% |
| Gianluca CaprariFWD | Monza | 2.52 | 49provisional | 1.37 | 37% | 20 | 035% 128% 218% 310% 45% 52% 6+1% |
| Jean-Daniel Akpa AkproMID | Monza | 1.76 | 69provisional | 1.35 | 39% | 12 | 030% 131% 221% 311% 44% 52% 6+1% |
| Dany MotaFWD | Monza | 1.73 | 68provisional | 1.31 | 37% | 27 | 031% 132% 221% 310% 44% 51% 6+1% |
| Matteo PessinaMID | Monza | 1.48 | 78provisional | 1.28 | 36% | 11 | 030% 134% 221% 310% 44% 51% 6+0% |
10 of 45 players shown, ranked by projection. Show all 45 → 2 of the 45 have since left the club — the squad is built from who has played for these teams, not from who is registered today, so they are shown rather than quietly dropped.
Cards45 playersHighest: Nicolò Zaniolo, 0.26 expectedshowhide
Known defect — Prices ANY card — yellow, second yellow or straight red — matching how books settle "to be shown a card". The trends column counts the same thing.
What drives it — Fouls first, then how readily the referee reaches for a card. Two officials averaging four cards a match can do it for opposite reasons. See what has actually happened.
| Player | Team | Model /90 | Exp. mins | Projected | Over 0.5 | n | Distribution |
|---|---|---|---|---|---|---|---|
| Nicolò ZanioloFWD | Udinese | 0.33 | 71provisional | 0.26 | 22% | 29 | 078% 119% 23% 3+0% |
| Armando IzzoDEF | Monza | 0.28 | 82provisional | 0.25 | 22% | 28 | 078% 119% 23% 3+0% |
| Pedro PereiraDEF | Monza | 0.25 | 77provisional | 0.21 | 19% | 32 | 081% 117% 22% 3+0% |
| Jesper KarlströmMID | Udinese | 0.22 | 87provisional | 0.21 | 19% | 73 | 081% 117% 22% 3+0% |
| Luca CaldirolaDEF | Monza | 0.27 | 63provisional | 0.19 | 17% | 12 | 083% 115% 22% 3+0% |
| Jean-Daniel Akpa AkproMID | Monza | 0.24 | 69provisional | 0.19 | 17% | 12 | 083% 115% 22% 3+0% |
| Thomas KristensenDEF | Udinese | 0.20 | 82provisional | 0.18 | 17% | 49 | 083% 115% 21% 3+0% |
| Sandi LovrićMID | Udinese | 0.28 | 59provisional | 0.18 | 17% | 35 | 083% 115% 22% 3+0% |
| Alessandro BiancoMID | Monza | 0.21 | 77provisional | 0.18 | 16% | 32 | 084% 115% 21% 3+0% |
| Christian KabaseleDEF | Udinese | 0.22 | 74provisional | 0.18 | 16% | 42 | 084% 115% 2+1% |
10 of 45 players shown, ranked by projection. Show all 45 → 2 of the 45 have since left the club — the squad is built from who has played for these teams, not from who is registered today, so they are shown rather than quietly dropped.
Saves3 playersHighest: Răzvan Sava, 2.85 expectedshowhide
What drives it — Opponent shot volume. A keeper’s own record carries so little that this market shrinks harder than any other on the board. See what has actually happened.
| Player | Team | Model /90 | Exp. mins | Projected | Over 2.5 | n | Distribution |
|---|---|---|---|---|---|---|---|
| Răzvan SavaGK | Udinese | 2.87 | 89provisional | 2.85 | 52% | 19 | 08% 118% 222% 320% 414% 59% 6+9% |
| Maduka OkoyeGK | Udinese | 2.90 | 88provisional | 2.85 | 52% | 54 | 08% 118% 222% 320% 414% 59% 6+9% |
| Stefano TuratiGK | Monza | 2.60 | 89provisional | 2.58 | 46% | 30 | 09% 120% 224% 320% 413% 57% 6+6% |
1 of 7 markets have no projection for this fixture.