Analytics · Game Theory · Controlled Study

Effects of Pitching Fatigued: In-Game & PC-Based Fatigue

A 2,310-game case study using 1974 Mike Marshall, every tier broken into its full sub-bucket detail, with the original analysis, data, and community Q&A reproduced in full.

Color key

Pitch-Based Fatigue<60%60–69%70–79%80–89%90–98%99–100%
AVG PC (In-Game, via Marshall’s Max PC 32.78)<33 (99–100%)33–35 (90–99%)36–39 (80–90%)40–42 (70–80%)43–45 (60–70%)46+ (<60%)

Background & data source

The following data was taken from one $80m theme league where everyone had to use ‘74 Mike Marshall. I have 2,310 games worth of data for Marshall from this league. Marshall makes for an excellent example to use because of how in-game fatigue affects him, as well. However, it should be noted that this league was in no way, shape, or form a fatigue test league. The data from this league is significantly oriented towards the non-fatigued data set, but still provided some excellent data.

Overall line

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIP
230930.3964448.04205716995924630719029432655553828528461785635.370.2931.65

Pitch-based fatigue buckets

His overall pitch-based fatigue numbers by fatigue level were (groupings are <60%, 60-70%, 70-75%, 75-80%, 80-85%, 85-90%, 90-95%, 95-99%, 99-100%):

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIP
1543.35635.33192650070575664111025214.260.3762.52
2330.36538.342026973513736605232708.450.3432.27
4727.57281.313911292645625411911293715.980.3281.92
5426.87891.69436144775363501094444014.910.2841.63
7227.782119.2958319912128938318410784606.260.3401.93
14126.787243.3311273764171722141123300171429524.550.2911.62
21334.192445.63213072602040153523215944626720676.480.3081.80
23229.696444.27204368722926192572385412028316864.820.2891.60
151230.41002948.85134674598616219111718811694356716119701141445.170.2871.60

In-game fatigue: background

Now, from an in-game fatigue perspective, Marshall has a RL 1.97 IP/G, which, with his sim-assigned PC, would give him a max PC per game of 32.78 to stay at 100% during a game. Everything I’ve found suggests that in-game fatigue is then a linear drop based on % above this assigned number, much like how pitch-based is a linear drop based on % projected/actual above the sim-assigned pitch allocation.

In-game fatigue bucket mapping

In-Game Fatigue %PCDisplayed PC
<60%45.8946+
60–65%44.2545
65–70%42.6143–44
70–75%40.9841–42
75–80%39.3440
80–85%37.7038–39
85–90%36.0636–37
90–95%34.4234–35
95–99%33.1133
99–100%32.78<33

In-game fatigue grouping totals

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIP
25964.796908.754819167671311431110103715321225066171210.270.3602.36
4245.093118.315501890210167591475725914.490.2931.74
6143.494162.327682650109410590214101246354.990.3051.71
20740.896530.39246384472132631327565522343214114.670.2921.64
3539.09787.3339113653324535952633323.610.2661.47
5637.394128.6660220911054696115951005344.270.2921.65
6036.096142.68640216074671591657974713.720.2781.49
10134.796231.6710213507771010186252111587223.340.2661.40
4233.09687.3139913867554236927553903.710.2601.50
144720.5962050.6389182969616611814910209172227941328588254.020.2661.37

We can already see the effect in-game fatigue had on the overall numbers. There isn’t a single bucket here that saw Marshall’s overall fatigue average below 93%, and despite that, outside of his 99-100% in-game fatigue bucket, Marshall’s stats are exactly what you would expect from a pitcher experiencing fatigue at the levels indicating by the color of the PC.

We start to get into some rather small sample sizes, but when we combine the two groups into buckets around in-game fatigue within pitch-based fatigue, the trends are even clearer. Breaking the pitch-based buckets from the first chart into individual buckets of in-game fatigue within each of them we get the following:

Per pitch-based bucket: full in-game sub-bucket detail

Starting Fatigue <60% (Red)

Only data from three sub-buckets; one had just 2.67 IP worth of data:

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIP
<60% — Overall
1543.35635.33192650070575664111025214.260.3762.52
<60% — In-Game Sub-Buckets
852.95521.671244230303938427818115.780.3932.77
445.05611.005318002012121522619.820.3131.91
315.7572.671547020667201020.250.4673.00

Starting Fatigue 60-69% (Orange/Blue)

Only data from two sub-buckets:

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIP
60-69% — Overall
2429.06538.342026973513736605232708.450.3432.27
60-69% — In-Game Sub-Buckets
468.86512.67792750102323303312016.340.4413.32
2021.16625.671234223411413302201504.560.2801.75

Starting Fatigue 70-74% (Yellow)

No data from the two sub-buckets covering 90-98%; five other sub-buckets have just 1 or 2 games:

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIP
70-74% — Overall
4028.87272.31345115144554461029263315.730.3201.87
70-74% — In-Game Sub-Buckets
147.0712.67144700010402100.000.3331.87
145.0703.33144500000200300.000.1671.50
743.67119.339530530018143055906.520.3412.02
741.17115.338028800017172629909.980.3612.28
240.0705.00248000021602311.800.2861.80
138.0702.00123801010201200.000.2502.00
236.5736.67227300033601104.050.2311.05
1914.57217.988427513512112626505.510.3251.72

Starting Fatigue 75-79% (Yellow)

Data from seven of the ten sub-buckets; three blue groups missing, and a couple groups had just 1-2 uses and ≤3 IP:

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIP
75-79% — Overall
6126.077100.69482158895371581266474415.180.2941.69
75-79% — In-Game Sub-Buckets
356.3778.6748169120991417709.340.3502.42
241.0783.00238201060802400.000.4714.00
138.0781.671038000443002021.560.3752.99
436.5778.0041146100651405305.630.3682.13
634.87814.6764209001881616414.910.2671.36
433.0788.003713220044613704.500.2001.63
4119.87756.682598125223428653241704.450.2771.45

Starting Fatigue 80-84% (Light Yellow)

Data from eight of the buckets; no data from one green and one blue bucket:

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIP
80-84% — Overall
7227.782119.2958319912128938318410784606.260.3401.93
80-84% — In-Game Sub-Buckets
658.88320.67109353020272745285011.760.4212.42
345.0836.33391350301151502507.110.4413.16
343.3837.6735130010771028308.210.3031.69
240.0826.33258000000503100.000.2080.95
339.0845.0031117100878037012.600.3483.00
536.2818.6747181000771229807.270.3162.31
635.08213.67602100004417010302.630.2931.46
4417.88250.952377851682926724351404.590.3201.69

Starting Fatigue 85-89% (Light Yellow)

Data from all but one sub-bucket; at least 6 IP from each group in this set:

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIP
85-89% — Overall
14126.787243.3311273764171722141123300171429524.550.2911.62
85-89% — In-Game Sub-Buckets
1162.78637.0120369015044426962222010.210.3832.46
343.7867.3440131011661402507.360.3892.59
441.3879.6746165010661115605.580.2751.76
540.08712.33612001201082017315.840.3511.87
538.28812.00551910022112012600.750.2501.50
636.78713.67622201116616012503.950.2811.54
434.88610.004113910111813400.900.2111.20
333.0866.00289901044914206.000.3331.83
10019.387135.3159119291361762491417754213.260.2581.35

Starting Fatigue 90-94% (Light Green)

Data from every bucket; a few had less than 6 IP:

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIP
90-94% — Overall
21334.192445.63213072602040153523215944626720676.480.3081.80
90-94% — In-Game Sub-Buckets
2683.092107.6662221591200180169224284485014.130.4102.87
445.09310.33511800107717010406.100.3542.03
244.0944.33238801043605216.240.3161.85
1441.69338.001665821111414374261303.320.2451.32
1040.09327.991224001001211291191103.540.2571.43
438.8928.6744155000611007501.040.2781.73
1636.59339.001745844121514461281223.230.2821.49
1034.99222.0110234912113923115803.680.2581.41
233.0925.33206600100305000.000.1580.56
12521.692182.31806269712141010193199111086644.590.2671.45

Starting Fatigue 95-98% (Light Green)

Data from every sub-bucket, with double-digit IP from all but one:

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIP
95-98% — Overall
23229.696444.27204368722926192572385412028316864.820.2891.60
95-98% — In-Game Sub-Buckets
1568.19756.0029610220615351854344608.200.3362.34
445.09611.0049180101331017702.450.2331.55
1043.59628.32132435420171636022425.080.2981.41
1841.49646.002197463112323701201604.500.3371.87
1240.09633.33149480021171636121814.320.2651.32
338.3976.333111510031704511.420.2691.90
636.59614.00622190124416011902.570.2761.79
934.39619.3488309001101027217504.650.3181.65
633.09612.6658198010551319603.550.2551.50
14921.397217.299593168201312122109241101386224.510.2701.39

Starting Fatigue 99-100% (Green)

At least 50 IP of data from every sub-bucket in this data set:

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIP
99-100% — Overall
151230.41002948.85134674598616219111718811694356716119701141445.170.2871.60
99-100% — In-Game Sub-Buckets
151230.41002948.85134674598616219111718811694356716119701141445.170.2871.60

All sub-buckets sorted by sample size (IP)

Bolded rows have more than 50 IP. Notes on the right-hand margin (*,^,#) indicate pairs of data where in-game and pitch-based fatigue were at different levels, but the combined fatigue was similar, and the results thereof. There are other combined fatigue results that are similar, but the in-game/pitch-based fatigue were also similar, so they were not called out.

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIPCombined Fatigue %Note
138.0781.671038000443002021.56.3752.9965.58
138.0702.00123801010201200.00.2502.0058.85
315.7572.671547020667201020.25.4673.0057.00
147.0712.67144700010402100.00.3331.8740.20
241.0783.00238201060802400.00.4714.0058.07
145.0703.33144500000200300.00.1671.5043.90
244.0944.33238801043605216.24.3161.8561.50
240.0705.00248000021602311.80.2861.8054.58
339.0845.0031117100878037012.60.3483.0067.79
233.0925.33206600100305000.00.1580.5690.89
333.0866.00289901044914206.00.3331.8385.75
345.0836.33391350301151502507.11.4413.1652.06
240.0826.33258000000503100.00.2080.9563.94
338.3976.333111510031704511.42.2691.9080.29
(Remaining low-sample rows continue the same pattern through the full bucket range; high-sample rows ≥50 IP are bolded in the original and represented in the per-bucket tables above.)

Cumulative fatigue totals

Below are cumulative totals for each fatigue group AND all of those above it. The first row is ALL game logs from the set, the second row is all rows minus just the 0-59% (combined fatigue), the third row is all rows minus the 0-64%… the last row is only the 99-100%. This shows the cumulative effect of fatigue on your pitchers:

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIPCombined Fatigue %
23104448.04205716995924630719029432655553828528461785635.370.2931.650%+
20113445.97152715155123018118617401543385415022971114494.030.2721.4460%+
19613303.33146304936022417318516731480369214622031059464.030.2711.4465%+
18783117.3313755462942141621801564138534621362060976434.000.2701.4270%+
17282764.9512112407081991401681364120230181201840836383.910.2671.3975%+
16112522.5911005369391861291641223108627401131682741333.870.2661.3880%+
15072322.6610108338831761171521128100125001031541679283.880.2641.3785%+
13302006.008697291811531041289728762151871340577253.930.2631.3690%+
11281647.04711723818136851107967191761681103458203.930.2631.3595%+
9731417.096100204521167198669605150757956390183.840.2621.3499%+

Inclusive fatigue totals

This chart is identical to the one above, except instead of being cumulative, it is inclusive. For example, row one ONLY includes games from 0-59% (combined fatigue), row two only includes games from 60-64%… and the last row only includes games from 99-100%. This shows the effectiveness of pitchers at a specific fatigue level (remembering the baseline stats of Marshall and that this is an $80m league):

GAVG PCFatigue %IPBFPPCWLSVRERHHRSOBBWPERAOAVWHIPCombined Fatigue %
2991002.07530018408161264120311121684135549671149.990.3592.35<60%
50142.64641219168167631624945533.980.2751.5260–65%
83186.0087530661011510995230101438334.600.2921.6865–70%
150352.38164355861522122001834441622014054.670.2961.6670–75%
129275.691256424913135158132314817910364.310.2751.5175–80%
104199.9389730561012129585240101416253.830.2861.5180–85%
177316.66141147022313241561253491620110233.550.2691.4285–90%
202358.96158053631719181761573901923711953.940.2661.4290–95%
155229.9510173366201412127114254111476824.460.2691.4095–99%
9731417.096100204521167198669605150757956390183.840.2621.3499–100%

Closing commentary

As I mentioned in the first post, this was not a fatigue test league. Aside from that, Marshall is not a pitcher who is ideal for pitching fatigued for a number of reasons, nor were any of these teams designed to minimize the impacts of fatigue. You can see a decline in performance across fatigue levels, but can easily see how if choosing pitchers, defense, and ballpark with fatigue in mind, one could effectively control for fatigue to the 85% level. And with better understanding or skill, even take that all the way to the 75% level without seeing a significant drop in performance.

Follow-up notes — community Q&A

On pitch-based vs. in-game fatigue (barracuda3)

Pitch-based fatigue is simply the % of his allocated total pitches he’s projected to accumulate — elbirdo’s formula (accessible through the FAQ) gives that allocation. In short, 90% fatigue for pitch-based fatigue is a projected total pitch count of that seasonal allocation plus 10%. So in Marshall’s case, allocated at 3,474 pitches for a season, 90% fatigue would equal 3,821 pitches over a season.

The displayed % equals a pitcher’s current % as projected to finish the season using: 1-(allocatedpitches-(accumulatedpitches/teamgames*162))/allocatedpitches). For example, if through 4 team games Marshall had thrown 92 pitches, he’d display at 92/93%, as he’d be projecting for 3,726 total pitches — 252 (7.25%) more than allocated.

On in-game fatigue linearity (ozomatli, from LIVE play)

Key observations from WhatIfSports LIVE, which used the same sim engine and showed in-game fatigue % changing in real time:

Pitchers start dropping below 100% immediately — not just after hitting their IP/G-allocated PC. High IP/G pitchers may stay in the upper nineties for a while, but definitely not at 100% from pitch one.

In-game fatigue is not strictly linear — the slope accelerates as pitchers approach their real-life IP/G equivalent pitches. Each 10% drop comes faster than the previous one.

In-game fatigue is influenced by season usage — the closer a pitcher is to their sim-allocated pitch total, the faster they fatigue in-game.

Response: This is excellent context. Even though in-game fatigue may appear nonlinear in its displayed value, the broader data pattern suggests a fairly linear effect once the proper modifiers are accounted for — much like how pitch-based and appearance fatigue both appeared nonlinear until the underlying formula was cracked. Appearance fatigue does use a pitch-based modifier, so a similar modifier on in-game fatigue wouldn’t be surprising. These charts still show the relationship of in-game fatigue and performance and, to the point above, appear to show a fairly linear effect.

Follow-up work

There are two pieces of work that follow from this: TWISL Effects of Fatigue Reverse Engineering the Appearance Fatigue Model