PER90

Championship · England

MillwallvWrexham

The Denlineups not announced

Referee

Not appointed

0 matches on record

Fouls per game

League average

22.6

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.

  1. 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.

  2. 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.

  3. 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.

  4. 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 column
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: Josh Coburn, 1.26 expectedshow

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.

PlayerTeamModel /90Exp. minsProjectedOver 1.5nDistribution
Josh CoburnFWDMillwall1.7266provisional1.2636%38
032%
132%
220%
310%
44%
51%
6+0%
Kieffer MooreFWDWrexham1.5369provisional1.1833%30
036%
131%
219%
39%
43%
51%
6+0%
Femi AzeezMIDMillwall1.4469provisional1.1030%58
037%
133%
219%
38%
43%
51%
6+0%
Ryan LeonardDEFMillwall1.3073provisional1.0529%48
039%
132%
218%
38%
42%
51%
6+0%
Tristan CramaDEFMillwall1.0387provisional1.0027%66
037%
136%
218%
36%
42%
5+0%
James McCleanMIDWrexham1.5257provisional0.9626%10
047%
127%
216%
37%
43%
51%
6+0%
George DobsonMIDWrexham1.1873provisional0.9625%34
041%
134%
217%
36%
42%
50%
6+0%
Jake CooperDEFMillwall0.9589provisional0.9424%83
039%
136%
217%
36%
41%
5+0%
Joe BryanDEFMillwall1.1569provisional0.8923%45
046%
131%
215%
36%
42%
5+0%
Luke CundleMIDMillwall1.7645provisional0.8823%26
048%
128%
214%
36%
42%
51%
6+0%

10 of 45 players shown, ranked by projection. Show all 45 →

Tackles45 playersHighest: George Dobson, 2.24 expectedshow

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.

PlayerTeamModel /90Exp. minsProjectedOver 1.5nDistribution
George DobsonMIDWrexham2.7773provisional2.2459%34
017%
123%
221%
316%
410%
56%
6+6%
Ryan LeonardDEFMillwall2.3973provisional1.9452%48
023%
124%
220%
315%
49%
55%
6+4%
Casper De NorreMIDMillwall2.1078provisional1.8151%74
020%
129%
224%
315%
48%
53%
6+2%
George ThomasonMIDWrexham2.1476provisional1.8050%30
024%
126%
222%
314%
48%
54%
6+3%
Max CleworthDEFWrexham1.7588provisional1.7049%40
022%
129%
223%
314%
47%
53%
6+2%
Lewis O'BrienMIDWrexham2.1671provisional1.7047%30
027%
127%
220%
313%
47%
54%
6+3%
Joe BryanDEFMillwall2.1369provisional1.6345%45
029%
126%
219%
313%
47%
53%
6+2%
James McCleanMIDWrexham2.5757provisional1.6243%10
035%
122%
216%
312%
47%
54%
6+4%
Billy MitchellMIDMillwall2.3162provisional1.6043%34
030%
126%
219%
312%
47%
53%
6+2%
Tristan CramaDEFMillwall1.5987provisional1.5444%66
025%
131%
223%
312%
46%
52%
6+1%

10 of 45 players shown, ranked by projection. Show all 45 →

Shots45 playersHighest: Femi Azeez, 2.31 expectedshow

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.

PlayerTeamModel /90Exp. minsProjectedOver 1.5nDistribution
Femi AzeezMIDMillwall3.0169provisional2.3161%58
017%
122%
221%
317%
411%
57%
6+6%
Mihailo IvanovićFWDMillwall2.6563provisional1.8550%60
025%
126%
220%
314%
48%
54%
6+3%
Josh CoburnFWDMillwall2.4666provisional1.8051%38
023%
127%
222%
315%
48%
54%
6+2%
Kieffer MooreFWDWrexham2.1969provisional1.6947%30
026%
127%
221%
314%
47%
53%
6+2%
Thierno Mamadou Lamarana BalloFWDMillwall2.3060provisional1.5243%25
030%
127%
220%
313%
46%
53%
6+1%
Josh WindassMIDWrexham2.3359provisional1.5242%31
029%
129%
221%
312%
46%
53%
6+1%
Camiel NeghliFWDMillwall1.9171provisional1.5043%43
028%
130%
221%
312%
46%
52%
6+1%
Nathan BroadheadFWDWrexham2.0551provisional1.1732%21
038%
130%
217%
39%
44%
51%
6+1%
Aidomo EmakhuFWDMillwall2.8036provisional1.1028%20
044%
128%
214%
37%
44%
52%
6+1%
Caleb TaylorDEFMillwall1.2180provisional1.0829%25
037%
133%
218%
38%
43%
51%
6+0%

10 of 45 players shown, ranked by projection. Show all 45 →

Fouls won45 playersHighest: Lewis O'Brien, 1.27 expectedshow

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.

PlayerTeamModel /90Exp. minsProjectedOver 1.5nDistribution
Lewis O'BrienMIDWrexham1.6171provisional1.2736%30
034%
130%
220%
310%
44%
51%
6+1%
Kieffer MooreFWDWrexham1.4469provisional1.1131%30
038%
131%
218%
38%
43%
51%
6+0%
Ryan LeonardDEFMillwall1.2773provisional1.0328%48
040%
132%
217%
37%
42%
51%
6+0%
Japhet TangangaDEFMillwall1.0389provisional1.0227%42
037%
136%
218%
36%
42%
50%
6+0%
Josh CoburnFWDMillwall1.3866provisional1.0127%38
040%
133%
217%
37%
42%
51%
6+0%
Ben SheafMIDWrexham1.3866provisional1.0127%23
039%
134%
218%
37%
42%
51%
6+0%
Liberato Gianpaolo CacaceDEFWrexham1.3760provisional0.9225%8
046%
129%
215%
36%
42%
51%
6+0%
Dominic HyamDEFWrexham0.8290provisional0.8120%40
045%
135%
214%
34%
41%
5+0%
Oliver RathboneMIDWrexham1.6245provisional0.8121%14
051%
129%
213%
35%
42%
51%
6+0%
Nathan BroadheadFWDWrexham1.3551provisional0.7719%21
051%
130%
213%
35%
41%
5+0%

10 of 45 players shown, ranked by projection. Show all 45 →

Cards45 playersHighest: Callum Doyle, 0.17 expectedshow

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.

PlayerTeamModel /90Exp. minsProjectedOver 0.5nDistribution
Callum DoyleDEFWrexham0.1885provisional0.1715%34
085%
114%
2+1%
Tristan CramaDEFMillwall0.1687provisional0.1614%66
086%
113%
2+1%
Jake CooperDEFMillwall0.1589provisional0.1514%83
086%
113%
2+1%
Femi AzeezMIDMillwall0.2069provisional0.1514%58
086%
113%
2+1%
Ryan LeonardDEFMillwall0.1973provisional0.1514%48
086%
113%
2+1%
George DobsonMIDWrexham0.1973provisional0.1514%34
086%
113%
2+1%
Joe BryanDEFMillwall0.2069provisional0.1514%45
086%
113%
2+1%
Dominic HyamDEFWrexham0.1490provisional0.1413%40
087%
112%
2+1%
Zak Norton SturgeDEFMillwall0.1963provisional0.1312%37
088%
111%
2+1%
Ben SheafMIDWrexham0.1866provisional0.1312%23
088%
111%
2+1%

10 of 45 players shown, ranked by projection. Show all 45 →

Saves2 playersHighest: Arthur Okonkwo, 2.98 expectedshow

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.

PlayerTeamModel /90Exp. minsProjectedOver 2.5nDistribution
Arthur OkonkwoGKWrexham3.0688provisional2.9855%38
09%
116%
221%
320%
415%
510%
6+11%
Maxime Teremoana CrocombeGKMillwall2.5490provisional2.5446%23
010%
121%
224%
320%
413%
57%
6+6%

1 of 7 markets have no projection for this fixture.