🚫 Data Research 📊 Interactive Analysis 🎮 Steam Dataset

VAC-ation Denied

An Interactive Study of Steam's Most Dedicated Cheaters and the Games They Loved

🔍 Personal Research 🗄️ 3,993 Banned Accounts 🎮 1,312 Games Analyzed

Research Overview

Valve's anti-cheat infrastructure has banned hundreds of thousands of Steam accounts. But who were these players, and what were they actually doing? This project analyzes a dataset of 3,993 banned accounts across 1,312 games to answer the questions VAC never bothers explaining: which games produce the most cheaters, do high-hour players cheat more, when did ban waves cluster, and what does a "repeat offender" profile actually look like?

All visualizations below are fully interactive. Zoom, pan, hover for details, and filter by ban type. The data comes from Steam's public API and covers accounts with VAC bans, developer game bans, or both — spanning bans issued from the early 2000s through 2025.

3,993 Banned Accounts
1,795 VAC Banned
2,342 Game Banned
144 Both Types
316 Repeat Offenders
1,752h Avg Playtime (VAC)
INTERACTIVE FEATURE

Top 5 Games: A Leaderboard Through Time

Drag the slider to travel through time. As the cutoff year advances, banned players accumulate and the leaderboard evolves. Which game dominated each era?

Loading player data...
VISUALIZATION 01

Ban Timeline Explorer

When did the bans hit? Each bar represents 6-month windows, stacked by ban type. Drag the range slider to zoom into any era. Hover bars for exact counts.

2005 2026

Drag both sliders to zoom the timeline. Each bar = 180-day window. Days since ban converted to approximate calendar year (dataset collected ~March 2026).

VISUALIZATION 02

Top Games by Banned Players

Toggle between player count and average hours to see where commitment meets consequence.

VISUALIZATION 03

Playtime Distribution at Time of Ban

How many hours did it take? Distribution of total Steam playtime for the 1,210 accounts with recorded hours. Compare VAC vs. game ban profiles.

Outliers above 10,000h removed from view but included in statistics. Max recorded: 52,257h.

VISUALIZATION 04

Playtime vs. Ban Age: The Commitment Scatter

Each dot is a banned account. X axis = how long ago they were banned (in years). Y axis = total Steam playtime in hours. Scroll to zoom, drag to pan. Hover any dot for details.

(zero-hour accounts excluded). Hover any dot for details.

VISUALIZATION 05

Ban Type Breakdown

The full picture: how are bans distributed across VAC only, game bans only, and accounts that earned both? Click segments for details.

Click a segment to see details
VISUALIZATION 06

Recidivism: How Many Bans Per Account?

Some players just cannot help themselves. Distribution of total ban counts per account, broken down by VAC bans vs. game bans. The 4-VAC-ban club is disturbingly real.

VISUALIZATION 07

Library Size, Playtime, and Ban Age: A Triple-Axis View

Bubble chart: X = total games owned, Y = total playtime hours, bubble size = number of bans. Color = ban type. Only accounts with library data shown (1,211 accounts). Scroll to zoom, drag to pan.

. Accounts with 0 games excluded. X-axis capped at 500. Hover any bubble for details.

VISUALIZATION 08

Throwaway Accounts vs. Established Players

Two very different cheater profiles emerge when splitting by whether an account has any recorded playtime. Zero-playtime accounts are overwhelmingly game-banned, pointing to smurf and throwaway accounts purpose-built for cheating. Accounts with playtime are predominantly VAC-banned, suggesting long-term players who eventually crossed the line.

2,783 Zero Playtime 70% of dataset
1,210 Has Playtime 30% of dataset

Zero-playtime accounts may be private profiles, history-cleared accounts, or purpose-built smurf/throwaway accounts. The overwhelming skew toward game bans in that cohort strongly supports the throwaway hypothesis, since VAC requires deeper integration into a game before triggering.

SUMMARY

What the Data Shows

Patterns and correlations that emerged across the 3,993 banned accounts.

⏱️

VAC Players Invest Far More Time

Accounts banned by VAC averaged 1,752 hours of total Steam playtime versus a substantially lower average for game-ban-only accounts. VAC cheaters are not drive-by players: they are long-term, invested users who chose to cheat late into their library history.

🎯

Counter-Strike Dominates Every Era

Counter-Strike 2 (and its predecessors) leads the banned-player count in virtually every time window on the sliding leaderboard. With 768 banned accounts and a 471h average, it is not just the most-cheated game: it has been for over 20 years.

📈

Game Bans Exploded in the Battle Royale Era

The timeline shows a dramatic spike in developer-issued game bans from 2016 through 2020, corresponding directly with the rise of PUBG, Fortnite, and Apex Legends. This era produced more game bans per year than the entire prior decade of VAC combined.

🔁

Repeat Offenders Are a Small but Persistent Minority

316 accounts (7.9% of the dataset) accumulated more than one ban. Of those, 62 received 2+ VAC bans across different games, and a small cluster reached 4 VAC bans total. Getting caught does not reliably stop the behavior.

🏆

Hours-Per-Account Reveals Commitment, Not Just Popularity

Ranked by average hours rather than player count, Dota 2 (1,019h avg) and ARK: Survival Evolved (727h avg) overtake Counter-Strike entirely. Cheating in those games requires a long-haul commitment, suggesting a different psychological profile than one-and-done FPS cheaters.

📦

Library Size Correlates Weakly with Ban Count

The bubble chart shows accounts with large libraries (100+ games) spread across all ban counts without a strong cluster at higher bans. Owning more games does not predict cheating more often: the highest ban-count accounts are distributed across small and large libraries alike.

⚠️

Dual-Banned Accounts Show Escalation

The 144 accounts carrying both a VAC ban and a developer game ban show notably higher average playtime than either group alone. This suggests the accounts that earned both types were more active, more invested players: escalating rather than learning from the first ban.

👻

Majority of Banned Accounts Have No Playtime on Record

2,783 of 3,993 accounts (70%) report zero total playtime. These may be private profiles or history-cleared accounts, but Visualization 08 reveals a stronger pattern: zero-playtime accounts are overwhelmingly game-banned, skewing 9-to-1 toward game bans versus VAC. This strongly suggests many are throwaway or smurf accounts created specifically for cheating, not established players who hid their history.

Methodology Notes

Data Source

All data was sourced from Steam's public Web API. Account selection targeted profiles with at least one VAC ban or developer game ban on record.

Privacy and Anonymization

Accounts are represented by anonymized row identifiers only. No usernames, profile links, avatars, or personally identifiable information appear in any visualization.

Ban Type Coverage

The dataset covers VAC bans and developer-issued game bans. Community bans, trade bans, and economy restrictions are excluded. Accounts with private profiles appear with zero-value playtime.

Date Approximation

Steam exposes DaysSinceLastBan, not a calendar date. All ban years are estimated by subtracting from the collection date of approximately March 2026. Accuracy degrades for very old bans.

Playtime Definition

Playtime figures are total Steam library hours aggregated across all games, not per-game hours. Steam's API returns this aggregate for most banned accounts rather than a per-title breakdown.

Zero-Playtime Accounts

The 2,783 accounts (70%) showing zero playtime are private profiles, history-cleared accounts, or purpose-built throwaway and smurf accounts created specifically for cheating. The overwhelming skew toward game bans in this cohort (Visualization 08) supports the throwaway hypothesis: VAC requires sustained in-game play to trigger, while game bans can be issued quickly against new accounts. They are included in ban-count and timeline data but excluded from playtime analyses.

← Back to All Projects