Mod logs record server events and moderation actions in a channel you choose. Each enabled event posts a color-coded embed with a short summary plus structured fields, so moderators can scan what happened without opening Discord audit logs.
Most events now include who performed the action (the actor) by cross-referencing Discord’s audit log. This requires the View Audit Log permission — check Permissions if actor fields aren’t showing.
Navigate to Mod Logs
Open the Mod Logs page from the sidebar.
Select a log channel
Choose the channel where the bot should post log entries. You can also create a new #mod-logs channel directly from the dashboard.
Enable logging
Turn on the Enable Audit Logging toggle.
Choose events to log
Enable the event categories you want to track. Each event has its own toggle, so you can keep the log channel focused on what your team actually reviews.
Enable only the events you care about. Message edits, deletions, and high-churn channel updates can make the log channel noisy if you turn everything on at once.
Additional settings
- Ignore bots — skips events when the affected user is known to be a bot
- Hide user thumbnails — removes user avatars from member, message, and voice embeds
- Ignored channels — skips message delete and message edit logs for the channels you exclude
Event reference
Each log entry uses a color to signal what kind of action happened:
- 🟢 Green — joins, creates, unbans, and other positive or additive events
- 🟡 Yellow — edits, updates, moves, and changed settings
- 🔴 Red — leaves, deletes, bans, and removals
- 🔵 Blue — informational events such as invite creation
- 🟠 Orange — reserved for moderation warning-style events
Member events
Member joined
Member left / kicked
Member banned
Member unbanned
Nickname changed
Roles changed
Member timed out
Timeout removed
Logs when a member joins the server.| Field | Value |
|---|
| Color | Green |
| Title | Member Joined |
| Summary | Member mention joined the server |
| Details | Account created timestamp, account age, New account vs Established account, bot flag, custom avatar flag, invite code + inviter (if trackable), member count |
| Footer | User ID |
Logs when a member leaves or is kicked. The bot checks Discord’s audit log to determine if the departure was a kick.| Field | Value |
|---|
| Color | Red |
| Title | Member Left — or Member Kicked if a kick audit entry is found |
| Summary | Member mention left the server (or was kicked) |
| Details | Kicked by (if kick), kick reason (if kick), server join timestamp, server tenure, account age, top role, role count, truncated role list, member count |
| Footer | User ID |
Logs when a member is banned.| Field | Value |
|---|
| Color | Red |
| Title | Member Banned |
| Summary | Member mention was banned |
| Details | Banned by (actor), reason, account created timestamp, account age |
| Footer | User ID |
Logs when a member is unbanned.| Field | Value |
|---|
| Color | Green |
| Title | Member Unbanned |
| Summary | Member mention was unbanned |
| Details | Unbanned by (actor), account created timestamp, account age |
| Footer | User ID |
Logs when a member’s nickname changes.| Field | Value |
|---|
| Color | Yellow |
| Title | Nickname Changed |
| Summary | Member mention updated their nickname |
| Details | Before nickname, after nickname, current top role, current role count |
| Footer | User ID |
Logs when a member gains or loses roles.| Field | Value |
|---|
| Color | Yellow |
| Title | Member Roles Changed |
| Summary | Member mention had role changes applied |
| Details | Changed by (actor), audit reason, added roles, removed roles, current top role, current role count |
| Footer | User ID |
Logs when a member is timed out (muted). Controlled by the Member muted toggle.| Field | Value |
|---|
| Color | Orange |
| Title | Member Timed Out |
| Summary | Member mention was timed out |
| Details | Timed out by (actor), reason, duration, expiry timestamp |
| Footer | User ID |
Logs when a member’s timeout is removed. Controlled by the Member unmuted toggle.| Field | Value |
|---|
| Color | Green |
| Title | Timeout Removed |
| Summary | Member mention’s timeout was removed |
| Details | Removed by (actor) |
| Footer | User ID |
Message events
Message deleted
Message updated
Messages bulk deleted
Invite posted
Invite deleted
Logs when a message is deleted. Ignored channels are skipped.| Field | Value |
|---|
| Color | Red |
| Title | Message Deleted |
| Summary | Message from a user was deleted in a channel |
| Details | Author, deleted by (if a moderator deleted it), channel, original send timestamp, age at deletion, content length, attachment/embed/sticker counts, content preview, attachment names |
| Fallbacks | Attachment-only messages are labeled as such, and uncached partial deletes still log whatever data is available |
| Footer | Message ID |
Logs when a message is edited. Ignored channels are skipped.| Field | Value |
|---|
| Color | Yellow |
| Title | Message Edited |
| Summary | Message from a user was edited in a channel |
| Details | Author, channel, original send timestamp, time to edit, content length delta, attachment count, jump link, before preview, after preview |
| Fallbacks | If the previous message content was not cached, the log explicitly says previous content was unavailable |
| Footer | Message ID |
Logs when multiple messages are purged at once (e.g. a moderator using a purge command).| Field | Value |
|---|
| Color | Red |
| Title | Messages Bulk Deleted |
| Summary | X messages were purged in a channel |
| Details | Purged by (actor), channel, message count, affected authors (up to 10) |
Logs when a server invite is created.| Field | Value |
|---|
| Color | Blue |
| Title | Invite Created |
| Summary | Invite code was created |
| Details | Invite code, target channel, inviter, temporary flag, max uses, current uses when available, max age, expiry |
| Footer | Invite code |
Logs when a server invite is deleted.| Field | Value |
|---|
| Color | Red |
| Title | Invite Deleted |
| Summary | Invite code was deleted |
| Details | Code, originally created by, channel, total uses |
Role events
Role created
Role updated
Role deleted
Logs when a role is created.| Field | Value |
|---|
| Color | Role color, with green fallback |
| Title | Role Created |
| Summary | Role mention was created |
| Details | Created by (actor), name, color, position, mentionable, hoisted, managed, permission count, truncated permission list |
| Footer | Role ID |
Logs when a role changes.| Field | Value |
|---|
| Color | New role color, with yellow fallback |
| Title | Role Updated |
| Summary | Role mention was updated |
| Details | Updated by (actor), plus only changed properties: name, color, position, hoist, mentionable, managed, added and removed permissions |
| Footer | Role ID |
Logs when a role is deleted.| Field | Value |
|---|
| Color | Red |
| Title | Role Deleted |
| Summary | Role name was deleted |
| Details | Deleted by (actor), name, color, position, mentionable, hoisted, managed, permission count, truncated permission list |
| Footer | Role ID |
Channel events
Channel created
Channel updated
Channel deleted
Logs when a channel is created.| Field | Value |
|---|
| Color | Green |
| Title | Channel Created |
| Summary | Channel mention was created |
| Details | Created by (actor), name, type label, category, plus type-specific fields such as topic, slowmode, NSFW, bitrate, or user limit when relevant |
| Footer | Channel ID |
Logs when a channel changes.| Field | Value |
|---|
| Color | Yellow |
| Title | Channel Updated |
| Summary | Channel mention was updated |
| Details | Updated by (actor), type label plus only the changed fields: name, category, topic, slowmode, NSFW, bitrate, and user limit |
| Footer | Channel ID |
Logs when a channel is deleted.| Field | Value |
|---|
| Color | Red |
| Title | Channel Deleted |
| Summary | Channel name was deleted |
| Details | Deleted by (actor), name, type label, category, plus any relevant text or voice metadata still available on the deleted channel object |
| Footer | Channel ID |
Voice events
Joined voice
Left voice
Switched voice
Logs when a member joins a voice channel.| Field | Value |
|---|
| Color | Green |
| Title | Joined Voice Channel |
| Summary | Member mention joined a voice channel |
| Details | Channel name, current occupancy, self mute/deaf state, stream state, video state |
| Footer | User ID |
Logs when a member leaves a voice channel.| Field | Value |
|---|
| Color | Red |
| Title | Left Voice Channel |
| Summary | Member mention left a voice channel |
| Details | Channel name, current occupancy after leaving, self mute/deaf state, stream state, video state |
| Footer | User ID |
Logs when a member moves between channels. This fires if either Member joined voice channel or Member left voice channel is enabled.| Field | Value |
|---|
| Color | Yellow |
| Title | Switched Voice Channel |
| Summary | Member mention moved voice channels |
| Details | From channel, to channel, occupancy in both channels, self mute/deaf state, stream state, video state |
| Footer | User ID |
Server events
Server edited
Emoji added
Emoji removed
Logs when server settings change.| Field | Value |
|---|
| Color | Yellow |
| Title | Server Updated |
| Summary | Server settings were updated |
| Details | Only changed fields are shown. Changes can include name, icon, banner, verification level, default notifications, AFK channel, and AFK timeout |
| Footer | Server ID |
Logs when a custom emoji is added. Controlled by the Emojis updated toggle.| Field | Value |
|---|
| Color | Green |
| Title | Emoji Added |
| Summary | Emoji name was added |
| Details | Name, animated flag, managed flag, available flag |
| Thumbnail | Emoji image |
| Footer | Emoji ID |
Logs when a custom emoji is removed. Controlled by the Emojis updated toggle.| Field | Value |
|---|
| Color | Red |
| Title | Emoji Removed |
| Summary | Emoji name was removed |
| Details | Name, animated flag, managed flag, available flag |
| Footer | Emoji ID |
Default settings
Moderation events such as Member muted, Member unmuted, Moderation ban, and Moderation unban are enabled by default in the dashboard configuration. The current event-driven log output described on this page focuses on the handlers already implemented by the bot, while all other toggles start disabled until you opt in.