Skip to content

Instantly share code, notes, and snippets.

@Klinton017
Last active September 8, 2026 09:20
Show Gist options
  • Select an option

  • Save Klinton017/d642d302dbaa3d35d8725c92e7b73718 to your computer and use it in GitHub Desktop.

Select an option

Save Klinton017/d642d302dbaa3d35d8725c92e7b73718 to your computer and use it in GitHub Desktop.
Discord Markdown Text 101 Guide

DISCORD MARKDOWN TEXT 101

(Last updated 12/01/25)


Want to spice up your Discord messages with some flavour and personality, well then you have found the right place.

Discord uses something called Markdown text, a simple yet powerful text formatting system, that can help make your sentences pop. All you have to do is just put a few characters in front of text, and voila a unique sentence is created


This guide contains the following:



TEXT FORMATTING


Output Syntax
Italics *Italics* OR _Italics_
Underline italics __*Underline italics*__
Bold **Bold**
Underline Bold __**Underline Bold**__
Bold Italics ***Bold italics***
Underline bold italics __***Underline bold italics***__
Underline __Underline__
Strikethrough ~~Strikethrough~~


ORGANIZATIONAL TEXT FORMATTING


HEADERS

To create a header you just need to include a specific number of the hash/pound sign character (#). Use (#) for a big header, (##) for a smaller header, or (###) for an even smaller header as the first character(s) in a new line to make a header. Here is an example of what each header type looks like.

# Big Header

## Smaller Header

### Even Smaller Header
Discord_Header_Result

SUBTEXT

Like Headers, you can add subtext to any chat message. To do so, add a (-#) before the text you want to appear in the subtext. Don’t forget the space after # before your message. For example:

-# This is subtext

Discord_Subtext_Result

MASKED LINKS

You can use masked links to make text a clickable or pressable hyperlink. To do so, you need to include the text you want displayed in brackets and then the URL in parentheses. For example:

[This is Google]\(https://google.com/)

Discord_Masked_Link_Result

LISTS

You can create a bulleted list using either (-) or (*) in the beginning of each line. For example:

- list of stuff

- and things
  
* and more things
Discord_List_Result

You can also indent lists by leaving two spaces before the (-)/(*) Symbols:

- This is another list
  
  * of stuff
    
  - and things
Discord_Indented_List_Result

CODE BLOCKS

You can make your own code blocks by wrapping your text in backticks (`).

Discord_One_Line_Code_Block_Result

If you want to create a multi-line code block, you can do so by wrapping your text in (```), like this beautifully written haiku.

Discord_Multiple_Line_Code_Block

SYNTAX HIGHLIGHTING

If you really want to spruce up your code blocks, you can denote a specific language for syntax highlighting, by typing the name of the language you want the code block to expect right after the first three backticks beginning your code block. For example:

```fix

klinton isn't my real name

```

Discord_Fix_Result

There are many different languages in place of Markdown that Discord's syntax highlighting support. Each different language has its own approach to highlight-able syntax. Note: you won't be able to view syntax highlighting on the Mobile app.


asciidoc

Discord_asciidoc_Result

autohotkey

Discord_autohotkey_Result

bash

Discord_bash_Result

cofeescript

Discord_coffeescript_Result

cpp (C++)

Discord_cpp_Result

cs (C#)

Discord_cs_Result

css

Discord_css_Result

diff

Discord_diff_Result

fix

Discord_fix_Result (2)

glsl

Discord_glsl_Result

ini

Discord_ini_Result

json

Discord_json_Result

md(markdown)

Discord_md_Result

ml

Discord_ml_Result

prolog

Discord_prolog_Result

ps

Discord_ps_Result

py

Discord_py_Result

tex

Discord_tex_Result

xl

Discord_xl_Result

xml

Discord_xml_Result

yaml

Discord_yaml_Result

BLOCK QUOTES

Another option is using block quotes. To use a block quote, you just need to put (>) at the beginning of a line of text to create a single block quote. For example:

> Bubblegum Ice Cream

Blueberry Ice Cream

Strawberry Ice Cream
Discord_Single_Line_Block_Quote_Result

If you want to add multiple lines to a single block quote, just add (>>>) before the first line. For example:

>>> Bubblegum Ice Cream

Blueberry Ice Cream

Strawberry Ice Cream
Discord_Multiple_Line_Block_Quote_Result

SPOILER TAGS

You can manually tag spoilers by using the syntax (||) around your text or by typing /spoiler before your message. This is also negated by a code block.For example:

Don't click on the grey box below:

||SPOILER||
Discord_Spoiler_Tag_Result

TIMESTAMPS

Timestamps are a very useful feature, they allow you to turn a specific time or date into a link that reflects correctly accross all timezones.

Additionally, you can use timestamps to set countdowns or reminders. For example:

<t:1764690300:R>

Discord_timestamp_reminder_Result

You can also display full date and time, just the date, just the time, or a short date, whichever fits your message. For Example:

<t:1764690300:F>

Discord_timestamp_full_Result

You can use the website below to generate a timestamp for you to post in your server:

HammerTime



DISCORD BOT/APP SYNTAX

Unlike users, bots cannot just mention roles, users, channels, etc.

They must use a special syntax with IDs to identify and mention any given roles and/or something else

Below, you will find all of the syntaxes that I could find:


PING USER

To ping a user, type in a smaller than(<) symbol followed by an @ symbol, the user ID of the user and a greater than(>) symbol. For example:

<@{Copy User ID}>

Discord_pinguser_Result

PING USER NICKNAME

To ping a user by their server nickname, type in a smaller than(<) symbol followed by an at (@) symbol, an exclamation mark (!), the user ID of the user and a greater than(>) symbol. For example:

<@!{Copy User ID}>

Discord_pingusernickname_Result

PING CHANNEL

To ping a channel on your server, type in a smaller than(<) symbol followed by a hash/pound (#) symbol, an exclamation mark (!), the ID of the channel and a greater than(>) symbol. For example:

<#{Copy Channel ID}>

Discord_pingchannel_Result

PING ROLE

To ping a role on your server, type in a smaller than(<) symbol followed by an at (@) symbol, an ampersand (&), the ID of the role and a greater than(>) symbol. For example:

<@&{Copy Role ID}>

Discord_pingrole_Result

PING CHANNELS AND ROLES FEATURE

The channels and roles feature got added alongside the Discord Server Onboarding feature, which allows server owners to add reaction roles, without adding an external app/bot to do it.

Bots/Apps can also mention this features, just like it does with channels, etc.

For example:

<id:customize>

Discord_pingchannelsandroles_Result

USE EMOJIS

To use emojis you need the formatted version of the emoji which looks like <:emoji\_name:emoji\_id>

To get it, type \:YourEmoji: into any channel within your server to get the formatted version

OR

Just type in your emoji, and add a (\) in front of it before sending



This is the end ˶^•ﻌ•^˵

Now you're a Discord Markdown Expert. Get out there and highlight your statements!


If you need help with any part of the Markdown or spot an issue, feel free to leave a comment and I’ll get back to you as soon as I can.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment