Underscore (_)

The plain keyboard underscore (_) that began as a typewriter underlining trick and became snake_case — the one space-safe character usernames, emails, and filenames allow — shown here beside its fullwidth _, doubled ‗, and overline ‾ relatives. Click any symbol to copy it instantly.

The underscore, or low line (_, U+005F LOW LINE), is the horizontal stroke that sits on the baseline in Unicode's Basic Latin block, where it carries the general category Connector Punctuation. It began as a purely mechanical trick: on a typewriter you underlined a word by typing it, backspacing the carriage to the start, and overtyping the same span with the underscore key — a dedicated key present on machines such as the 1881 Caligraph. The character passed into ASCII in 1967, taking code point 95 (0x5F) from the left-arrow (←) it replaced, after IBM's EBCDIC had already added it in 1964 as the "break character." Programmers then repurposed it as a word separator — the underscores-as-spaces style traces to C in the late 1960s and to The C Programming Language (1978), though the name "snake_case" wasn't coined until the Ruby community used it around 2004 (Python's PEP 8 still calls it "lower_case_with_underscores"). Today it is the one space-safe character allowed in usernames, email local-parts, filenames, and URL slugs, and Markdown reads _single underscores_ as italic and __double__ as bold. It's routinely mixed up with the hyphen (-, U+002D) and confused with its wider cousins, the fullwidth _ (U+FF3F) and double low line ‗ (U+2017).

The Underscore

The Underscore, Fullwidth & Doubled

The plain keyboard low line and its two width variants — the fullwidth form used in East Asian typesetting and the doubled spacing underscore. Ready to paste anywhere.

Underscore / Low Line (U+005F)
Fullwidth Low Line (U+FF3F)
Double Low Line (U+2017)
The Overline

The Overline: the Same Stroke, Above the Text

The overline is the underscore's mirror image — the identical horizontal stroke placed above the text instead of below it, which is why the two get confused as opposites. The macron is the short bar people often type when they mean an overline.

Overline / Spacing Overscore (U+203E)
Macron (U+00AF)
Vs. Hyphen & Dash

Underscore vs. the Hyphen & Dash Family

In URLs, usernames, and filenames an underscore and a hyphen are constantly swapped for each other — but they sit at different heights and different code points, and each does a different job.

Hyphen-Minus / Keyboard Hyphen (U+002D)
Hyphen (U+2010)
En Dash (U+2013)
Minus Sign (U+2212)

Transform text with Unicode fonts

Use UltraTextGen to convert plain text into bold, italic, cursive, and 100+ other Unicode font styles — free and instant.

Open UltraTextGen →
Related Resources

Keyboard Symbols

The underscore, hyphen, asterisk, and the rest of the punctuation and shift-key characters on a standard keyboard.

Punctuation Symbols

Dashes, brackets, quotation marks, and the everyday punctuation of Unicode in one reference.

At Sign (@)

The other special character at the heart of email addresses and social handles, where the underscore is the space-safe separator.