OTC’s Salary Cap Calculator Has Been Upgraded

The very first project I did for Over The Cap was to develop the Salary Cap Calculator, a device that allows users to run an array of transactions for any team, and demonstrate how those transactions will change the team’s salary cap status. This project was done back in 2014, and in the seven years since, much has changed with not only league rules with a new CBA, but also with web development in general. The code that had been used to write the calculator was growing increasingly unstable, and with difficult usability across an array of devices.

Thus, I’m happy to release the second version of the OTC Salary Cap Calculator, with its aim to fix most of these issues. Much of the changes come in the form of coding changes that will not be visible to the end user, but there are several changes that you will see as you interact, while preserving some of the features you’re already used to:

  • Emphasis has been made to make the calculator more friendly to operate on phones and tablets, as we anticipate that many of our users would like to make hypothetical roster changes while they’re on the move. Interaction elements, such as buttons, dropdown menus, and input fields, have been redimensioned to make it easier to operate on touch devices. On phones, it is preferred to operate in landscape mode in order to be able to fully use all features, but the aim is that it will still be more accessible than the first version.
  • In a similar effort to preserve space for usability across devices, we have merged all non-prorated bonuses into one column. If you are interested in separating such bonuses into their specific categories (regular roster bonus, per-game roster bonus, workout bonus, etc.) or to craft in incentives and escalators, we recommend that you go into more detail with using OTC’s Contract Constructor.
  • In another space-conserving measure, the table at the top listing the cap space, liabilities, and team salary cap has been limited to four seasons. We feel that the grand majority of users will not have much interest in these numbers beyond four seasons. However, for seasons further out you may select the tabs that go out to ten seasons, and see the team’s liabilities at the bottom of the table for that season.
  • The “Extend” feature has been reworked and expanded to also include renegotiations that do not typically qualify as extensions. This can include actions such as cutting a player’s pay, or adding void seasons to maximize the proration of cap dollars beyond what is available via a restructure. The infrastructure for this is the same that is used for OTC’s Contract Constructor, so you will see some familiarity between the two.
  • You may now add any player from another team by using the “Add External Player…” autocomplete field, regardless of contract status. If that player is not a free agent, the calculator will assume the player is being acquired by trade, with all contract details for future seasons imported–other than prorated bonuses that remain the liability of the old team. You will also be given the option to renegotiate the existing contract if so desired.
  • A bug that prevented users from trading a player after June 1 should now be fixed.
  • Franchise and transition tag numbers for certain players have been corrected to account for minimum 20% raises from their prior salaries, as mandated by Article 10, Section 2(a)(i) of the CBA.
  • The age of each player for each given season is now provided, alongside the number of accrued seasons he is projected to have by the beginning of that season.

We hope this upgrade will provide a better experience for you as we continue to assist you with understanding the operations of NFL contracts and the salary cap. As we have been busy with other tasks, both within and outside OTC, internal testing has been limited, and we may have missed some other bugs in the process. If you see any such bugs, or have other suggestions on how to improve the calculator further, please use OTC’s Technical Support contact form, or reach out to me on Twitter at @nickkorte.