Chat Guard checks every chat message in your game before other players see it, in about 300 ms, and tells trash talk from real abuse. Your game gets back one clear answer (allow, flag, hide or block) and the scores behind it.
Website · Docs · Pricing · Discord · Status
- What stores, consoles and laws ask of chat. Chat Guard takes that work off your studio: every message is checked before other players see it, and every decision is logged with its scores for 90 days, or longer while you keep its message text. Message text isn't stored by default, only a hash of it.
- Fast and precise. A fresh check takes about 300 ms; repeats and your own block rules answer in a few milliseconds. Each message is judged with the lines before it, its channel and its age rating, so banter about the match and an attack on a player get different answers.
- Tune without shipping a build. Thresholds and rules live in the dashboard, not in your game. Save a change and the next message uses it.
- Works with your setup. The Unity package fits Netcode for GameObjects, Mirror, FishNet and Photon Fusion. Nakama, Colyseus and any other server send one HTTP request per message. No game server (Photon PUN, Photon Chat)? Run the small example relay from GitHub, or call from the game with a publishable key.
-
In Package Manager, choose Add package from git URL and paste:
https://github.com/chatguard-dev/chat-guard-unity.git -
Sign in with Google or GitHub (no card needed) and create a key.
-
Check each message before you show it:
using ChatGuard;
using ChatGuard.Core;
// Set up once with your key: ChatGuardSdk.Configure(apiKey);
// (or a config asset at Assets/Resources/ChatGuardConfig.asset)
void OnPlayerMessage(string playerId, string text)
{
ChatGuardSdk.Moderate(text, playerId, result =>
{
if (result.ShouldDeliver) // allow or flag
ShowInChat(playerId, text);
else if (result.Action == ModerationAction.Hide)
ShowToSenderOnly(playerId, text); // others never see it
else // block
TellSender(playerId, "Message not delivered");
});
}The quick start takes you from install to a first checked message, and Integrations shows where the call goes on your stack. Not on Unity? Any server can call Chat Guard with one HTTP request per message, and the API reference lists every field.
- chat-guard-unity: the Unity package, for Unity 2021.3.42 LTS and newer. No third-party dependencies; source available, for use with Chat Guard.
- status: our uptime record. The public endpoints are checked every few minutes by an external monitor, with GitHub-based probes as a backup; an outage alerts the operator. Incidents open as issues there.
- Questions: the
#helpforum on our Discord. - Feature ideas:
#feature-requestson the same server. - Found a bug? Open an issue on chat-guard-unity. Leave keys and players' messages out of it.
- Account and billing: support@chatguard.dev.
- Plans and custom volume: sales@chatguard.dev.
- A player asks about their data? Use Export a player or Erase a player on your project's Settings page in the dashboard. Please never email us player ids or message text; if you write about a record, give its verdict or request id.
- Found a security problem? Report it privately on GitHub or email support@chatguard.dev, rather than posting it in public. SECURITY.md has the details.