Home /Docs /Community activity
Community activity
Message counts, voice hours, member growth — without storing message content.
Product overview: Community activity— why it exists. This page is the setup guide.
Overview
When enabled, ModShield records daily aggregates only: how many messages each member sent, voice time, and joins/leaves. No message content is stored for analytics. Free tier Insights lookback is 7 days; Premium up to 90.
/stats [user] [days]— your (or another member's) activity/top messages|voice|helpers [days]— leaderboard/privacy optout|optin|status— per-member opt-out of message/voice counting/thanks @user— thread owner or staff credits a helper (optional helper score)
Dashboard → server → Insights shows moderation insights plus community activity when the plugin is on. Settings → Community activity toggles tracking.
Configure
Dashboard → Settings → Community activity. Set enabled, track_messages, track_voice, track_joins, optional ignore channel/role lists, optional member_count_channel_id (renames a channel to Members: N), and default lookback days.
Helper score (optional): set helpers_enabled, thanks_emoji (default 🙏), helpers_threads_only, and optional helper_role_rewards (JSON list of {min_helps, role_id}). One thank per thread.
Telegram: message and join counts use the same activity store when the plugin is on for tg:… guilds.
Leveling: enable voice_xp_enabled on the Leveling section to grant XP from Discord voice sessions (per-minute, session cap).
AI cost brake: on AI moderation, only_first_message runs the classifier only until a member has any tracked activity message.
Staff: /auditroles lists roles with elevated Discord permissions.
API: GET /api/v1/servers/{id}/community-insights?days=7 (Bearer key, read scope).