A Basic Model of 2014 Free Agent Pricing

Back in November, Ken Rosenthal reported that the asking price for Ervin Santana was “more than $100 million on a five year deal…” It’s mid-March, Santana is still unsigned, and over the weekend, he left the Proformance agency and is now looking to sign a one year deal for essentially the value of the qualifying offer. Instead of $100+ million over five years, he’s going to get $13 or $14 million for one year, and then try again next winter.

It didn’t have to be this way, of course. In that same early off-season report, Rosenthal listed Ricky Nolasco’s asking price at $80 million over five years; he signed for $50 million over four instead. It’s not that unusual for agents to throw out a high early valuation in an attempt to give themselves room to make concessions while still landing a high value contract. The problem for Santana isn’t so much that his initial ask was absurd — it was, of course — but that it didn’t adjust downwards quickly enough as the market told him that it was absurd. With a more aggressive response to what the market was saying about his value, Santana likely could have landed a deal in that $40 to $50 million range earlier in the off-season, before teams spent their money on other alternatives.

But because someone in Santana’s camp believed they could land a deal closer to their original price, the market moved on without him. His story is an example of how harmful it can be to have an unrealistic baseline heading into free agency. And unfortunately for Santana, the market simply doesn’t care about W/L record and ERA the way it used to. Anyone developing a free agent pricing model based on outdated statistics is going to be in for a rude awakening when the offers actually come rolling in, because teams are better at forecasting future value for aging free agents than they were even five years ago.

Last week, I looked at free agent pricing from a $/WAR perspective, and the reality is that the size of a free agent’s contract actually tracks his projected WAR pretty close in most cases. While WAR is an imperfect model with imperfect inputs — and teams are using more sophisticated formulas with better data than we have publicly, certainly — forecast WAR is actually a surprisingly good proxy for how much a player will get on the open market. As evidence, here’s a graph of the total contract price plotted against the total contract WAR forecast for the 47 +1 to +5 WAR free agents — relievers excluded — who have already signed.


The correlation between contract price and forecast WAR over the life of the deal is .95. There are some guys who are a bit away from the line, both on the positive and negative side, but overall, WAR models free agent pricing (for regular position players and starting pitchers) pretty well, even with its flaws and limitations. The fact that teams are using more advanced tools doesn’t change the fact that our version of WAR tracks with those decisions in most cases, and free agent pricing can be understood for a large number of players by simply knowing his forecast WAR.

However, I think it’s fair to say that the regression equation listed in the chart above won’t pass the simplicity test for most people. Besides the scariness that accompanies the inclusion of letters in a calculation, the x value requires the length of the deal to be known ahead of time in order for the formula to work, which doesn’t help us so much when players are still negotiating their deals and the term is not yet set.

So, I thought it would be interesting to see if I could create a basic model that would allow us to understand free agent pricing using only projected 2014 WAR. That way, the variable driving the model could be easily obtained here on FanGraphs, and we could avoid all the messiness of dealing with aging curves for players signing long term deals. Can we create a model that gives us a reasonable free agent price for players using just their next season WAR forecast?

I think the answer is yes. Just like WAR is imperfect, a model with one variable is also not going to work perfectly, and so I also had to throw out players who were going to be older than 35 next year, since there are high quality older players — Hiroki Kuroda, for instance — signing deals that simply don’t look anything like what similarly valuable younger players are getting. And like with the $/WAR model, we’re only going to focus on position players and starting pitchers with at least +1 WAR forecast, since those are the contracts that we actually care about. This model is designed to work for regular players in their late-20s or early-30s, essentially.

With those caveats, here is what I came up with:

Take a player’s 2014 WAR forecast — I used a 50/50 hybrid of ZIPS and Steamer, but this should work just fine with either one by themselves — and multiply it by five; that’s his expected annual average value. A +5 WAR player will get around $25 million per year. A +3 WAR player will get around $15 million per year. A +1 WAR player will get around $5 million per year. This is basically the scale of per season salaries that we see in MLB right now.

Now, for the slightly trickier part; the length of the deal. This is really where we’ve seen inflation in MLB over the last few years, and this is where we can’t just apply one standard calculation to all players. Better players get longer deals, and the multiplier for a +5 WAR player isn’t the same as the multiplier for a +1 WAR player. But, we can bucket players to get just a few different multipliers and come up with some pretty solid results. Because I’m trying to build as simple a model as possible, I used just three buckets:

+3 WAR and up: 2014 WAR * 2.0
+2 to +2.9 WAR: 2014 WAR * 1.5
+1 to +1.9 WAR: 2014 WAR * 1.1

For high end players, the length of their deal is roughly double their forecast WAR, rounded to the nearest year. For solid above average contributors, they get 50% more years than their forecast WAR. For below average but still useful role players, they get 10% more years than their forecast WAR. This worked out pretty well for most players, but I noticed that the lengths for catchers was just consistently too high. Catchers just don’t get the same kind of long term security as other players, even if they’re really good, so I knocked above average catchers down to a multiple of 1.3.

Yes, all of this is entirely subjective. It’s a toy, essentially, much more like Game Score than Linear Weights. But in my world, there’s room for fun little toys that help us explain somewhat complicated calculations in an easier way, and while this still requires some math, it’s easy enough to calculate without any assistance. And, most importantly, it works pretty well.

For the 39 free agents who fit the criteria – +1 WAR minimum forecast, maximum age of 35, no relievers — here is what the model spit out for free agent prices.

Player 2014 WAR ProjYears ProjAmount ProjAAV ActYears ActAmount ActAAV Difference
Robinson Cano 4.9 10 $245 $25 10 $240 $24 $5
Masahiro Tanaka 4.3 9 $194 $22 7 $175 $25 $19
Jacoby Ellsbury 4.0 8 $160 $20 7 $153 $22 $7
Brian McCann 3.5 5 $88 $18 5 $85 $17 $3
Shin-Soo Choo 3.3 7 $116 $17 7 $130 $19 -$15
Ubaldo Jimenez 2.8 4 $55 $14 4 $50 $13 $5
Carlos Ruiz 2.7 3 $40 $13 3 $26 $9 $14
Ricky Nolasco 2.6 4 $52 $13 4 $49 $12 $3
Hunter Pence 2.4 4 $48 $12 5 $90 $18 -$42
Matt Garza 2.3 4 $46 $12 4 $50 $13 -$4
Juan Uribe 2.2 3 $33 $11 2 $15 $8 $18
Jhonny Peralta 2.2 3 $32 $11 4 $53 $13 -$21
Mike Napoli 2.1 3 $32 $11 2 $32 $16 -$1
Dan Haren 2.1 3 $32 $11 1 $10 $10 $22
Tim Lincecum 2.0 3 $29 $10 2 $35 $18 -$6
Omar Infante 2.0 3 $29 $10 4 $30 $8 -$1
Scott Kazmir 2.0 3 $29 $10 2 $22 $11 $7
Curtis Granderson 1.8 2 $18 $9 4 $60 $15 -$42
Phil Hughes 1.7 2 $17 $8 3 $24 $8 -$8
David Murphy 1.7 2 $17 $8 2 $12 $6 $5
Scott Feldman 1.6 2 $16 $8 3 $30 $10 -$14
Jarrod Saltalamacchia 1.6 2 $16 $8 3 $21 $7 -$5
Dioner Navarro 1.5 2 $15 $8 2 $8 $4 $7
Jason Vargas 1.5 2 $15 $7 4 $32 $8 -$18
Marlon Byrd 1.4 2 $14 $7 2 $16 $8 -$2
Mike Pelfrey 1.4 2 $14 $7 2 $11 $6 $3
Kurt Suzuki 1.4 2 $14 $7 1 $3 $3 $11
Nelson Cruz 1.3 1 $7 $7 1 $8 $8 -$2
Kelly Johnson 1.3 1 $6 $6 1 $3 $3 $3
Geovany Soto 1.2 1 $6 $6 1 $3 $3 $3
James Loney 1.2 1 $6 $6 3 $21 $7 -$15
Chris Young 1.2 1 $6 $6 1 $7 $7 -$1
Justin Morneau 1.2 1 $6 $6 2 $13 $6 -$7
Rafael Furcal 1.2 1 $6 $6 1 $3 $3 $3
Corey Hart 1.1 1 $6 $6 1 $6 $6 -$1
Josh Johnson 1.1 1 $5 $5 1 $8 $8 -$3
Jason Hammel 1.1 1 $5 $5 1 $6 $6 -$1
David DeJesus 1.0 1 $5 $5 2 $11 $5 -$6
J.P. Arencibia 1.0 1 $5 $5 1 $2 $2 $3

This model basically nails the Cano contract, and comes very close on Ellsbury and McCann. It gets the years right for Choo, but underestimated the price by $2 million per year. It overshoots on Tanaka by two years and $3.5 million per year, but keep in mind, the fourth year opt-out he obtained has significant value, and that’s not factored in here. With the opt-out, his contract is worth more than a straight 7/$175M without the opt-out, and is probably close to this projection. For the high-end players, the calculation works very well, I think.

It’s a bit more of a range with the mid-tier guys. Nolasco, Jimenez, and Garza were projected almost perfectly, but then there’s Hunter Pence at nearly half of what the Giants gave him, and Juan Uribe getting double his contract value from the Dodgers. Curtis Granderson is the largest outlier of all, getting projected for $18 million in total over two years, when he actually got $60 million over four years.

But Granderson and Pence are really the two big outliers here, where the market clearly thinks the forecasts are too low. Every other player was within $20 million of their projection, and 70% of the players were within $10 million. For a toy with just one input variable, that’s not so bad.

But let’s get back to Ervin Santana, the inspiration for this post and the model itself. If his camp would have used something like this to set their baseline expectations, they would have seen him as a +2.3 WAR pitcher. Multiply that by five, and their projected AAV would have been $11.5 million, and the solid average multiplier of 1.5 years would have told him to expect a 3.4 years, which rounds down to a three year deal. This model would have suggested Santana should expect to sign for 3/$35M. According to Ken Rosenthal’s report from this morning, the best offer he has on the table right now is for $30-$33 million over three years. I’d call that a win for the model.

As Granderson and Pence show, this isn’t a perfect valuation tool, and the market doesn’t always agree with WAR. We had to kick out old players, bench players, and relief pitchers in order to make it work, and if we were striving to be as accurate as possible, we’d make a bunch of extra adjustments for things like age, whether or not the player received the qualifying offer, and we’d probably re-weight the WAR forecast to lean more heavily on the most recent season.

But there’s value in simplicity, and this model can be explained in English. Everyone’s annual salary is roughly $5 million per win in forecast WAR, and the contract length is 200% of forecast WAR for star players, 150% of forecast WAR for solid contributors, and 110% of forecast WAR for role players. For the 39 players in the sample, the model projected 111 years and $1.48 billion in contract values; they actually signed for 116 years and $1.55 billion. Not perfect, but pretty decent.

Had Santana’s representatives used something like this as a baseline, perhaps he’d have already gotten a contract similar to what Garza, Jimenez, and Nolasco signed for. A misunderstanding of what the market values has left him considering one year offers, but this could have been avoided by creating a realistic baseline using even a simple calculation like the one above. For any agent or player heading into free agency, a calculation like this should be the bare minimum they do to prepare for what the market will pay them. Expecting $100 million when the market thinks you’re worth $35 million simply isn’t a very good way to go.

Dave is the Managing Editor of FanGraphs.

newest oldest most voted

Nice little rule of thumb, kind of like a Zillow for FA contracts.

But even with Zillow, some folks would still list their home for $500K when comparables are going for half that amount. And then, not re-adjust quickly.