Skip to content
Setup

Discord modmail bot: let members message your team by DM

Set up a Discord modmail bot: a DM to the bot becomes a ticket for your team, with categories, questions, canned replies, a block list and a cooldown.

  • 12 min read
  • 7 steps
Contents

When something goes wrong, many members would rather send a direct message than post in a public channel. If that DM lands with a single moderator, things get messy fast: nobody else on the team knows about it, the answer depends on one person, and when they are offline, the member waits. Discord modmail solves this. Members don't message a person, they message the bot, and the whole team sees the request.

In this guide you set up modmail with Lizbot. You will learn when modmail fits better than a ticket panel, how a DM turns into a ticket, how to set categories and questions, how to reply faster with canned replies and how to prevent abuse with blocks and a waiting time. Modmail is included in every plan, the Free plan as well.

Modmail or ticket panel: which fits?

With Lizbot, both routes lead to the same result: a ticket with a category, staff roles, a transcript and a rating. The difference is where the member writes.

Ticket panelModmail
Entry pointButton or dropdown in a channel such as #supportDM to Lizbot
Where the member writesin the ticket channel or threadin their DM with Lizbot
Where the team writesin the ticket channelin the ticket channel, Lizbot sends the reply by DM
Visible to othersno, only the member and the teamno, the member is not even in the channel
Good forapplications, bug reports, questions with screenshotssensitive topics, reports about other members, quick questions

A rule of thumb: if members should get their bearings first and several people are involved in the ticket, use the panel. If the barrier should be low, for example for reports of harassment or questions someone finds awkward, modmail is the better choice. Many servers use both: the panel for standard cases and modmail as a quiet line to the team.

How to build the ticket system with a panel is covered in the guide Set up a ticket system in Discord.

How a DM becomes a ticket

From the member's point of view, a modmail request works like this:

  • The member opens a DM with Lizbot, for example from the member list, and writes their message.
  • If they share several servers with Lizbot that have modmail turned on, they pick the server first.
  • If there are several categories, they choose the right one from a select menu.
  • If the category has questions, the Answer questions button opens a form with up to five questions.
  • Finally Lizbot shows a summary with the first message. Only Open ticket creates the ticket, Cancel sends nothing.

After that the member gets a greeting and can simply keep writing in the DM. Every message ends up as an entry in the ticket channel, and Lizbot confirms the hand-off with a tick. Your team's replies arrive in the same DM.

In the ticket channel your team sees a note that the person wrote by DM and is not in the channel themselves. The answers to the questions are shown right there, as with any ticket.

1. Prepare the ticket system

Modmail builds on the ticket system. Open your server in the dashboard and go to Tickets. In the General tab, turn on Ticket system enabled and set the Ticket log channel and the Staff roles (global).

In the Categories & panels tab you need at least one category. You don't have to post a panel for modmail, the category alone is enough. For each category you choose as usual whether a separate channel or a private thread is created and which support roles are responsible. The Free plan includes up to five categories, Pro and above as many as you like.

2. Turn on modmail

In the Tickets module, switch to the Modmail tab and turn on Modmail active. From now on Lizbot accepts DMs from members of your server as requests.

The same basic rules apply as for any ticket. Max. open tickets per user also counts for modmail, as does automatic closing after inactivity from the General tab. For modmail tickets, Lizbot also sends the warning before automatic closing by DM, so the member actually sees it.

3. Set categories and questions

Under Categories for Modmail you choose which categories can be reached by DM. If you leave the field empty, Lizbot offers all categories. If only one category is enabled, Lizbot skips the choice entirely.

Applications with long forms often work better through the panel. Good modmail categories are, for example:

  • Report a member: with the questions "Who is this about?" and "What happened?"
  • Question for the team: without questions, so getting started is quick
  • Appeal a punishment: with a question about the date and the reason for the punishment

You set the questions in the category itself under Questions when opening: up to five, short or long, optionally as required fields. Keep modmail categories lean. Two good required questions beat five that nobody likes filling in.

4. Greeting and anonymous replies

Under Greeting after opening you write the text the member receives right after opening. If the field stays empty, Lizbot sends a default text. Use the greeting for what members really want to know:

Thanks for your message. Our team usually replies within a few hours, at weekends it can take longer. Feel free to send us screenshots if you have any.

With Reply anonymously as the team, the DM says your server name plus "team" instead of the name of the person replying. This protects your team in sensitive cases, for example when it comes to reports about other members. In the ticket channel and the transcript your team still sees who replied. Without the option, the DM shows the team member's display name together with the server name.

5. Reply in the ticket

Your team simply writes in the ticket channel. Lizbot forwards every message from a team member to the person by DM. So that nothing goes wrong, fixed rules apply:

  • Internal discussion: messages starting with // stay in the channel. Example: // Could someone with ban permissions take this one?
  • Internal notes: /tickets note writes a note that is never sent by DM.
  • Mentions: @everyone, @here and role mentions never trigger anything in either direction.
  • Attachments: Lizbot passes files on as links, at most five per message and 8 MB each.
  • Team only: only messages from team members are forwarded, meaning moderation, team and support roles, no bot messages.

You don't even need to be in Discord for this. In the Ticket inbox in the dashboard you reply straight from your browser. For modmail tickets, that reply also goes to the member by DM. How your team claims tickets, sets priorities and keeps an eye on response times is covered in the guide Organise your support team in the ticket system.

If Lizbot cannot deliver a reply because the person has closed their DMs or blocked Lizbot, a note appears in the ticket channel. That way you know your reply did not arrive.

When your team closes the ticket, the member gets a DM with the reason. The rating works as with any ticket. If the person writes again afterwards, a new request starts. If someone writes via modmail that they are in a very bad place or no longer want to live, the guide A member expresses suicidal thoughts helps.

6. Use canned replies

Many modmail questions repeat themselves: "How do I get the role?", "Why was I timed out?", "When is the next event?". For these, you create reply templates in the Tickets module in the Canned replies tab. Each one has a short Name and a Text. In the text you can use placeholders:

  • {user.mention} and {user.name} for the member
  • {staff.name} for the person replying
  • {ticket.number} for the ticket number
  • {guild.name} for your server

In the ticket channel you insert a canned reply with /tickets reply. The template option suggests matching replies as you type. Lizbot posts the text as a reply in the channel and, for modmail tickets, also sends it by DM. In the ticket inbox you pick the template from the Insert canned response dropdown. It lands in the reply field, and you can still adjust it before sending. Lizbot fills in the placeholders when sending, so also for replies from the inbox.

An example of a canned reply named "received":

Hi {user.name}, thanks for your report. We're looking into it and will get back to you here in ticket #{ticket.number}. Best regards, {staff.name}

Name canned replies after the occasion: "received" or "role-missing" is quicker to find than "Reply 3".

7. Prevent abuse: blocks and waiting time

An open line to the team tempts some people to spam. Lizbot has several layers of protection for this, some of which kick in automatically:

  • Limits against spam: per person, Lizbot forwards at most 10 DMs per minute and accepts at most 3 new requests in 10 minutes.
  • Banned people: anyone banned from your server cannot open modmail. Neither can anyone who is no longer a member.
  • Waiting time after closing: under Waiting time after closing you set how many minutes the same person has to wait after a closed ticket before they can open a new modmail ticket. The default is 10 minutes, possible values are 0 to 1440 minutes, so up to one day. The person sees in the DM when they can write again.
  • Block list: anyone on this list can no longer open modmail on your server through Lizbot and cannot send messages into an open modmail ticket.

There are two ways to block someone. In the ticket channel of a modmail ticket, a team member clicks the Block Modmail button. Or, in the Modmail tab under Block list, you enter the Discord ID and a Reason (only for your team) and click Block. With Lift you remove the block again.

To copy the Discord ID: open your Discord settings via the cog icon and turn on Developer Mode under Advanced. On desktop, right-click the person's name and choose Copy User ID; in the mobile app you find it in the three-dot menu of their profile. Discord has a guide with pictures: Where can I find my User/Server/Message ID?. Every method, including server and message IDs, is explained in our guide how to copy a Discord ID.

When should you block someone? A block is meant for people who deliberately misuse modmail, for example with insults or the same request over and over after a decision was turned down. For an annoyed tone, a clear answer is usually enough. The block only applies to modmail, not to the server itself. How your team handles such decisions consistently is covered in the guide Build a Discord moderation team. Banned members are better off reaching your team through a ban appeal, and how to lift a ban afterwards is covered in Unbanning someone on Discord.

Let members know about modmail

Modmail only helps if your members know about it. One sentence in the server rules, the info channel or the welcome message is enough: "Questions or problems? Send Lizbot a direct message and it reaches the whole team."

Also point out Discord's direct message setting. In a server's privacy settings, every member can allow or block direct messages from other members of that server. Anyone who has blocked them may not receive the team's replies. Lizbot then reports this in the ticket channel.

What applies in each plan

Modmail itself is included in every plan. The limits come from the ticket system:

PlanWhat you get
FreeModmail, up to five ticket categories, canned replies, ratings with stars and comment
ProUnlimited categories, SLA timers for the first reply, ratings with extra questions, one integration, AI summary with 20 per day
StudioAI reply suggestions and automatic categories, up to 5 integrations

You can find an overview on the Modmail page.

Checklist

  • ticket system enabled, log channel and staff roles set
  • at least one category enabled for modmail
  • questions in modmail categories kept short
  • modmail active, your own greeting with reply times entered
  • decided whether your team replies anonymously
  • waiting time after closing set sensibly
  • canned replies created for the most common questions
  • team knows //, /tickets note and /tickets reply
  • members know they can message Lizbot
  • opened a test ticket by DM yourself once

Common mistakes

  • Ticket system not turned on: Modmail active alone is not enough. If the ticket system is off in the General tab, Lizbot opens no tickets and tells the member that modmail is turned off on the server.
  • Internal discussion without `//`: everything else your team writes in the channel goes out by DM. For questions within the team, always use // or /tickets note.
  • Too many required questions: anyone who has to fill in five fields gives up or messages a moderator privately after all.
  • No category enabled or created: then Lizbot tells the member there is no matching category on the server.
  • Waiting time too long: with a full day of waiting time, a member cannot follow up after a ticket was closed by mistake. For most servers the default 10 minutes are enough.
  • Lizbot lacks permissions in the Discord category: then no ticket channel can be created and opening fails.

FAQ

Is the modmail bot free?

Yes. Modmail is included in every plan, the Free plan as well, with up to five ticket categories. More categories and SLA timers come with Pro, AI features with the Studio plan.

Can the member see the ticket channel?

No. The member is not in the ticket channel. They only write in their DM with Lizbot, the messages appear in the channel, and your team's replies come back by DM.

How do I write something in the ticket that the member won't see?

Start the message with // or use /tickets note for an internal note. Both stay with the team and are never sent by DM.

What happens if a member has several open modmail tickets?

Then Lizbot asks with every new DM which ticket the message belongs to, for example when someone is writing on two servers at the same time. It is only forwarded after they choose.

Can I block someone from modmail only?

Yes. With the Block Modmail button in the ticket or via the block list in the Modmail tab, you block a person from modmail only. They remain a member of your server and can keep chatting there.

Do canned replies work with modmail too?

Yes. Whether with /tickets reply in the ticket channel or via the template picker in the ticket inbox: Lizbot fills in the placeholders, and for modmail tickets the reply goes to the member by DM.

Matching Lizbot features

More guides

Matching toolChannel generatorPlan categories and channels for your server with suggestions for each server type and copy the structure as a list. Free in your browser, no sign-up.

Let Liz handle it for you

Invite Lizbot, set it up in the dashboard, done. The Free plan stays free.

Rather ask first? In the support Discord