How to Install CS2 Plugins
Every CS2 plugin needs the same two foundations: Metamod:Source and CounterStrikeSharp. Install them in the right order, edit one file, verify each layer before adding the next — and plugins just work. Skip a step and you get a silent server with no clue why.
Coming from CS:GO? Read this first: SourceMod does not work on CS2 and never will — CounterStrikeSharp is the modern equivalent. If that surprises you, see does SourceMod work on CS2.
The golden rule below is verify after every layer. Installing Metamod, CounterStrikeSharp and five plugins all at once is why most people end up with a server that boots to nothing.
What you'll need
A quick checklist before you begin — have these ready and the rest is easy.
- A working CS2 dedicated server (vanilla, booting and joinable).
- Metamod:Source — a CS2-compatible build.
- CounterStrikeSharp — the release matching your OS (take with-runtime unless .NET is already installed).
- File access to the server (SFTP or a panel file manager).
- Console access to run meta list and read the boot log.
Install the CS2 plugin stack, step by step
Start from a working CS2 server
Get a plain CS2 dedicated server booting and joinable before touching plugins. If it does not work vanilla, plugins will only hide the real problem. Not there yet? See our guide on making a CS2 server.
Install Metamod:Source
Metamod is the plugin loader that hooks the server — nothing else loads without it. Download the CS2-compatible Metamod:Source build and extract it so the addons folder lands in your csgo directory (yes, CS2 still uses the csgo folder name).
game/csgo/addons/metamod/
Edit gameinfo.gi — the step everyone forgets
Metamod will not load until you register it in the game's search paths. Open game/csgo/gameinfo.gi, find the SearchPaths block, and add the Metamod line above the existing Game csgo entry. Mind the exact spelling — a typo here fails silently.
SearchPaths
{
Game csgo/addons/metamod
Game csgo
Game core
}Verify Metamod loaded
Start the server and type meta list in the console. If Metamod is loaded it responds; if the command is unknown, Metamod is not loading — re-check gameinfo.gi and the folder path. Do not continue until this works.
meta list
Install CounterStrikeSharp
Download the CounterStrikeSharp release that matches your OS (Linux or Windows). Take the with-runtime build unless you already have the .NET runtime on the box. Extract it into the same addons folder, then restart the server.
game/csgo/addons/counterstrikesharp/
Verify CounterStrikeSharp loaded
Restart and run meta list again — CounterStrikeSharp should now appear in the list. It also creates its own plugins and configs folders on first run. Again: do not add plugins until you see it listed.
meta list
Add your plugins
Drop each plugin into the CounterStrikeSharp plugins folder — one per subfolder, containing its .dll. Add one plugin at a time and restart between each, so a failure is obvious. Most plugins generate their config on first run; edit it, then restart again.
game/csgo/addons/counterstrikesharp/plugins/MatchZy/
Check the startup log
Read the console on boot. A plugin that fails to load says so, with a reason — a missing dependency, a version mismatch, or a bad config. The log is the answer; the server browser is not.
Keep a plugin server alive
Valve updates break plugins
A CS2 update frequently breaks Metamod and CSSharp until both update — taking every plugin with them. Do not rush the game update mid-event.
Back up a working addons folder
Before any update, copy the whole addons folder. Rolling back beats debugging at 1am.
One plugin at a time
Add, restart, verify, repeat. It turns a two-hour mystery into a two-minute fix.
CPU clock beats core count
CS2 is single-thread bound. A plugin-heavy 20+ player server finds a slow CPU's ceiling fast.
Common problems & fixes
Hit a snag? These are the issues people run into most — and how to solve them.
"meta list" is an unknown command
Metamod is not loading. Re-check the gameinfo.gi SearchPaths entry (exact spelling) and that the folder is at game/csgo/addons/metamod.
Metamod loads but CounterStrikeSharp does not appear
Wrong build or missing .NET runtime. Use the with-runtime release for your OS, and check the CSSharp version supports the current CS2 build.
Everything broke after a CS2 update
Expected. Wait for Metamod and CounterStrikeSharp to release updates, then update both before the plugins. Roll back to your backed-up addons folder if you need the server up now.
Plugin loads but does nothing
Most plugins write a config on first run and need a restart after you edit it. Check the plugin's own config folder and the boot log.
Skip the setup — host it with ESAGAMES
CS2 plugin servers are CPU-bound and tick-sensitive. Our CS2 hosting runs high-clock CPUs behind a multi-Tbps Frankfurt network, with full file access for Metamod and CounterStrikeSharp.
Frequently asked questions
Does SourceMod work on CS2?
No. SourceMod does not support CS2 and that has not changed in 2026 — there is no bridge or compatibility layer. CS2 runs on Source 2, while SourceMod was built for Source 1. CounterStrikeSharp is the modern equivalent.
Do I need both Metamod and CounterStrikeSharp?
Yes. Metamod:Source is the loader that hooks the server, and CounterStrikeSharp is the framework plugins are written against. Metamod must be installed and verified first — nothing loads without it.
Why is my plugin not loading?
Read the server console on boot: it names the reason. The usual causes are Metamod not registered in gameinfo.gi, a CounterStrikeSharp version that does not match the current CS2 build, a missing dependency, or the plugin .dll being in the wrong folder.
Where do CS2 plugins go?
Into game/csgo/addons/counterstrikesharp/plugins/, one plugin per subfolder containing its .dll. Metamod itself lives in game/csgo/addons/metamod/.
Will plugins get my players VAC banned?
No. Server-side plugins on a community server are not client cheats, and community servers are not VAC-secured like official matchmaking. A mismatched Metamod/CSSharp version after an update can cause session verification errors, which is a different problem.
Why does my server disappear after adding plugins?
Usually tags, the query port or the heartbeat rather than the plugin itself. Check the boot log first — a plugin that failed to load will say so there.
Keep reading
Counter-Strike 2 and the Source engine are trademarks of Valve Corporation. Metamod:Source, CounterStrikeSharp, MatchZy and all plugin names belong to their respective authors. ESAGAMES is an independent hosting provider, not affiliated with or endorsed by Valve or any plugin developer. Download plugins only from their official sources.