Which languages to choose entirely depend on the type of server you run. For a community server, it is recommended to adjust it to the community’s needs. Usually, the most commonly featured languages outside of English are German, French, Spanish, Turkish and Russian. You can determine your featured language by community analysis, server insights (if your server has them), and demand. What nationalities are represented the most in your server? Which users struggle the most with English upon joining the server and if they’re struggling, what language do they usually communicate in? In addition to that, you can consider starting a survey every time you and your staff feel ready to expand into a new language.
On the other hand, if you make a server for a brand or company, it is recommended to go by your target audience. Introducing features like internationalization needs carefully planned, but steady steps.
If your server was originally English only, it’s not recommended to expand into too many languages at once for a variety of reasons. Agree on one language (preferably the most popular one in your server) and slowly add on from there, if the need presents itself. Once you figure out a pattern and a stable structure on how to approach the expansion, you can add more sections for different languages.
As your server grows, so does Discord. It is vital to keep in mind that your server can get a lot of incoming users who have never really used Discord before- so make sure your server’s design is user-friendly, easily accessible, and has a clear structure. Also, remember that the more languages you feature on your server, the more text-and voice channels will appear for your staff.
It is recommended to hoist the most important text-channels at the top of your server. That may include announcements, server-info, rules, optionally giveaways and more. To ensure global accessibility, translate important parts like the rules and server information in every language you feature alongside your main language.
Additionally, you can add a server guide for easier coordination. Both new users and your staff will benefit from that. It should cover a list of accessible text and voice channels as well as a short but detailed description of each.
Furthermore, try to integrate every additional language in a way that utilizes it to its utmost potential. You can do so in the form of a feedback and suggestion channel in each language’s category. This lets you hear directly from the users that would benefit from that additional language chat the most. Consider having staff that are dedicated to interacting with each section instead of focusing all their attention on the global chat. Having these additional language chats makes it so that your international users don’t feel less validated only because they don’t want to or can’t communicate in the global chat.
You can implement that same line of thinking when organizing server events. Consider alternating between server-wide and international events as demand allows. For the latter, analyze your server’s activity for each region and host it at the time with the most community engagement for those users for the best results. You can apply the same system to the voice channels by creating a few global voice chats and then adding language specific channels. Your staff should only allow one common language to be spoken in the global chats and redirect every other language into their appropriate voice channels.
If you want to feature multiple languages with equal amounts, you can effectively combine multiple Discord servers in one. For the first half, it will be the same as before: Have at least one international general-chat before you split the server into each language. That way every user is able to communicate with the entirety of the server instead of just their language-specific section. Let users choose their language via a reaction or verification with the option to opt-out and change regions. You can summarise the most important aspects in a common text-channel, the text being translated into every featured language.
The simplest way to manage the split server is by having the same channels and categories, but in different languages. This will heavily depend on the type of server you moderate, but recommended channels for every section are the ones you would usually include in a monolingual server. These channels should include things like rules, announcements, general-chat, bot-commands, media, optionally a looking-for-game channel, and more. Take care to ensure you have appropriate translation for each channel.
Moreover, community events can be a lot more diverse. You can host a variety of events for each language as well as let all of them participate in shared events. Take the time to analyze each nation’s activity and also take holidays or national days into account.
*Unless you are using the channel description for verification instructions rather than an automatic greeter message.
If you want to use the remove unverified role method, you will need a bot that can automatically assign a role to a user when they join.
Verification Actions
Once you decide whether you want to add or remove a role, you need to decide how you want that action to take place. Generally, this is done by typing a bot command in a channel, typing a bot command in a DM, or clicking on a reaction. The differences between these methods are shown below.
In order to use the command in channel method, you will need to instruct your users to remove the Unverified role or to add the Verified role to themselves.
Internationalizing your server may mean that your moderation team grows to be larger than expected, so to make it easy for users to contact the appropriate staff you can separate moderators by nicknames, colors, or role hoist.
Nicknames: If you want to have the moderation team equally displayed throughout the server, you can arrange the moderators by nicknames. Simply add the language they moderate at the beginning of their nickname so they are alphabetically sorted below each other. Users will have an easier time recognizing the appropriate moderators, but with a large staff, this might end up looking a little busy. Some moderators tend to change their nicknames frequently and may not be big fans of having the tag in front of their name, either.
Colors: It is advised to have the colors of each moderator role in the same shade with a slight but still visible difference. This helps to differentiate moderators and regular users will be able to tell the difference immediately. Remember that newer users might not check each role and just contact the first seemingly online moderator they see.
Role hoist: If you display only the accompanying moderator role for each language, ensure that you have a common, not displayed role for all moderators so one team is not less validated than the other. Users should definitely be able to contact the appropriate staff and ping the correct moderators to help them out with issues in chat. but, when displaying a lot of teams with many members each, some of them might be pushed off the screen. You run the risk that some moderators that are displayed below the other teams seem less “important and validated” to the community, but the shared staff role should fix that problem easily.
Markdown is also supported in an embed. Here is an image to showcase an example of these properties:
Example image to showcase the elements of an embed
An important thing to note is that embeds also have their limitations, which are set by the API. Here are some of the most important ones you need to know:
An important thing to note is that embeds also have their limitations, which are set by the API. Here are some of the most important ones you need to know:
If you feel like experimenting even further you should take a look at the full list of limitations provided by Discord here.
It’s very important to keep in mind that when you are writing an embed, it should be in JSON format. Some bots even provide an embed visualizer within their dashboards. You can also use this embed visualizer tool which provides visualization for bot and webhook embeds.
While moderating a multilingual server it is crucial to have moderators that are native speakers or at least fluent in each language that you decide to expand to. Having moderators that are native speakers makes it so that they not only understand the textbook definitions of what is being said but understand the cultural contexts that may come with international chats. However, these moderators should also be accomplished and capable with the other responsibilities of being a mod that lie outside of just being fluent.
While community moderators should follow the basic tasks (moderate the chat, be accessible for questions, guide users), things in multilingual servers can be a bit more advanced. Moderators need to identify and address inappropriate behavior towards other cultures in an authoritative, but instructive way. Furthermore, they need to free the chat from toxic behavior and control discussions about sensitive topics.
In addition to that, they have to be open for cultural questions of users who chose a language they are not fluent in yet. Both the user and staff need to work their way around language barriers together. They’ll be required to help users, as well as resolve disputes, often at the same time. For that, they’ll have to rely on their communication skills in order to succeed in resolving both situations and any other issue that may require it. Without good communication skills, users won't understand what you're trying to convey to them, which should be assertive but tolerant.
Moderators can under no circumstances be discriminating towards users of other cultures or beliefs. It is their responsibility to create a civil, welcoming and comfortable environment for all users. While you are always entitled to your own opinion, make sure to keep a neutral output in the public part of the server and try not to let it cloud your judgement.
Managing several moderators from all around the world can turn out to be quite tricky. Organizing meetings and waiting for everyone’s approval for one date may be a real challenge to deal with. Getting the majority of the team on board could take days, especially with the difference in time zones.
One simple solution is to delegate some captains or representative moderators for each team. They will gather feedback, opinions and suggestions from the rest of the staff team and discuss them with the rest of staff during the meeting. That way it’s easier to organize staff meetings, but they can also directly inform the rest of their team who could not make it due to time conflicts. Depending on the size of the staff teams, you can appoint more than one moderator for that position.
When creating more than one staff role, make sure that everyone is comfortable with their position and their responsibilities. Misalignment can lead to misunderstanding later on, and it might create needless tension amongst the staff. Consider appointing one representative in each region that your server is branching out to. That will open the possibility to have regional staff meetings where language and culture specific issues and suggestions can be discussed without the need for an international meeting with the whole team.
While not every moderator will get the chance to get to know every other moderator from different regions in these larger moderation rosters, it is important that the team feels united regardless. Don’t leave it up to one team to tackle an issue- let them know that they can always ask for help from the rest of the staff.
Global Accessibility: Make sure that you have the bots available for every part of your server. That could either mean that you include them in the global section of your server, or you translate the commands and definitions in every language featured.
Moderation: Since not all moderators will be able to understand every single language, using bots turn out to be very helpful for auto-moderation. Inform your fellow moderators about inappropriate words or phrases and ensure that you added them into the bot filter for easier moderation. Banned or filtered words should contain common slurs in not only English, but also in commonly banned words for every language that you offer.
Language Barriers: It may occur that users message the ModMail in poor English or in their native language. Find out the user's nationality and reply with a message in their native language that lets them know their request is being routed to the appropriately fluent mod. To save these messages, simply create an extra text-channel in the ModMail server and let moderators translate important phrases that might come in handy.
It's easy for people to underestimate the impact cultural differences can have. Culture influences values, rules, thought patterns, and perception.
That means that events happening in other countries may be viewed differently in each nation. News and social media don't always portray the truth which lets misinformation spread easily. Make sure to have your staff updated about the current situations so they have it easier to deal with discussions about sensitive topics and trolls. Communication is key and the users of the server will massively benefit from it. While people are entitled to have their own opinion and ask for further information, make sure to let it happen in a calm and civil atmosphere under a moderator’s watch. If you as a moderator find that you’re ill equipped to talk about the topic, you should refrain from publicly voicing your opinion until you’re better informed. Conversely, you may want to refrain from allowing contentious topics like current events or politics to occur in your server at all, which is something you should decide with your moderation team as a whole.
Even though this comparison is important for better understanding of both bots and webhooks, it does not mean you should limit yourself to only picking one or the other. Sometimes, bots and webhooks work their best when working together. It’s not uncommon for bots to use webhooks for logging purposes or to distinguish notable messages with a custom avatar and name for that message. Both tools are essential for a server to function properly and make for a powerful combination.
*Unconfigurable filters, these will catch all instances of the trigger, regardless of whether they’re spammed or a single instance
**Gaius also offers an additional NSFW filter as well as standard image spam filtering
***YAGPDB offers link verification via google, anything flagged as unsafe can be removed
****Giselle combines Fast Messages and Repeated Text into one filter
Anti-Spam is integral to running a large private server, or a public server. Spam, by definition, is irrelevant or unsolicited messages. This covers a wide base of things on Discord, there are multiple types of spam a user can engage in. The common forms are listed in the table above. The most common forms of spam are also very typical of raids, those being Fast Messages and Repeated Text. The nature of spam can vary greatly but the vast majority of instances involve a user or users sending lots of messages with the same contents with the intent of disrupting your server.
There are subsets of this spam that many anti-spam filters will be able to catch. If any of the following: Mentions, Links, Invites, Emoji, and Newline Text are spammed repeatedly in one message or spammed repeatedly across several messages, they will provoke most Repeated Text and Fast Messages filters appropriately. Subset filters are still a good thing for your anti-spam filter to contain as you may wish to punish more or less harshly depending on the spam. Namely, Emoji and Links may warrant separate punishments. Spamming 10 links in a single message is inherently worse than having 10 emoji in a message.
Anti-spam will only act on these things contextually, usually in an X in Y fashion where if a user sends, for example, 10 links in 5 seconds, they will be punished to some degree. This could be 10 links in one message, or 1 link in 10 messages. In this respect, some anti-spam filters can act simultaneously as Fast Messages and Repeated Text filters.
Sometimes, spam may happen too quickly for a bot to catch up. There are rate limits in place to stop bots from harming servers that can prevent deletion of individual messages if those messages are being sent too quickly. This can often happen in raids. As such, Fast Messages filters should prevent offenders from sending messages; this can be done via a mute, kick or ban. If you want to protect your server from raids, please read on to the Anti-Raid section of this article.
Text Filters
Text filters allow you to control the types of words and/or links that people are allowed to put in your server. Different bots will provide various ways to filter these things, keeping your chat nice and clean.
*Defaults to banning ALL links
**YAGPDB offers link verification via google, anything flagged as unsafe can be removed
***Setting a catch-all filter with carl will prevent link-specific spam detection
A text filter is integral to a well moderated server. It’s strongly, strongly recommended you use a bot that can filter text based on a blacklist. A Banned words filter can catch links and invites provided http:// and https:// are added to the word blacklist (for all links) or specific full site URLs to block individual websites. In addition, discord.gg can be added to a blacklist to block ALL Discord invites.
A Banned Words filter is integral to running a public server, especially if it’s a Partnered, Community or Verified server, as this level of auto moderation is highly recommended for the server to adhere to the additional guidelines attached to it. Before configuring a filter, it’s a good idea to work out what is and isn’t ok to say in your server, regardless of context. For example, racial slurs are generally unacceptable in almost all servers, regardless of context. Banned word filters often won’t account for context, with an explicit blacklist. For this reason, it’s also important a robust filter also contains whitelisting options. For example, if you add the slur ‘nig’ to your filter and someone mentions the country ‘Nigeria’ they could get in trouble for using an otherwise acceptable word.
Filter immunity may also be important to your server, as there may be individuals who need to discuss the use of banned words, namely members of a moderation team. There may also be channels that allow the usage of otherwise banned words. For example, a serious channel dedicated to discussion of real world issues may require discussions about slurs or other demeaning language, in this exception channel based Immunity is integral to allowing those conversations.
Link filtering is important to servers where sharing links in ‘general’ chats isn’t allowed, or where there are specific channels for sharing such things. This can allow a server to remove links with an appropriate reprimand without treating a transgression with the same severity as they would a user sending a racial slur.
Whitelisting/Blacklisting and templates for links are also a good idea to have. While many servers will use catch-all filters to make sure links stay in specific channels, some links will always be malicious. As such, being able to filter specific links is a good feature, with preset filters (Like the google filter provided by YAGPDB) coming in very handy for protecting your user base without intricate setup however, it is recommended you do configure a custom filter to ensure specific slurs, words etc. that break the rules of your server, aren’t being said.
Invite filtering is equally important in large or public servers where users will attempt to raid, scam or otherwise assault your server with links with the intention of manipulating your user base to join or where unsolicited self-promotion is potentially fruitful. Filtering allows these invites to be recognized, and dealt with more harshly. Some bots may also allow by-server white/blacklisting allowing you to control which servers are ok to share invites to, and which aren’t. A good example of invite filtering usage would be something like a partners channel, where invites to other, closely linked, servers are shared. These servers should be added to an invite whitelist to prevent their deletion.
Anti-Raid
Raids, as defined earlier in this article, are mass-joins of users (often selfbots) with the intent of damaging your server. There are a few methods available to you in order for you to protect your community from this behavior. One method involves gating your server with verification appropriately, as discussed in DMA 301.You can also supplement or supplant the need for verification by using a bot that can detect and/or prevent damage from raids.
*Unconfigurable, triggers raid prevention based on user joins & damage prevention based on humanly impossible user activity. Will not automatically trigger on the free version of the bot.
Raid detection means a bot can detect the large number of users joining that’s typical of a raid, usually in an X in Y format. This feature is usually chained with Raid Prevention or Damage Prevention to prevent the detected raid from being effective, wherein raiding users will typically spam channels with unsavoury messages.
Raid-user detection is a system designed to detect users who are likely to be participating in a raid independently of the quantity of frequency of new user joins. These systems typically look for users that were created recently or have no profile picture, among other triggers depending on how elaborate the system is.
Raid prevention stops a raid from happening, either by Raid detection or Raid-user detection. These countermeasures stop participants of a raid specifically from harming your server by preventing raiding users from accessing your server in the first place, such as through kicks, bans, or mutes of the users that triggered the detection.
Damage prevention stops raiding users from causing any disruption via spam to your server by closing off certain aspects of it either from all new users, or from everyone. These functions usually prevent messages from being sent or read in public channels that new users will have access to. This differs from Raid Prevention as it doesn’t specifically target or remove new users on the server.
Raid anti-spam is an anti spam system robust enough to prevent raiding users’ messages from disrupting channels via the typical spam found in a raid. For an anti-spam system to fit this dynamic, it should be able to prevent Fast Messages and Repeated Text. This is a subset of Damage Prevention.
Raid cleanup commands are typically mass-message removal commands to clean up channels affected by spam as part of a raid, often aliased to ‘Purge’ or ‘Prune’.It should be noted that Discord features built-in raid and user bot detection, which is rather effective at preventing raids as or before they happen. If you are logging member joins and leaves, you can infer that Discord has taken action against shady accounts if the time difference between the join and the leave times is extremely small (such as between 0-5 seconds). However, you shouldn’t rely solely on these systems if you run a large or public server.
User Filters
Messages aren’t the only way potential evildoers can present unsavoury content to your server. They can also manipulate their Discord username or Nickname to cause trouble. There are a few different ways a username can be abusive and different bots offer different filters to prevent this.
*Gaius can apply same blacklist/whitelist to names as messages or only filter based on items in the blacklist tagged %name
**YAGPDB can use configured word-list filters OR a regex filter
Username filtering is less important than other forms of auto moderation, when choosing which bot(s) to use for your auto moderation needs, this should typically be considered last, since users with unsavory usernames can just be nicknamed in order to hide their actual username.
Making a server internationally available is a great idea and can be a boon to your community’s retention. It can be utilized for both communities and companies alike. But you have to be careful with your approach- Internationalization is a deliberate and complicated process and it should be treated as such. If it’s gone about in the wrong way, left uncompleted or rushed, these international spaces could backfire. It may result in negative feedback, a disappointed community and staff or deserted channels.
Make sure to inform your staff and community about every step you’re about to take, and give them a chance to voice their input. Feedback and suggestions from both your mods and your community will be essential to making sure this is the right fit for your server. Internationalization requires a lot of effort and prioritization in order to properly take care of many factors simultaneously, but if done right, it’s an unparalleled way to enrich your community.
One additional component not included in the table is the effects of implementing a verification gate. The ramifications of a verification gate are difficult to quantify and not easily summarized. Verification gates make it harder for people to join in the conversation of your server, but in exchange help protect your community from trolls, spam bots, those unable to read your server’s language, or other low intent users. This can make administration and moderation of your server much easier. You’ll also see that the percent of people that visit more than 3 channels increases as they explore the server and follow verification instructions, and that percent talked may increase if people need to type a verification command.
However, in exchange you can expect to see server leaves increase. In addition, total engagement on your other channels may grow at a slower pace. User retention will decrease as well. Furthermore, this will complicate the interpretation of your welcome screen metrics, as the welcome screen will need to be used to help people primarily follow the verification process as opposed to visiting many channels in your server. There is also no guarantee that people who send a message after clicking to read the verification instructions successfully verified. In order to measure the efficacy of your verification system, you may need to use a custom solution to measure the proportion of people that pass or fail verification.