Upload your downloaded HTML Page with the button below:

This tool requires a modern browser to work (ES6)
You find information on how to get the HTML page you need on the bottom of this page.

General Games Played:

The following statistics will be MyM Competitive only. And they still include abandoned games (as long as there is data for them)

Games Played per Day:

Found Games by Time:

Classes played (outer circle is total, inner if the class was played as the only one):

Maps played:

Total Medals:

Server Locations:

Match Durations (ignoring startup + ready up time):

Queue Durations (only found games):

MMR Gain/Loss:

Additional Text based stats:

Average Damage (all classes):
Most Damage (all classes):
Average Kills (all classes):
Most Kills (all classes):
Average Deaths (all classes):
Most Deaths (all classes):
Average K/D:
Average Heals (medic only):
Most Heals (medic only):
Average Score:
Highest Score:
Average Ping:
Highest Ping:
Lowest Ping:
Games won:
Games lost:
Average MMR gained:
Most MMR gained:
Average MMR lost:
Most MMR lost:
Games with a bot:
Longest Queuetime (where a game was found) in minutes:
Shortest Queuetime (where a game was found) in minutes:
Average Queuetime (where a game was found) in minutes:
Longest Game time (including waiting for ready up, ...) in minutes:
Shortest Game time (including waiting for ready up, ...) in minutes:
Average Game time (including waiting for ready up, ...) in minutes:
Games found during the Matchmaking Beta:
Switch Competitive with Casual
If you don't know how to download the data which you need to upload here, go to your Steam Profile. Then click on games (on the right), scroll to TF2 and click "Personal Game Data". Next go to the Tab "Match History". This Script needs an English language for the Match Information, meaning if you don't have your language set to English (here), do it for the duration of "scraping" the information. Then either keep clicking on "Load More" or open your console (Chrome -> F12) and paste in the following:
clear = setInterval(()=>{
    if(document.getElementById("load_more_button") != null && window.getComputedStyle(document.getElementById("load_more_button")).display != "none" && window.getComputedStyle(document.getElementById("load_more_button")).visibility != "hidden"){
        ElementsContainerHistory_LoadMore();
        window.scrollTo(0,document.body.scrollHeight);
    }
}, 1200)
                    
Wait until all information is loaded (the script stops automatically, it needs about 8 minutes for me). Then save the website (using CTRL+S) and import that saved HTML page into this script. Should you want to cancel the automatic page load type the following in console:
clearInterval(clear);
                    

View the github repository Star Issue