Team Fortress 2 can be very economy-oriented, which is one of the reasons I love the game so dearly. There are many places with different data about item drops and item values, so I thought I would throw some of my personal findings out there.

Over the course of 7 real-weeks I gathered 229 account-weeks worth of data, which came to 2450 items. I’m still collecting more drop information and intend on updating this post with a larger sample set, so look for periodic updates. For purposes of this initial post, 229 “weeks” is a fine starting point.

The Process

The process was quite simple: track a bunch of accounts over the course of 7 weeks recording all drops to a CSV. Import the CSV into a MySQL database, split the data into weeks based on the item reset timer on Valve’s end, and from there it’s as simple as parsing item names into values/types. For the parsing, I reused a lot of old code, namely this: https://github.com/rannmann/Backpack.tf_Tooltips.

Data in Graphs

Google’s API is loading…
Google’s API is loading…
Google’s API is loading…
Google’s API is loading…

Some Raw Numbers

In this time there wasn’t a single salvaged crate drop, which negatively affects the data a bit. I had expected to see one salvaged drop per 400 crates or so. Nonetheless, here are the numbers!

Item Drops

  • 42 hats (77.87 ref)
  • 434 crates (12.04 ref)
  • 11 tools (11.43 ref)
  • 1963 weapons (109.055 ref)

Averages

  • 10.698689956332 drops per week
  • 0.91875788447446 ref per week

Highest Value

  • Hat: Kringle Collection (8.21 ref)
  • Tool: Name Tag (1.83 ref)
  • Crate: RoboCrate #58 (0.11 ref)

Lowest Value

  • Hat: <many> (1.33 ref)
  • Tool: Dueling Mini-Game (0.28 ref)
  • Crate: <most> (0.01 ref)

Crate Series Counts

  • 55: 132
  • 57: 124
  • 56: 101
  • 58: 77

Resources

I made a Google Docs spreadsheet for those who run multiple accounts, or are just curious what their account could potentially earn if they were to sell every item they find. This spreadsheet is read-only, but you’re more than welcome to make a copy and fiddle around with the numbers yourself. Since I had no salvaged crate drops, I added an extra section on the “Figures” page to estimate this amount.

Price data was dynamically pulled from backpack.tf, using item names gathered from SteamPowered‘s API.