≡ Menu

Introducing Game Scripts – Part I

Emmitt knows which way the arrow points.

From 1991 to 1995, Emmitt Smith and the Cowboys were one of the dominant teams in the NFL. As you probably heard, the Cowboys were pretty successful whenever Smith had a lot of carries. Over that five-year span, the Cowboys went 49-7 whenever Smith had 20+ carries in a regular season game, and an additional 8-1 in playoff games.

Despite the implication, we know that the causation arrow looks less like this…

Give Smith 20+ carries ——>>>>>>> Win football game

And more like this…

Have lead late in football game ——>>>>>> call running plays for Smith

How a game unfolds is what my friend Sigmund Bloom likes to call the game script. Sometimes, the game script goes away from one player and to another, and the final boxscore doesn’t truly reflect coaching preference. Rather, the boxscore simply reflects the way the game unfolds. And one of the weirdest boxscores you’ll ever see is a game between the Bills and the Dolphins in December 2005, which Miami won.

Knowing that the Dolphins won, you’d probably be surprised to know that they called 68 passing plays (65 attempts, 3 sacks) against just 22 rushing plays, while the Bills ran more than they passed. But the game script was very unique. In the first quarter, Lee Evans caught three touchdown passes from J.P. Losman. In the second, Miami settled for a 23-yard field goal to cut the lead to 18. The Bills got a safety in the third quarter, to go up 23-3. But Ricky Williams, Ronnie Brown, Chris Chambers and Sage Rosenfels led a spirited comeback, and scored three fourth-quarter touchdowns to win the game. The way the game unfolded was for the Bills to play conservative and the Dolphins to go to the air.

Since 1940, there have been nearly 13,000 professional football games played between the NFL, AFL and AAFC. And each game has had its own game script, unfolding in its own, unique way. My goal was to come up with a single number to explain how the game went down. In this post, I’ll do my best to explain it.

Through Pro-Football-Reference.com, we have the official time of each scoring play since 2000. We can approximate the time for each scoring play from 1940 to 1999 using the formula I described in this post in 2010. Essentially, we can estimate the time of scores by evenly distributing the scores in each quarter. Since PFR boxscores shows the quarter in which every score occurred, so we can get a pretty good estimate; if there were 2 scores in the 1st quarter, we assume they occur at the 5 and 10 minute mark. If there are 4 scores in the 3rd quarter, they are assumed to have occurred at the 33, 36, 39 and 42 minute mark. A lone score in the 2nd quarter goes at the 22:30 mark. Etc. And for games since 2000, we’ll use actual score times.

Once we mark the time of score, it’s pretty easy to come up with an average score margin — the Game Script — at any point in the game. Let’s use a simple game as an example. In ’04, the Chargers went into Cleveland and won 21-0, scoring touchdowns in each of the first three quarters. How do we come up with the average score margin — the number I’m calling the Game Script?

The Chargers first touchdown came with 2:13 to go, so for the first 12:47 (or 12.8 minutes), the Chargers were tied with the Browns, 0-0. The next score didn’t come until there was 2:24 left in the half, so for 14.8 minutes, the Chargers led by 7 points. The final score came with 8:36 left in the third quarter, which means the Chargers led by 14 points for 8.8 minutes, and then by 21 points for the final 23.6 minutes. The game script score for this game is therefore 12.04, the average scoring margin for the Chargers during this game.

What about the crazy Bills-Dolphins game? I didn’t pick that game by chance: the Bills had the largest Game Script of any losing team in NFL history. Don’t confuse this with saying the Dolphins had the best comeback ever. The two are often related, of course: the third largest Game Script among losing teams was by the Buccaneers in the classic Monday Night Football game when Peyton Manning led the Colts back to win in overtime (and the second largest was the Vince Young 24-comeback against the Giants). Being down 21-0 at the end of the first quarter is bad for your Game Script score, but it’s easier to come back from that deficit than it is when trailing 21-0 at the end of the third quarter. The key with the Game Script numbers is it takes the average score from every second of the game. Let’s break down Miami-Buffalo. To make the math a little simpler for the reader, I’m going to use the formula for approximate times as if this was a pre-2000 game:

Score	       Diff	 Time	Diff*Mins
0-0	         0	 0:00	  0.00
7-0 BUF	         7	 3:45	 26.25
14-0 BUF	14	 7:30	 52.50
21-0 BUF	21	11:15	236.25
21-3 BUF	18	22:30	270.00
23-3 BUF	20	37:30	225.00
23-10 BUF	13	48:45	 48.75
23-17 BUF	 6	52:30	 22.50
24-23 MIA       -1	56:15	- 3.75

Let’s go through the above table. The Bills scored three touchdowns in the first quarter, which means we can break the 1st quarter down into four quarters. For the first quarter, the game was tied; the second quarter, the Bills led by 7. So for 3 minutes and 45 seconds, Buffalo held a 7-point lead. We multiply 3.75 and 7 to get 26.25 — we will multiply the margin and the length of time during which the team had that margin each time, and then divide all of those numbers by 60, the number of minutes in the game.

Then during the next 3 minutes and 45 seconds, the Bills led by 14 — that’s worth 52.50. After the Bills scored their third touchdown of the quarter, they held that lead of 21 for 11 minutes and 15 seconds — add another 236.25 to the total. After the Miami field goal in the second quarter, it was an 18-point game for 15 minutes (270). The Bills safety made it a 20-point game for the last half of the third quarter and the first quarter of the fourth quarter (225). That’s when the comeback started. Miami’s first touchdown made it was 13-point lead for 3 minutes and 45 seconds (48.75); the second TD cut it to a 6-point lead for the same time (22.5). After Miami scored the game’s final points, they held a 1-point lead for the final 3 minutes and 45 seconds (-3.75, from the perspective of Buffalo).

Once we sum all of the products of the scoring margin and the length of time of that margin, we get 877.50. Divide that by 60, and we see that on average, the Bills held a 14.6 point lead. For the Bills, they have a Game Script score of 14.6; by definition, the Dolphins have a Game Script score of -14.6. In reality — i.e., using actual times — the Dolphins had a Game Script score of 15.9, because the Bills were up 14-0 with just 11:18 left in the first quarter and because the Dolphins scored the game-winning touchdown with just 6 seconds left.

The highest Game Script by a losing team last season? That came when the Cowboys blew a 24-point lead against the Lions; Dallas ended the game with a Game Script of 9.4. What about in 2010? That would be when the Giants lost to the Eagles in Miracle at the New Meadowlands, of course. The Giants held an average margin of 10.1 points. The highest Game Script last season came in the Saints 62-7 blowout over the Colts.

The highest Game Script ever? Just two years ago, in the Patriots 59-0 game in the snow against Tennessee. On average, New England had a 36-point lead. Here’s a list of the highest game scores in regular season history:

  • Dan

    Really cool idea. I’d be interested to see if a team’s game script total during a season shows a strong correlation for future success(i.e. playoffs).

    Were there any games that came out as a 0?

    • Chase Stuart

      Thanks Dan. And yes, there will be more on this as you indicated.

      There were a few games that come out as 0. There’s nothing special about that number.

  • Really interesting read. Well done.

  • Karim

    Very cool analysis. Any reason you’re using average point differential, instead of something like say, area under a win probability graph? Intuitively, the results would probably be very similar, but where they diverge, the latter may have some nice properties, e.g. giving less weight to scores that are unlikely to impact the outcome.

  • Chase Stuart

    Point differential is much easier to use and I have much more data on it. I agree that a WP model would also be interesting.

  • Ben Cipollini

    I think your method is going to overestimate Game Scores for pre-2000. And I think there’s a relatively simple, interesting way to address the issue a bit more accurately.

    You are assuming a uniform distribution for scores over a quarter. However, I’m quite sure that the probability of scoring at 00:01 of the 1st quarter is different than that of 00:01 of the 2nd quarter. And that scoring is higher at the end of the 2nd and 4th quarter, when the game tends to slow down.

    The way to deal with this:
    1. Use your 2000-present timing data to get the probability distribution of a score as a function of game time (separate TDs and FGs is possible too, same method). This is an interesting curve in-and-of itself–would love to see it! Especially for different score types 🙂
    2. Compute the cumulative distribution for scoring in each quarter.
    3. For pre-2000 scores, if you have one score, then draw it at the 50% point for the 1st quarter PDF. If you have two, draw it at the 33% and 67% point. etc.

    That would give you interesting curves and allow for any biases (for each score type) to be much better expressed. Because I think 1st/3rd quarter scores are probably assumed too early (since the kickoff is a slow point for starting a score), and same with 2nd/4th (since late drives and timeouts should skew things), I think the current estimate will predict scores as too early, and thus leading to overall overestimated game scores when scoring is drastically uneven.

    Note that my model assumes similar game play between 2000+ and pre-1999… which I really doubt, but hey…. I would be it’s better than the uniform assumption!

    • Chase Stuart

      Agree with everything you wrote. However, that seemed like a lot of work, and I’ve got a reputation as a good enougher around these parts. Maybe Neil will get that done!