diff --git a/backend/src/plugins/ModActions/commands/ForcebanCmd.ts b/backend/src/plugins/ModActions/commands/ForcebanCmd.ts
index 0fc1ddbe..43dd0072 100644
--- a/backend/src/plugins/ModActions/commands/ForcebanCmd.ts
+++ b/backend/src/plugins/ModActions/commands/ForcebanCmd.ts
@@ -64,7 +64,7 @@ export const ForcebanCmd = modActionsCommand({
     pluginData.state.serverLogs.ignoreLog(LogType.MEMBER_BAN, user.id);
 
     try {
-      await pluginData.guild.banMember(user.id, 1);
+      await pluginData.guild.banMember(user.id, 1, encodeURIComponent(reason));
     } catch (e) {
       sendErrorMessage(pluginData, msg.channel, "Failed to forceban member");
       return;
diff --git a/backend/src/plugins/ModActions/commands/MassBanCmd.ts b/backend/src/plugins/ModActions/commands/MassBanCmd.ts
index 26f1d6c1..92404d1e 100644
--- a/backend/src/plugins/ModActions/commands/MassBanCmd.ts
+++ b/backend/src/plugins/ModActions/commands/MassBanCmd.ts
@@ -66,7 +66,7 @@ export const MassbanCmd = modActionsCommand({
     const casesPlugin = pluginData.getPlugin(CasesPlugin);
     for (const userId of args.userIds) {
       try {
-        await pluginData.guild.banMember(userId, 1);
+        await pluginData.guild.banMember(userId, 1, encodeURIComponent(banReason));
 
         await casesPlugin.createCase({
           userId,
diff --git a/backend/src/plugins/ModActions/commands/UnbanCmd.ts b/backend/src/plugins/ModActions/commands/UnbanCmd.ts
index 7ad47848..4b65f7dc 100644
--- a/backend/src/plugins/ModActions/commands/UnbanCmd.ts
+++ b/backend/src/plugins/ModActions/commands/UnbanCmd.ts
@@ -42,17 +42,16 @@ export const UnbanCmd = modActionsCommand({
     }
 
     pluginData.state.serverLogs.ignoreLog(LogType.MEMBER_UNBAN, user.id);
+    const reason = formatReasonWithAttachments(args.reason, msg.attachments);
 
     try {
       ignoreEvent(pluginData, IgnoredEventType.Unban, user.id);
-      await pluginData.guild.unbanMember(user.id);
+      await pluginData.guild.unbanMember(user.id, encodeURIComponent(reason));
     } catch (e) {
       sendErrorMessage(pluginData, msg.channel, "Failed to unban member; are you sure they're banned?");
       return;
     }
 
-    const reason = formatReasonWithAttachments(args.reason, msg.attachments);
-
     // Create a case
     const casesPlugin = pluginData.getPlugin(CasesPlugin);
     const createdCase = await casesPlugin.createCase({
diff --git a/backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts b/backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts
index afbae794..605c5f6a 100644
--- a/backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts
+++ b/backend/src/plugins/ModActions/functions/actualKickMemberCmd.ts
@@ -88,7 +88,7 @@ export async function actualKickMemberCmd(
     ignoreEvent(pluginData, IgnoredEventType.Unban, memberToKick.id);
 
     try {
-      await pluginData.guild.unbanMember(memberToKick.id);
+      await pluginData.guild.unbanMember(memberToKick.id, encodeURIComponent(reason));
     } catch (e) {
       sendErrorMessage(pluginData, msg.channel, "Failed to unban the user after banning them (-clean)");
     }
diff --git a/backend/src/plugins/ModActions/functions/banUserId.ts b/backend/src/plugins/ModActions/functions/banUserId.ts
index 50112d79..ae4bdf1d 100644
--- a/backend/src/plugins/ModActions/functions/banUserId.ts
+++ b/backend/src/plugins/ModActions/functions/banUserId.ts
@@ -40,7 +40,7 @@ export async function banUserId(
   ignoreEvent(pluginData, IgnoredEventType.Ban, userId);
   try {
     const deleteMessageDays = Math.min(30, Math.max(0, banOptions.deleteMessageDays ?? 1));
-    await pluginData.guild.banMember(userId, deleteMessageDays);
+    await pluginData.guild.banMember(userId, deleteMessageDays, encodeURIComponent(reason));
   } catch (e) {
     return {
       status: "failed",