Markdown Arrows: Symbols, Unicode & HTML Entity Codes

Copy-paste arrow characters, HTML entities, and ASCII alternatives for Markdown

Quick Answer

Markdown has no built-in arrow syntax. There are three ways to get arrows into your documents:

MethodSyntaxResultWorks On
UnicodePaste → directly→Everywhere
HTML Entity→→GitHub, GitLab, VS Code, MDViewer
ASCII-->-->Everywhere (literal text)

Unicode is the most reliable — the arrow character is plain text and renders on every platform. HTML entities are a clean alternative for platforms that support inline HTML. ASCII arrows are human-readable in source but look less polished when rendered.

Copy-Paste Arrow Table

Click any arrow to copy it. The Unicode column gives you the character to paste directly, the HTML Entity column is for platforms that render inline HTML, and ASCII is for plain-text fallbacks.

DirectionArrowUnicodeHTML EntityASCII
Right→→ U+2192→-->
Left←← U+2190&larr;<--
Up↑↑ U+2191&uarr;^
Down↓↓ U+2193&darr;v
Left-Right↔↔ U+2194&harr;<-->
Double Right⇒⇒ U+21D2&rArr;==>
Double Left⇐⇐ U+21D0&lArr;<==
Double Both⇔⇔ U+21D4&hArr;<==>
Up-Right↗↗ U+2197&#8599;—
Down-Right↘↘ U+2198&#8600;—
Triangle Right▶▶ U+25B6&#9654;—
Triangle Left◀◀ U+25C0&#9664;—

Method 1: Unicode Characters

The simplest approach: paste the arrow character directly into your Markdown. Unicode arrows are plain text, so they work on every platform, in every editor, and survive copy-paste between apps.

Click File → Export → PDF

Data flows from the API ⇒ the cache ⇒ the client.

Click **File** → **Export** → **PDF**

Data flows from the API ⇒ the cache ⇒ the client.

On macOS, press Control + Command + Space to open the emoji picker and search for “arrow”. On Windows, press Win + . (period). You can also copy from the table above.

Method 2: HTML Entities

HTML entities use a named or numeric code that the renderer converts to the arrow character. They keep your source readable and avoid encoding issues with some editors.

Input → Processing → Output

Go back ← or forward →

Input &rarr; Processing &rarr; Output

Go back &larr; or forward &rarr;

HTML entities work on GitHub, GitLab, VS Code preview, Obsidian, and MDViewer. They do not work in Slack or Discord, which strip HTML tags and entities.

Method 3: ASCII Arrows

ASCII arrows are typed from regular keyboard characters. They are the most portable option and keep your Markdown source readable without special characters, but they render as literal text rather than arrow symbols.

Request --> Server --> Response

A <==> B (bidirectional)

Request --> Server --> Response

A <==> B (bidirectional)

ASCII arrows are a good choice for plain-text README files, commit messages, and code comments where special characters might cause issues.

Arrows in Different Contexts

In tables

Unicode arrows work inside Markdown table cells. HTML entities also work where inline HTML is supported.

StepAction
1User clicks Submit →
2→ Server validates input
3→ Database stores record
| Step | Action |
|------|--------|
| 1 | User clicks **Submit** → |
| 2 | → Server validates input |
| 3 | → Database stores record |

In process flows

Arrows make text-based flowcharts readable without Mermaid or diagram tools.

Deployment Pipeline

Code → Build → Test → Stage → Production

                    ↓ (on failure)

                  Rollback

**Deployment Pipeline**

Code → Build → Test → Stage → Production
                    ↓ (on failure)
                  Rollback

In lists

Arrows work in bullet points and numbered lists, useful for step-by-step instructions.

  1. Open Settings → General
  2. Scroll down → Transfer or Reset
  3. Tap Reset → Reset All Settings
1. Open **Settings** → **General**
2. Scroll down → **Transfer or Reset**
3. Tap **Reset** → **Reset All Settings**

Platform Support

PlatformUnicodeHTML EntitiesASCII
GitHub✅ Yes✅ Yes✅ Literal text
GitLab✅ Yes✅ Yes✅ Literal text
VS Code✅ Yes✅ Yes✅ Literal text
Obsidian✅ Yes✅ Yes✅ Literal text
Slack✅ Yes❌ No✅ Literal text
Discord✅ Yes❌ No✅ Literal text
MDViewer✅ Yes✅ Yes✅ Literal text

Unicode arrows are the safest choice — they work on every platform. HTML entities are a reliable alternative everywhere except Slack and Discord, which strip inline HTML. ASCII arrows show as literal text on all platforms, which may be exactly what you want.

FAQ

How do I add an arrow in Markdown?

Markdown has no arrow syntax. You have three options: paste a Unicode arrow character directly (→, ←, ↑, ↓), use an HTML entity (&rarr;, &larr;, &uarr;, &darr;), or type ASCII arrow art (-->, <--, ^, v). Unicode works everywhere because it is plain text. HTML entities work on platforms that allow inline HTML. ASCII arrows are the most portable but look less polished.

What is the Unicode character for a right arrow?

The most common right arrow is → (U+2192, HTML entity &rarr;). Other right arrows include ▶ (U+25B6, filled triangle), ⇒ (U+21D2, double arrow), ➜ (U+279C, heavy arrow), and ➡ (U+27A1, right arrow emoji). For Markdown, paste the character directly or use the HTML entity &rarr;.

Do arrow HTML entities work on GitHub?

Yes. GitHub renders HTML entities like &rarr; (→), &larr; (←), &uarr; (↑), and &darr; (↓) in README files, issues, and pull requests. Unicode arrow characters also work. ASCII arrows like --> render as literal text, not as rendered arrows.

Preview Your Markdown with MDViewer

MDViewer is a native macOS app for reading and previewing Markdown files. Double-click any .md file in Finder and see it rendered instantly — arrows, tables, code blocks, and more. Lite is free; Pro adds editing, Git history, and PDF export.

Download MDViewer

Requires macOS 13.0 or later. Intel and Apple Silicon.