To write a paragraph in Markdown, just type your text, and to start a new paragraph, leave one blank line between the two blocks. You do not need any special marker. A paragraph is one or more lines of text separated from other content by a blank line. This is a core Markdown structure and is consistent across CommonMark, GFM, and most Markdown renderers.
Markdown paragraph syntax reference
| Goal | Syntax |
|---|---|
| One paragraph | Just write the text. |
| Two paragraphs | Text, blank line, then more text |
| Do not do this | Indent the first line with spaces or a tab |
Markdown paragraphs key facts
- A blank line between blocks of text is what separates one paragraph from the next, and no special marker is needed.
- A single newline inside a paragraph is a soft break, which most parsers render as a space that joins the lines.
- Four or more leading spaces, or one tab, at the start of a line create an indented code block, not a paragraph.
- Extra blank lines between paragraphs do not add extra space, because spacing is controlled by CSS in the rendered output.
- Each paragraph compiles to a single HTML
<p>element, with soft-wrapped source lines kept inside it. - To force a line break inside a paragraph, end a line with two trailing spaces or a backslash.
Use blank lines to express document structure
A blank line separates paragraphs. Pressing Enter once usually creates a soft line break in the source, which most renderers treat as a space or a configurable line break. Do not add manual line breaks merely to match the width of an editor window.
For a deliberate new line inside the same paragraph, use a hard line break. For content that belongs inside a list or blockquote, keep the required marker or indentation on continuation lines. Clear paragraph boundaries make the raw file easier to edit and reduce surprising output across renderers.
Basic syntax
To write a paragraph, type your text. To start a new paragraph, leave one blank line between the two blocks.
Markdown
This is the first paragraph. It can run across several lines in
the source file and still render as one paragraph.
This is the second paragraph, separated by a blank line.
Rendered output
This is the first paragraph. It can run across several lines in the source file and still render as one paragraph.
This is the second paragraph, separated by a blank line.
HTML output
<p>This is the first paragraph. It can run across several lines in
the source file and still render as one paragraph.</p>
<p>This is the second paragraph, separated by a blank line.</p>
A single newline in the source does not start a new paragraph. Most parsers treat it as a soft break and join the lines with a space in the output. Only a blank line creates a new paragraph.
Do not indent paragraphs
Do not indent the first line of a paragraph with spaces or tabs. In Markdown, four or more leading spaces (or one tab) signal an indented code block, not a paragraph.
Markdown
This line is indented four spaces, so it becomes a code block.
This line is a normal paragraph.
Rendered output
This line is indented four spaces, so it becomes a code block.
This line is a normal paragraph.
If your text renders in a monospace box when you did not expect it, check for leading spaces or tabs. Keep paragraph text flush against the left margin.
Line breaks inside a paragraph
Wrapping your source text across multiple lines does not add line breaks to the output. To force a visible line break within a single paragraph, end a line with two trailing spaces or a backslash.
Markdown
Roses are red
Violets are blue
Rendered output
Roses are red Violets are blue
The two source lines above collapse into one line in most renderers, because a single newline is a soft break. To keep the lines separate without starting a new paragraph, see line breaks in Markdown.
Blank lines and spacing
Extra blank lines between paragraphs do not add extra vertical space. Two paragraphs separated by one blank line and by five blank lines produce the same output.
Markdown
First paragraph.
Second paragraph.
Rendered output
First paragraph.
Second paragraph.
Spacing between rendered paragraphs is controlled by CSS, not by the number of blank lines in the source. Use a single blank line to keep source files clean.
Flavor differences
Paragraphs are one of Markdown's most consistent elements. Blank lines separate paragraphs across the major specifications, while indentation can change text into code or nested content depending on context.
| Flavor | Paragraph support | Notes |
|---|---|---|
| CommonMark | Yes | Blank line separates paragraphs. Single newline is a soft break. Four-space indent is a code block. |
| GitHub Flavored Markdown (GFM) | Yes | Superset of CommonMark, identical behavior. |
| MultiMarkdown | Yes | Same blank-line rule. |
| Markdown Extra | Yes | Same blank-line rule. |
| Pandoc | Yes | Same behavior. A single newline is a space unless the hard_line_breaks extension is enabled. |
The one behavior that varies is how a single newline inside a paragraph is treated. By default all five flavors render it as a space (a soft break). Some tools and Pandoc extensions can be configured to treat every newline as a hard line break, which changes the output. That is a configuration choice rather than a difference in the core paragraph rule.
Other platforms (Slack, Discord, chat tools)
Chat tools handle paragraph spacing differently from document renderers:
- Slack and Discord: a single Enter (newline) creates a visible line break inside the message, so they behave as if
hard_line_breaksis always on. A blank line adds a larger gap. - Reddit and most static site generators: follow the standard blank-line rule, where a single newline is a soft break.
For the full comparison of how flavors differ across all elements, see Markdown flavors.
How Markdific renders it
Markdific renders text separated by blank lines as distinct paragraph blocks, following the standard blank-line rule. A single newline inside a paragraph is rendered as a soft break, joining the lines, unless a hard line break is used.
Try it in the Markdific online editor.
Common mistakes and gotchas
- Expecting single newlines to split paragraphs. One newline is a soft break and joins lines with a space. Use a blank line to start a new paragraph.
- Indenting the first line. Four or more leading spaces or a tab turns your text into a code block. Keep paragraphs flush left.
- Relying on multiple blank lines for spacing. Extra blank lines collapse to a single paragraph break. Control spacing with CSS.
- Trailing whitespace surprises. Two trailing spaces at the end of a line create a hard break you may not have intended, which can look like a broken paragraph.
- Mixing tabs and spaces. A stray tab can trigger a code block. Be consistent and avoid leading tabs in prose.
Best practices
- Separate every paragraph with exactly one blank line.
- Keep paragraph text flush against the left margin with no leading indentation.
- Let the renderer and CSS handle spacing rather than padding your source with blank lines.
- If you want a line break inside a paragraph, use an explicit hard break rather than relying on source line wrapping.
- Keep source lines readable. Whether you wrap at a fixed width or write one long line per paragraph, both render the same, so pick one style and stay consistent.
HTML equivalent
Each Markdown paragraph compiles to a single HTML <p> element. Soft-wrapped source lines stay inside the same <p>.
Markdown
A short paragraph.
Another paragraph.
HTML output
<p>A short paragraph.</p>
<p>Another paragraph.</p>
FAQ
How do you write a paragraph in Markdown? Just type your text. To start a new paragraph, leave one blank line between blocks of text. No special marker is needed.
Why are my two lines showing up as one paragraph? A single newline is a soft break, so most parsers join the lines with a space. Add a blank line between them to make two paragraphs, or use a hard line break to keep them on separate lines.
How do you add a blank line or space between paragraphs? Separate paragraphs with one blank line. Adding more blank lines does not increase the gap, because spacing is controlled by CSS in the rendered output.
Why is my paragraph rendering as a code block? It is probably indented. Four or more leading spaces or a tab at the start of a line creates an indented code block. Remove the indentation.
Does the number of blank lines between paragraphs matter? No. One blank line and several blank lines produce the same result. A single blank line keeps the source clean.
What HTML does a Markdown paragraph produce?
A <p> element wrapping the paragraph text, with soft-wrapped source lines kept inside the same element.
How do I force a line break inside a paragraph? End the line with two trailing spaces or a backslash. See the line breaks page for the full detail.
How do you indent a paragraph in Markdown? You cannot indent the first line with spaces, because four or more leading spaces create a code block. For a visual indent, use CSS where you control the styles, or a blockquote if a quoted look fits. Prose paragraphs should stay flush left.
Do you need a blank line between a paragraph and a heading or list? Yes, in most parsers. A blank line before a heading, list, or code block ensures the new block starts cleanly. Without it, some parsers fold the following line into the paragraph or fail to start the block.
Does it matter if I hard-wrap paragraph lines in the source? No. Whether you write one long line per paragraph or wrap the source at a fixed width, the output is the same, because single newlines are soft breaks that join with a space. Pick one style and stay consistent.
How do you write a paragraph inside a list item or blockquote?
Indent the continuation text to line up under the item, and separate it with a blank line. Inside a blockquote, prefix the blank line and the next paragraph with the > marker so both stay in the quote.
Sources and compatibility references
Use these primary references for syntax rules. Renderer behaviour can still vary by version and configuration, so preview important documents in their final destination.
Related pages
- Markdown documentation hub
- Line breaks in Markdown
- Headings in Markdown
- Emphasis: bold and italic
- Code: inline and blocks
- Markdown flavors compared
