Discord Server Rules Template
Lay out your community's rules so they actually get read. This template gives you a clean, numbered rulebook inside an accent container, with a short note on what happens when the rules are broken — easy to scan, easy to enforce, easy to pin. The six starter rules cover the conduct nearly every server needs; swap in your own, or paste a full rule set from the copy-and-paste rules guide linked below.
📜 Server Rules
Welcome! Being here means you agree to follow these.
1. Be respectful — no harassment, hate speech, or discrimination.
2. Keep it civil — no spam, flooding, or wall-to-wall caps.
3. Use the right channels and stay on topic.
4. No NSFW, gore, or illegal content.
5. No unsolicited advertising or DM spam.
6. Follow staff direction — their word is final.
Breaking the rules may lead to a warning, mute, kick, or ban depending on severity.
Last updated June 2026 • Questions? Ask a moderator.
Copy and paste the Discord Server Rules text
This is the template's text as Discord markdown. Paste it into any channel and the headings, bold text, lists and subtext format exactly as they do in the preview; the card, layout and images come with the full template when you open it in DWEEB. The Discord text formatting guide explains every piece of syntax it uses.
# 📜 Server Rules
Welcome! Being here means you agree to follow these.
**1.** Be respectful — no harassment, hate speech, or discrimination.
**2.** Keep it civil — no spam, flooding, or wall-to-wall caps.
**3.** Use the right channels and stay on topic.
**4.** No NSFW, gore, or illegal content.
**5.** No unsolicited advertising or DM spam.
**6.** Follow staff direction — their word is final.
> Breaking the rules may lead to a warning, mute, kick, or ban depending on severity.
-# Last updated June 2026 • Questions? Ask a moderator.
When to use it
- Pinning the rules in your #rules channel
- Standardizing conduct before members get access
- Refreshing an old rules post into something readable
- Posting rules as a named "Server Rules" sender instead of a personal account
What's inside
Built with Discord's Components V2 layout system — the accent-striped card the Discord embed builder produces in place of a legacy embed:
- Container with accent stripe
- Formatted text
- Separator
Tips
- Keep one rule per line and put the key phrase in bold — it is the part people remember and the part moderators quote.
- Rules change: restore the posted message and update it in place so the pin and every link to it survive.
- Every piece of text, colour, emoji and link is editable — open it in DWEEB and make it yours.
- It posts through any Discord webhook. No bot or application-owned webhook is required for this static message.
- Use the measured, high-fidelity preview to check the layout before you send.
How to use this template
- Open it in DWEEB. Click “Use this template free” to load the template into the visual editor — no sign-up, no install.
- Make it yours. Edit the text, colours, emoji, links and images to match your server. The live preview updates as you type.
- Paste your webhook URL. In Discord, go to Server Settings → Integrations → Webhooks, copy a webhook URL, and paste it into DWEEB. See the full webhook workflow.
- Send it. Review the live preview, then hit Send. You can also save it, share it as a link, schedule it, or export the message JSON.
Template JSON and compatibility
This example contains 2 top-level blocks and 7 components including nested blocks. Its text fields use 545 characters of the editor's message budget. The JSON below is exported from the same template that opens in DWEEB.
Import it through DWEEB's JSON panel, or adapt it for your own application. This is a Components V2 payload with flags: 32768, not a legacy embeds array. When executing a webhook yourself, include with_components=true in the request URL. See the Components V2 JSON reference for delivery requirements.
The layout can be sent through an ordinary incoming webhook. Link buttons open their URLs; they do not run a bot action.
Replace example text, images, links and any server placeholders before posting. Discord does not expand DWEEB placeholders when you send raw JSON from your own code. Review allowed mentions before sending text that names users or roles.
Download Discord Server Rules JSON
View the complete template JSON
{
"username": "Server Rules",
"components": [
{
"type": 17,
"accent_color": 5763719,
"components": [
{
"type": 10,
"content": "# 📜 Server Rules\nWelcome! Being here means you agree to follow these."
},
{
"type": 14,
"divider": true,
"spacing": 2
},
{
"type": 10,
"content": "**1.** Be respectful — no harassment, hate speech, or discrimination.\n**2.** Keep it civil — no spam, flooding, or wall-to-wall caps.\n**3.** Use the right channels and stay on topic.\n**4.** No NSFW, gore, or illegal content.\n**5.** No unsolicited advertising or DM spam.\n**6.** Follow staff direction — their word is final."
},
{
"type": 14,
"divider": true,
"spacing": 1
},
{
"type": 10,
"content": "> Breaking the rules may lead to a warning, mute, kick, or ban depending on severity."
}
]
},
{
"type": 10,
"content": "-# Last updated June 2026 • Questions? Ask a moderator."
}
],
"flags": 32768
}Use this template in a bot
The same message as a discord.js or discord.py bot sends it. Both are generated from the template above by DWEEB's code generator; for a cURL, JavaScript or Python webhook request, open the template with the Code tab.
discord.js code
// Components V2 message — discord.js v14.19 or newer.
// Designed in DWEEB (https://dweeb.faizo.net). Edit the text, then send.
const {
ContainerBuilder,
MessageFlags,
SeparatorBuilder,
SeparatorSpacingSize,
TextDisplayBuilder,
} = require("discord.js");
const container = new ContainerBuilder()
.setAccentColor(0x57f287)
.addTextDisplayComponents(
new TextDisplayBuilder().setContent(
[
"# 📜 Server Rules",
"Welcome! Being here means you agree to follow these.",
].join("\n"),
),
)
.addSeparatorComponents(
new SeparatorBuilder().setDivider(true).setSpacing(SeparatorSpacingSize.Large),
)
.addTextDisplayComponents(
new TextDisplayBuilder().setContent(
[
"**1.** Be respectful — no harassment, hate speech, or discrimination.",
"**2.** Keep it civil — no spam, flooding, or wall-to-wall caps.",
"**3.** Use the right channels and stay on topic.",
"**4.** No NSFW, gore, or illegal content.",
"**5.** No unsolicited advertising or DM spam.",
"**6.** Follow staff direction — their word is final.",
].join("\n"),
),
)
.addSeparatorComponents(
new SeparatorBuilder().setDivider(true).setSpacing(SeparatorSpacingSize.Small),
)
.addTextDisplayComponents(
new TextDisplayBuilder().setContent(
"> Breaking the rules may lead to a warning, mute, kick, or ban depending on severity.",
),
);
const text = new TextDisplayBuilder().setContent(
"-# Last updated June 2026 • Questions? Ask a moderator.",
);
// The design also sets username "Server Rules" — webhook-only options that
// channel.send() has no equivalent for. WebhookClient#send accepts them.
// Send it from any async context: a command handler, an event, a script.
await channel.send({
components: [container, text],
flags: MessageFlags.IsComponentsV2,
});discord.py code
# Components V2 message — discord.py 2.6 or newer.
# Designed in DWEEB (https://dweeb.faizo.net). Edit the text, then send.
import discord
from discord import ui
def build_view() -> ui.LayoutView:
view = ui.LayoutView(timeout=None)
view.add_item(
ui.Container(
ui.TextDisplay(
"# 📜 Server Rules\n"
"Welcome! Being here means you agree to follow these.",
),
ui.Separator(visible=True, spacing=discord.SeparatorSpacing.large),
ui.TextDisplay(
"**1.** Be respectful — no harassment, hate speech, or discrimination.\n"
"**2.** Keep it civil — no spam, flooding, or wall-to-wall caps.\n"
"**3.** Use the right channels and stay on topic.\n"
"**4.** No NSFW, gore, or illegal content.\n"
"**5.** No unsolicited advertising or DM spam.\n"
"**6.** Follow staff direction — their word is final.",
),
ui.Separator(visible=True, spacing=discord.SeparatorSpacing.small),
ui.TextDisplay(
"> Breaking the rules may lead to a warning, mute, kick, or ban depending on severity.",
),
accent_colour=0x57f287,
),
)
view.add_item(
ui.TextDisplay("-# Last updated June 2026 • Questions? Ask a moderator."),
)
return view
# The design also sets username "Server Rules" — webhook-only options that
# channel.send() has no equivalent for. discord.Webhook.send accepts them.
# Send it from any coroutine: a command, an event listener, a task.
await channel.send(view=build_view())Ready to use this template?
Open it in the visual Discord message builder, customize it for your server, and review the result before sending.
Use “Discord Server Rules” →Frequently asked questions
Can I copy and paste these Discord server rules?
Yes. Open the template, copy the text from the rules block, and paste it anywhere — the bold numbers, quote block and subtext are plain Discord markdown, so they render the same in a normal message. For longer rule sets written for gaming, creator and study servers, use the copy-and-paste server rules guide linked on this page.
How many rules should a Discord server have?
Five to ten. Small servers do well with five; large public servers can justify ten plus short add-on blocks for voice chat or age-restricted channels. Past that, members stop reading. Cut any rule you would not actually enforce.
Does this replace Discord's Rules Screening?
No, they work together. Rules Screening is a Community-server feature that shows a short list new members must accept before they can talk. Keep that list to the essentials and keep the full, formatted rules pinned in your #rules channel with this template.
Do I need a bot to use this template?
No. This template contains only layout, text, media and link buttons, so any Discord webhook can post it. No application-owned webhook is required.
How do I use this Server rules template?
Click “Use this template free” to load it into the visual editor, change the text, colours and links to fit your server, then pick a channel or paste your Discord webhook URL and hit Send. You can also share it as a single link or export the message JSON.
Is DWEEB free?
Yes. DWEEB's full visual builder is free and needs no account. Working drafts and browser saves are local by default; optional connected features such as schedules, server libraries, AI, and plugins use the data required to work.