CS:Source analytics, for classic servers.

The SourceMod plugin reads frame time against 15.2 ms at 66 tick, rounds and map changes, sessions by map and player ping, and the ServerStats sidecar on the same machine sends it out.

Find the maps that keep players, the frame-time spikes behind rubber-banding and the regulars worth looking after.

Free for one server. No card needed.

Questions it answers for Counter-Strike: Source servers

What the demo dashboard answers for this game.

Which maps keep players?

Minutes played per map in the rotation.

Is it the server or their connection?

Frame time against the 66-tick budget, next to each player's ping.

Who became a regular?

Day-1, day-7 and day-30 retention for every week of new players.

Are VIPs renewing?

VIP sales and renewals.

When is it full?

Players online through the week.

Who comes back?

New against returning players, by week.

What ServerStats tracks on Counter-Strike: Source servers

A SourceMod plugin collects in the game; the ServerStats sidecar on the same machine signs and sends it. Linux today, Windows soon.

Performance

  • Frame time per 10 seconds, average and worst, against the tick interval
  • Frames over 1.5 times the tick budget, and the tick rate actually run
  • Lag spikes over 100 ms (serverstats_lag_spike_ms)

Players

  • Humans, bots and slots, sessions by SteamID64
  • Ping and packet loss per player
  • New and returning players, D1, D7 and D30 retention

Rounds and maps

  • Rounds, round length and round end reasons by map
  • Minutes played per map and map changes
  • Bomb plants and defuses by site, defuse kits, hostages rescued

Combat and economy

  • Kills by weapon, headshots, team kills, dominations and revenge
  • Weapon purchases and money spent per team (refused buys never count)
  • VIP sales and renewals (Operator)

No install yet? Basic mode reads A2S on the game port (27015 by default). Check any Counter-Strike: Source server with the free server status checker.

Plugin-specific payment and gamemode integrations for Counter-Strike: Source are planned. The general dashboard and payments log work today.

The number that matters: frame time at 66 tick

15.2ms
One tick at 66 tick
Default tick rate
66
Over budget
Frame over 22.7 ms
Lag spike
100 ms (configurable)
Read
Every frame

A 66-tick CS:Source server has 15.2 ms per tick. The plugin times every server frame and reports the average and the worst frame of each 10 seconds, the frames that ran over one and a half ticks, and how many ticks a second the server really ran.

The budget follows the tick interval the server reports, so a server started at another tick rate is measured against its own budget. Any frame over 100 ms is recorded as a lag spike with the player count, next to each player's ping and loss, so you can tell server lag from bad connections.

SourceMod keeps no per-plugin timings, so spikes aren't named by plugin.

A plugin and a sidecar, on the same machine.

Works with

  • SRCDS
  • SourceMod
  • Metamod:Source
  • Linux sidecar (Windows soon)
  • Runs next to your server and connects out only. No ports to open.
  • A one-time claim code, then the sidecar signs everything it sends with its own key. No reusable secret is stored on your server or ours.
  • Player IDs are keyed hashes in analytics. Player IP addresses are never sent to us.
serverstats-sidecar.yml
# First unzip the SourceMod plugin into cstrike/ (addons/sourcemod/plugins/serverstats.smx)
# Linux x64 sidecar (Windows build coming soon)
# 1. serverstats-sidecar init css > serverstats-sidecar.yml
# 2. In serverstats-sidecar.yml set:
claim: "SS-XXXX-XXXX-XXXX"
source:
  game: css
  game_dir: "/home/steam/css-server/cstrike"
# 3. serverstats-sidecar run

Counter-Strike: Source questions

What tick rate does it assume?

Whatever the server runs. The budget comes from the server's own tick interval: 15.2 ms at the default 66 tick.

Do I need SourceMod?

Yes. The plugin runs on SourceMod 1.12 or newer with Metamod:Source, and the ServerStats sidecar runs on the same machine (Linux today, Windows soon).

Why a plugin and a sidecar?

SourcePawn can't do the cryptography ServerStats uses to sign data, so the plugin writes to a local file and the sidecar signs and sends it. Nothing connects in, and the game's log, which has player IPs, is never read.

Does it work for surf, bhop and jailbreak?

Yes. Everything is recorded per map, so you can compare the maps in your rotation. Bomb, hostage and buy stats apply to standard modes only.

Can I kick or ban from the dashboard?

Yes, if you turn moderation on in the plugin and the dashboard: kick, ban and unban by SteamID64, mute and gag, messages and warnings. Every action is signed and checked before it runs.

Do players install anything?

No.

Is it free?

Free covers one server with 24 hours of history, forever, with no card. Operator is $9.99 a month for 10 servers and 90 days of history, which you need for week-on-week trends and D7 or D30 retention. Yearly billing gives two months free.

Related games

One ServerStats account covers every game you run.

Start with one Counter-Strike: Source server, free

Run the sidecar and see your first numbers today.