Discord only shows you its own character counter when you have fewer than 200 characters left in your message. By the time that red number appears, you are already editing under pressure. This tool shows the count from character one, for every Discord field, so you draft right and publish clean the first time.
Paste your message, bio, status, profile text, server fields, or embed fields into the matching tab in the counter below. The count updates live, the color bar tells you where you stand, and a single click copies the finished text back to your clipboard. No signup. No install. Nothing stored.
RP mode — roleplayers and long-form writers: draft your full post here. If it crosses the limit, the split helper below suggests a clean paragraph-boundary break.
Your text never leaves your browser. Nothing is uploaded or stored.
Every confirmed Discord character limit — 55 fields, cross-verified against Discord's official caps article (updated March 2026), the official Discord API documentation, and community-observed client behavior. Limits marked Discord Official or Discord API Docs come straight from Discord; limits marked Community-verified are consistent client-observed values that Discord has never published.
| Field | Free / Base | Nitro | Source |
|---|---|---|---|
| Message (all channels, DMs, threads, forums) | 2,000 characters | 4,000 characters | Discord Official + API Docs |
| Bio / About Me | 300 characters | 300 characters | Discord Official — raised from 190 in Sept 2026 |
| Custom Status | 128 characters | 128 characters | Community-verified |
| Pronouns Field | 40 characters | 40 characters | Community-verified |
| Username | 2 to 32 characters | 2 to 32 characters | Discord Official + API Docs |
| Display Name | 1 to 32 characters | 1 to 32 characters | Discord Official |
| Server Nickname | 1 to 32 characters | 1 to 32 characters | Discord Official + API Docs |
| User Notes | 500 characters | 500 characters | Discord Official |
| Server Name | 2 to 100 characters | 2 to 100 characters | Discord Official + API Docs |
| Server Description (Community) | 120 characters | 120 characters | Community-verified |
| Welcome Screen Channel Description | 140 characters | 140 characters | Community-verified |
| Channel Name | 1 to 100 characters | 1 to 100 characters | Discord API Docs |
| Channel Topic (text, voice, announcement) | 1,024 characters | 1,024 characters | Discord API Docs |
| Channel Topic (forum & media channels) | 4,096 characters | 4,096 characters | Discord API Docs |
| Voice Channel Status | 500 characters | 500 characters | Discord API Docs |
| Forum Tag Name (max 20 tags) | 1 to 20 characters | 1 to 20 characters | Discord API Docs |
| Category Name | 1 to 100 characters | 1 to 100 characters | Discord API Docs |
| Group DM Name | 1 to 100 characters | 1 to 100 characters | Discord API Docs |
| Role Name | 1 to 100 characters | 1 to 100 characters | Discord Official |
| Forum Post Title (also thread titles) | 100 characters | 100 characters | Discord API Docs |
| Scheduled Event Name | 1 to 100 characters | 1 to 100 characters | Discord API Docs |
| Scheduled Event Description | 1 to 1,000 characters | 1 to 1,000 characters | Discord API Docs |
| Stage Channel Topic | 1 to 120 characters | 1 to 120 characters | Discord API Docs |
| Poll Question | 300 characters | 300 characters | Discord API Docs |
| Poll Answer Text (max 10 answers) | 55 characters | 55 characters | Discord API Docs |
| Custom Emoji Name | 2 to 32 characters | 2 to 32 characters | Community-verified |
| Sticker Name | 2 to 30 characters | 2 to 30 characters | Discord API Docs |
| Sticker Description | 2 to 100 characters | 2 to 100 characters | Discord API Docs |
| Sticker Tags | 200 characters | 200 characters | Discord API Docs |
| Soundboard Sound Name | 2 to 32 characters | 2 to 32 characters | Discord API Docs |
| Vanity URL (Level 3 servers only) | 25 characters | 25 characters | Discord Official |
| Invite Code | 2 to 32 characters | 2 to 32 characters | Community-verified |
| Uploaded Filename (no extension) | 100 characters | 100 characters | Discord Official |
| Uploaded Filename (with extension) | 1,024 characters | 1,024 characters | Discord Official |
| Webhook Name | 1 to 80 characters | 1 to 80 characters | Discord API Docs |
| Webhook Message Content | 2,000 characters | 2,000 characters | Discord API Docs |
| Webhook Thread Name (forum posts) | 100 characters | 100 characters | Discord API Docs |
| Embed Title | 256 characters | 256 characters | Discord API Docs |
| Embed Description | 4,096 characters | 4,096 characters | Discord API Docs |
| Embed Field Name | 256 characters | 256 characters | Discord API Docs |
| Embed Field Value | 1,024 characters | 1,024 characters | Discord API Docs |
| Embed Footer Text | 2,048 characters | 2,048 characters | Discord API Docs |
| Embed Author Name | 256 characters | 256 characters | Discord API Docs |
| Embed URL Fields (excluded from the 6,000 total) | 2,048 characters each | 2,048 characters each | Community-verified |
| Total Embed Payload (all embeds in one message) | 6,000 characters | 6,000 characters | Discord API Docs |
| Embeds per Message | 10 embeds | 10 embeds | Discord API Docs |
| Fields per Embed | 25 fields | 25 fields | Discord API Docs |
| Components V2 Text Display (per message) | 4,000 characters | 4,000 characters | Community-verified |
| Slash Command Name | 1 to 32 characters | 1 to 32 characters | Discord API Docs |
| Slash Command Description | 1 to 100 characters | 1 to 100 characters | Discord API Docs |
| Combined Command Text | 8,000 characters | 8,000 characters | Discord API Docs |
| Modal Text Input | 4,000 characters | 4,000 characters | Discord API Docs |
| Modal Title | 45 characters | 45 characters | Discord API Docs |
| App / Bot Description | 400 characters | 400 characters | Discord API Docs |
| AutoMod Keyword (max 100 per rule) | 60 characters each | 60 characters each | Discord API Docs |
Only one limit on this table changes with a subscription — and only with full Nitro: the message limit doubles from 2,000 to 4,000 characters. Nitro Basic does not even do that. Every other field is identical for free, Nitro Basic, and full Nitro accounts.
Dedicated counters for every Discord field
Discord added a native character counter to the message input, but it only appears when you are within 200 characters of the 2,000-character limit. Before that point, the interface gives you no signal at all about where you stand.
For a casual one-line message, that is fine. For a server announcement, a ruleset, a creative writing post, or a bot embed draft, it means you frequently hit the wall mid-sentence and have to cut content under pressure. For the roleplaying community on Discord, which routinely writes multi-paragraph narrative responses, this is a daily frustration.
The second reason an external counter matters: when you paste text longer than 2,000 characters into the Discord app, it converts the entire content into a .txt file attachment. The message body appears empty. Recipients see a file attachment in the middle of the conversation and have to click, download, and open it to read what you wrote. In practice, most people in an active server channel do not do that. The message is effectively lost. (Messages sent over the API get no such conversion — the request simply fails with an Invalid Form Body error.)
Drafting in this counter before you paste into Discord takes thirty seconds. It eliminates both problems.
This is the most practically important fact on this page, and it is currently buried in or omitted from most Discord character limit guides: only one Discord character limit changes with a full Nitro subscription.
The message limit doubles from 2,000 to 4,000 characters. That is the entire list of character limit changes. Every other field on the platform is identical for free, Nitro Basic, and full Nitro accounts.
There is also a critical distinction between Nitro Basic and full Nitro that almost no guide addresses: Nitro Basic does not increase the message character limit. If longer messages are your primary reason for considering a paid subscription, you need the full Nitro tier. Nitro Basic includes larger file uploads and other perks but keeps the standard 2,000-character message limit.
One more tier of confusion that no competitor guide covers: bots and webhooks never get the 4,000-character limit. Programmatic messages — anything sent by a bot account or an incoming webhook — always cap at 2,000 characters, no matter what subscription the bot owner or server owner holds. The Nitro message increase is a human-account benefit only. There is also an edge case worth knowing if you churn subscriptions: after cancelling Nitro, messages you previously sent at 2,001 to 4,000 characters can no longer be edited without shortening them below 2,000 characters first. The Message tab includes a Bot/Webhook mode that enforces the programmatic 2,000-character cap for exactly this reason.
| Changes with Full Nitro | Stays the Same for Free and Nitro |
|---|---|
| Message limit: 2,000 to 4,000 characters |
|
The About Me bio is the most commonly misunderstood case. Discord users have submitted requests on the official support community for years asking for an expanded bio limit tied to Nitro. In September 2026, Discord raised the limit from 190 to 300 characters for every account type at once — still not as a Nitro perk. A user who pays for Nitro expecting a larger bio than everyone else will be disappointed.
Discord counts characters using Unicode code points. Discord has never published an official counting-method document, but code-point counting matches the behavior of the current clients across every field, and it is what each counter on this page enforces. Understanding the method matters because it changes how emoji, custom emoji, and formatting symbols behave inside your character budget — the number you see here is the number Discord accepts.
Most standard emoji count as one character each in Discord. This is more generous than platforms like Twitter/X, which use UTF-16 encoding and count certain characters as two. A simple smiley face, a thumbs up, or a heart emoji each costs one character of your 2,000-character message budget.
Some emoji sequences use multiple Unicode code points and count as more than one character. Flag emoji and skin-tone modifier variants are the most common examples. A flag emoji is two Regional Indicator letters joined, which counts as two code points. A thumbs-up with a specific skin tone is the base emoji plus a modifier, which counts as two code points. If a heavily emoji-decorated message looks shorter than Discord claims it is, paste it into the Message tab of this counter to get the accurate Discord-equivalent count.
Custom Discord emoji do not count as one character. When you use a custom emoji from a server, Discord stores it in the message content as a raw reference such as <:blob_dance:123456789012345678>. That entire string counts toward your character limit — a custom emoji reference costs a minimum of 22 characters even though it renders as a single image. The Markup overhead panel on the Message tab above counts these references live as you type, so the raw cost of a decorated message is never a surprise.
User mentions, role mentions, and channel mentions work the same way. The @Username you see in chat is backed by a raw reference like <@123456789012345678> — roughly 22 characters — and Discord counts that raw length, not the visible username. Timestamp tags such as <t:1735689600:R> are counted the same way, which is why a message that looks short in the composer can carry a surprisingly large raw cost.
Every Markdown symbol counts toward the character limit. Bold text uses two asterisks on each side (four characters total for the formatting alone). Italic text uses one underscore or asterisk on each side. Strikethrough uses two tildes on each side. Code formatting uses backticks. A message with heavy formatting is effectively shorter than it appears because a portion of the character budget is consumed by invisible-to-the-reader punctuation. The Markdown chars chip on the Message tab above estimates this overhead live as you type.
Each line break in a Discord message counts as one character, and a Windows-style CRLF break counts as two. This is relevant for server rules lists, formatted announcements, and any content where vertical spacing is part of the presentation. One more server-side quirk worth knowing: tab characters inside code blocks are expanded to four spaces each when the message is stored, which is why some messages that show around 1,970 characters in the client still fail the 2,000-character check. Leave a small safety margin when your text contains tabs.
Discord does not shorten URLs in messages or bio fields. A full URL counts at its complete raw length. In the 300-character bio, this matters enormously. A long URL can consume 60 to 80 characters of a 300-character budget. Using a URL shortener inside the bio is one of the few practical ways to reclaim meaningful character space in that field.
Discord serves a wide range of users with very different character counting needs. The tool above is built for all of them, but the section of the page you need depends on who you are.
The roleplaying community is one of Discord's largest long-form writing communities, and the one most directly constrained by the 2,000-character message limit. Multi-paragraph narrative responses, character dialogue, and scene-setting posts frequently hit or exceed the limit. The standard workflow in most RP communities is to draft the post in a text editor, count the characters, find the natural split point, and paste each section as a separate message. This tool is built for exactly that workflow. Set the tab to Message, draft your post, watch the count, and find your clean split before the red indicator appears.
For writers who have full Nitro, switch the toggle to Nitro mode and count against 4,000 characters instead. For those considering Nitro primarily for the higher limit: full Nitro doubles the message limit and may justify the subscription for writers who regularly post at 1,500 to 2,000 characters. Nitro Basic does not include this benefit.
Server admins deal with a different set of character limits than regular users, and most of them are generous compared to the message limit. Channel topics give you 1,024 characters for rules, links, and context. Server names allow up to 100 characters. Role names allow up to 100 characters. The server description shown in community discovery is much tighter at 120 characters and should be treated like ad copy.
The Server tab of this counter handles server name, server description, channel name, category name, channel topic, forum post title, and role name in one place. For community descriptions, treat the 120-character limit the same way you would treat a tweet: what is the one reason someone should join this server, in the fewest words possible.
Bot developers face the most technically complex character counting situation on Discord. Embed limits are completely separate from message limits and are not visible anywhere in the Discord interface. The most common mistake is building an embed where every individual field sits within its own limit, but the combined total exceeds the 6,000-character embed payload cap. Discord's API returns an HTTP 400 "Invalid Form Body" error with no user-visible explanation.
The worked example below illustrates the trap: a bot embed with a 200-character title, a 2,000-character description, three fields each with 500-character values, and a 200-character footer. Title (200) plus description (2,000) plus three fields (1,500) plus footer (200) equals 3,900 total characters. That embed clears the 6,000-character total cap comfortably. Swap in a 2,500-character description and the same layout hits 4,400 characters, still inside. Extend the description to 3,500 and add a fourth field at 1,024 characters, and the total reaches 6,424, exceeding the cap and returning a 400 error even though each individual field is within its own limit.
Critical note for bot developers: Nitro does not extend bot or webhook message limits. Bot accounts always cap at 2,000 characters per message regardless of the sending user's subscription status. Webhooks also cap at 2,000 characters in the content field. The 4,000-character message limit is a user-tier benefit that does not carry through to programmatic sending.
For anyone who occasionally writes a longer-than-usual message, the tool is simple: paste what you drafted, confirm it fits under 2,000 characters, and send. No need to wait for Discord's built-in counter to appear at 200 characters remaining.
The About Me bio limit of 300 characters applies to every Discord account type. Nitro does not change it — and Discord raised the limit from 190 to 300 in September 2026 for all accounts at once. Most users either leave it blank or fill it with a generic quote that communicates nothing. Neither approach uses the 300 characters effectively.
The most practical framework for a 300-character bio covers three things in the fastest possible order:
Checklist for the bio field:
The Message tab of this counter is set to 2,000 characters by default. For the bio, switch to the Bio tab, which counts against the 300-character limit. Paste your draft, edit against the real count, and profile-check against the three-things framework before saving.
Discord does not silently trim your message. It blocks sending until you shorten the text — and when you paste oversized text into the app, it converts the content to a .txt attachment instead. Here are the practical options in order of preference.
Discord sits in the middle of the messaging platform spectrum when it comes to message length. It is far more generous than Twitter/X for public posts and far more restrictive than Reddit or Facebook.
| Platform | Message / Post Limit | Notes |
|---|---|---|
| Discord (Free / Nitro Basic) | 2,000 characters | DMs, channels, threads, forums |
| Discord (Full Nitro) | 4,000 characters | Message only; all other limits unchanged |
| Instagram Caption | 2,200 characters | Truncated in feed after ~125 chars |
| Twitter / X (Free) | 280 characters | Counted in Unicode code points |
| Twitter / X (Premium) | 25,000 characters | Long-form posts only |
| LinkedIn Post | ~3,000 characters | Truncated after ~210 chars in feed |
| Reddit Post | 40,000 characters | Self-posts; comments capped at 10,000 |
| Facebook Post | 63,206 characters | Highest limit of major platforms |
| WhatsApp Status | 700 characters | Story-style; shorter than Discord |
| Slack Message | No enforced cap | UI wraps; effective ~40,000 chars |
| Telegram Message | 4,096 characters | UTF-16 counting |
| Twitter / X DM | 10,000 characters | Much higher than public posts |
The most relevant comparison for Discord users is Telegram, which allows 4,096 characters per message without any subscription. Discord full Nitro matches this at 4,000. Slack has no enforced message character limit, which is a meaningful advantage for teams that need to share long technical content without splitting or linking out. Reddit allows 40,000 characters per self-post and 10,000 per comment, making it far better suited for long-form community content than Discord.
Discord embeds are the structured message format used by bots to deliver formatted content. Every embed field has its own character limit, and an additional total payload cap applies across all embeds attached to a single message. None of these limits are visible in the Discord interface; they are enforced server-side and surface only as a 400 error when violated.
| Embed Field | Character Limit | Key Notes |
|---|---|---|
| Embed Title | 256 characters | Can include a clickable URL. Shown at the top of the embed. |
| Embed Description | 4,096 characters | Largest single field. Supports full Markdown including code blocks and links. |
| Embed Field Name | 256 characters | Up to 25 fields per embed. Shown in bold above the field value. |
| Embed Field Value | 1,024 characters | Can be displayed inline or on a new line. Supports Markdown. |
| Embed Footer Text | 2,048 characters | Appears at the bottom of the embed. Often used for timestamps and attribution. |
| Embed Author Name | 256 characters | Appears above the title with an optional icon and URL. |
| Total Embed Payload | 6,000 characters | Combined text of ALL embeds attached to one message. The most commonly hit limit in production. |
| Embeds per Message | 10 embeds | A message can carry up to 10 embeds — but every embed in the message shares the same 6,000-character budget. |
| Fields per Embed | 25 fields | Each with a 256-char name and 1,024-char value. All count toward the 6,000-char total. |
The 6,000-character trap: A common production error occurs when each individual embed field is within its own limit, but the combined total exceeds 6,000 characters. Discord's API returns an HTTP 400 "Invalid Form Body" error. The fix is to move long content into the description field (which allows 4,096 characters), keep field values short, or send the overflow in a separate message — each message gets its own 6,000-character embed budget. The Embeds tab above includes a live total payload meter that sums all six fields against this cap as you type.
The 10-embed allowance is misleading, and almost every character limit guide gets this wrong: because the 6,000-character cap applies across every embed attached to a message, a message carrying 10 embeds still cannot contain more than 6,000 characters of embed text in total. Discord's official API documentation states it explicitly — the combined sum of characters in all title, description, field name, field value, footer text, and author name fields across all embeds attached to a message must not exceed 6,000.
Nitro does not help here. Embed limits are fixed for all account types and for all bot accounts regardless of the server owner's or the bot's subscription status. Bot message content is always capped at 2,000 characters. The Nitro message increase is a user interface benefit only.
Components V2 — the layout system that is replacing classic embeds for rich bot messages — adds a second hard cap that almost no character limit guide lists: the combined text of all Text Display components in one message cannot exceed 4,000 characters. That budget is separate from both the 2,000-character message content field and the 6,000-character embed payload, which means a fully loaded message can legally carry all three budgets at once. The counting has one documented quirk: Markdown link URLs count toward the 4,000 in full — excluding them is only a pending feature request, not current behavior.
Because the surface is new, almost no counter tool on the web meters this budget yet. The master table above lists it so bot developers can at least find the number; if you build Components V2 messages, draft your text display blocks against 4,000 characters the same way you draft embed fields against 6,000 — before the API returns a 400 error with no user-visible explanation.
Direct answers to the most common Discord character limit questions
Character counters for other platforms and TextCountify’s general text tools