Copy the arrow symbol you need below, or grab the exact HTML entity, CSS escape code, and Unicode value for your project. The Quick Reference table covers the four most-used formats. If you are injecting arrows via CSS, note that the content property silently consumes the space after a hex escape sequence, which breaks UI alignment in ways that are surprisingly hard to diagnose.

Arrow Symbol Quick Reference

  • Right Arrow (→): Hex → | Dec → | CSS \2192
  • Left Arrow (←): Hex ← | Dec ← | CSS \2190
  • Up Arrow (↑): Hex ↑ | Dec ↑ | CSS \2191
  • Down Arrow (↓): Hex ↓ | Dec ↓ | CSS \2193

Popular Arrow Symbols

These are the most frequently used arrows across the web, safe to use in email subjects, documentation, and UI components.

[copyicon=➔ text=Arrow Right] [copyicon=← text=Arrow Left] [copyicon=↑ text=Arrow Up] [copyicon=↓ text=Arrow Down] [copyicon=↔ text=Left-Right Arrow] [copyicon=➤ text=Triangle Arrow] [copyicon=⇒ text=Double Arrow] [copyicon=↻ text=Refresh Arrow]

Right Arrows

Right arrows indicate movement, next steps, or sub-menu expansion. The standard right arrow works in every environment; use heavy variants for stronger visual weight.

[copyicon=➔ text=Arrow Right] [copyicon=➜ text=Arrow Right with Bold Head] [copyicon=➝ text=Thin Arrow Right] [copyicon=➞ text=Curved Arrow Right] [copyicon=🠖 text=Black Rightwards Arrow] [copyicon=☞ text=Pointing Hand Right] [copyicon=➥ text=Arrow Right with Hook] [copyicon=➤ text=Triangle Arrow Right] [copyicon=⇒ text=Double Arrow Right] [copyicon=⇾ text=Filled Arrow Right] [copyicon=⟶ text=Long Thin Arrow Right] [copyicon=⟼ text=Arrow Right with Bar]

Left Arrows

Left arrows represent back buttons, return actions, and carousel navigation.

[copyicon=← text=Left Arrow] [copyicon=🠔 text=Black Leftwards Arrow] [copyicon=☚ text=Pointing Hand Left] [copyicon=↞ text=Thin Arrow Left] [copyicon=⇐ text=Double Arrow Left] [copyicon=⟵ text=Long Arrow Left] [copyicon=↢ text=Arrow Left with Tail]

Up and Down Arrows

Use these for scroll-to-top buttons, accordions, download indicators, and sortable table headers.

[copyicon=↑ text=Upwards Arrow] [copyicon=↓ text=Downwards Arrow] [copyicon=▲ text=Upwards Triangle] [copyicon=▼ text=Downwards Triangle] [copyicon=⇑ text=Double Upwards Arrow] [copyicon=⇓ text=Double Downwards Arrow] [copyicon=↟ text=Upwards Wavy Arrow] [copyicon=↡ text=Wavy Downwards Arrow]

Diagonal and Curved Arrows

Diagonal and curved arrows work well in diagrams, process flows, and refresh indicators.

[copyicon=⇗ text=Upper Right Diagonal] [copyicon=⇘ text=Lower Right Diagonal] [copyicon=↺ text=Counter-Clockwise Open Circle] [copyicon=↻ text=Clockwise Open Circle] [copyicon=↷ text=Curved Arrow Down] [copyicon=↶ text=Curved Arrow Up] [copyicon=↯ text=Lightning Arrow]

How to Implement Unicode Arrows in Code

Copying symbols is fast, but writing robust code requires the correct character encodings. Browsers interpret these formats differently depending on where you place them. You need to know exactly which syntax fits your current stack.

The CSS Content Property Trailing Space Gotcha

Injecting arrows via CSS is standard practice for link hover states. You define the symbol inside the content property using its escaped hexadecimal value.

However, CSS has a well-known parsing quirk. If you write content: '\2192 ', the browser assumes the trailing space is part of the hex sequence termination and completely ignores it. Your text will crash directly into your arrow symbol.

To fix this space consumption issue, you must either add a second space or use the exact Unicode value for a non-breaking space. Writing content: '\2192\00a0' forces the browser to render the arrow followed by a strict non-breaking space. This keeps your UI spacing mathematically perfect.

HTML Entities: Named, Decimal, and Hex Formats

Writing arrows directly inside your HTML structure requires entity codes to prevent rendering bugs in older environments. You have three distinct options here.

Named entities like → are incredibly easy to read and memorize. Decimal formats like → provide maximum compatibility across legacy email clients. Hexadecimal formats like → align perfectly with the codes you use in your CSS files.

When building complex navigation structures, you often rely on CSS pseudo-elements and the content property to inject these symbols without adding empty HTML tags. Keeping your HTML hex codes and CSS hex codes visually similar makes debugging much faster.

Markdown and CLI ASCII Arrows

Terminal environments and Markdown files parse characters differently than browsers. In standard Markdown, you can safely paste the raw Unicode symbol directly into your .md document.

Many modern code renderers automatically convert ASCII combinations like -> into a proper right arrow and => into a double right arrow. This ligature feature depends entirely on the font your IDE or documentation platform uses. If you want guaranteed rendering in a CLI tool, stick to standard ASCII combinations rather than forcing Unicode characters that might render as empty boxes.

Accessibility (A11Y) for Decorative Arrows

Screen readers do not ignore Unicode symbols by default. They literally read the official Unicode designation out loud to the user. Hearing 'rightwards arrow' in the middle of a sentence completely destroys the auditory user experience.

When to Use aria-hidden='true'

Most UI arrows act as pure visual decoration. They indicate dropdowns, external links, or list items. In these scenarios, you must hide the symbol from assistive technologies.

Wrap your arrow in a span tag and apply the aria-hidden='true' attribute. For example: <span aria-hidden='true'>&#8594;</span>. This setup tells the screen reader to skip the symbol entirely, allowing the user to consume the actual text content without interruption.

Providing Context with aria-label

Sometimes the arrow acts as a standalone interactive element, like a pagination button. If there is no text next to the arrow, hiding it creates a completely inaccessible button.

In this case, you drop the aria-hidden attribute. Instead, you apply an aria-label directly to the parent button element. A setup like <button aria-label='Next Page'>&#8594;</button> ensures visual users see the arrow while visually impaired users hear the exact function of the button.

UI Patterns: Choosing the Right Arrow

Different user interfaces demand specific visual weights and arrow types. Using a massive, heavy arrow for a subtle breadcrumb navigation makes your design look clumsy and outdated.

Breadcrumbs and Pagination

Breadcrumbs require minimal visual footprint. Use the standard right arrow &#8594; or the single right-pointing angle quotation mark &#8250; (›). These symbols create a clear path without overpowering the actual page titles.

Pagination elements need slightly more presence. The standard left and right arrows work perfectly here. You can also pair them with a clean CSS hover effect that translates the arrow slightly along the X-axis for better interaction feedback. The same approach works for CSS underline animations on link states.

Dropdown Chevrons and Step Indicators

Dropdown menus almost universally use the downward pointing angle or chevron. The Unicode geometric shape &#9662; (▾) is the industry standard for this UI pattern. It communicates expansion instantly.

Step indicators in checkout flows benefit from the heavy right arrow &#10140; (➔). This thicker symbol drives the user's eye forward and creates a sense of momentum through the required forms.

Performance: Unicode vs. SVG vs. Icon Fonts

Loading an entire icon font library just to display three arrows is a massive performance failure. Modern performance standards demand zero-dependency solutions whenever possible.

Unicode symbols cost exactly zero extra bytes. They render instantly with the system font, eliminating layout shifts and blocking requests. SVG icons offer precise visual control and scaling but require you to embed coordinate data into your DOM. Unicode wins easily for simple UI text elements, while SVG dominates for complex, branded iconography.

CSS Transforms as a Lightweight Alternative

You do not need to memorize four different hex codes for directional arrows. You only need one.

Embed a single right arrow &#8594; into your HTML. When you need it to point down, simply apply the CSS rule transform: rotate(90deg). This method keeps your markup incredibly lean and allows you to animate the rotation state seamlessly when a user interacts with a dropdown menu. It pairs well with CSS custom color variables when you need theme-aware arrow colors.

For simple directional UI elements, Unicode arrows are the right tool. Zero bytes, instant render, no library dependency. Once you know the trailing-space rule in CSS and when to reach for aria-hidden, they slot cleanly into any codebase.