How to Connect Your CS2 Server to Discord
Relay in-game chat, join/leave events, and round results to a Discord channel so your community stays connected.
What This Gets You
Linking your CS2 server to Discord means players in your Discord server can see what's happening in-game without launching CS2. Common things servers relay:
- In-game chat messages
- Player join and leave notifications
- Round end summaries (winner, score)
- Server status (online/offline, player count)
- Kill highlights or MVP announcements
Main Plugin: CS2-Discord-Utilities
The most full-featured option is CS2-Discord-Utilities by NockyCZ:
https://github.com/NockyCZ/CS2-Discord-Utilities
This plugin handles the full range of Discord integration including bot-based features and webhook posting.
Installation
- Make sure CounterStrikeSharp is installed — Installing CounterStrikeSharp on Your CS2 Server
- Download the latest release zip from the GitHub releases page
- Extract and merge
addons/intogame/csgo/ - Restart the server to generate the config
Config location:
game/csgo/addons/counterstrikesharp/configs/plugins/CS2-Discord-Utilities/
Setting Up a Discord Bot
For full functionality (not just webhooks), you need a Discord bot:
- Go to
https://discord.com/developers/applications - Click New Application, give it a name
- Go to the Bot tab, click Add Bot
- Copy the Bot Token — you'll paste this into the plugin config
- Under OAuth2 > URL Generator, select
botscope and the permissions your bot needs (Send Messages, Embed Links, Read Message History) - Use the generated URL to invite the bot to your Discord server
Setting Up Webhooks
For a lighter approach (chat relay only, no bot needed):
- In your Discord server, go to a channel's settings
- Select Integrations > Webhooks > New Webhook
- Copy the webhook URL
- Paste it into the plugin config for the relevant event type
You can use different webhook URLs for different channels — e.g., chat messages go to #cs2-chat, server status goes to #server-status.
Config Settings
{
"BotToken": "your-bot-token-here",
"ChatWebhook": "https://discord.com/api/webhooks/...",
"StatusWebhook": "https://discord.com/api/webhooks/...",
"PostChatMessages": true,
"PostPlayerJoin": true,
"PostPlayerLeave": true,
"PostRoundEnd": true,
"PostServerStatus": true
}
Toggle each event type on or off based on how much noise you want in Discord.
Lighter Alternative: Webhook-Only Plugins
If you just want a server status embed (player count, map, online/offline) without the full integration, several simpler plugins post only to a webhook without requiring a bot. Search GitHub for cs2 discord webhook and look for a recently maintained plugin. Setup is just: paste your webhook URL, set your channel, done.
What Your Community Gets Out of It
- Players in Discord can see if the server is active before launching CS2 — removes friction for casual players deciding whether to join
- New players discover your server via Discord friends seeing the activity
- Admins get notified of chat issues or rule violations without being in-game
- It makes the server feel like a living thing, not just an IP address