Short answer: On a US layout, Shift + 3. On a UK Mac, Shift + 3 gives you £ — the hash is Option + 3. On a UK PC there’s a dedicated # key next to Enter. The character is U+0023 NUMBER SIGN, and it is not the same as the musical sharp ♯.
Tap to copy
Not sure whether the character in front of you is a hash or a sharp? Paste it into the Symbol Identifier and it’ll tell you which one you’ve got.
The UK Mac problem
This is the single most common reason people go looking for this page, and it has a precise cause.
On a UK Mac, the 3 key carries £ on Shift. The hash didn’t disappear — it moved to Option + 3. Many UK Mac keyboards don’t even print the # on the keycap, which is why it feels like the character is missing entirely.
On a UK PC, the picture is completely different. The UK Windows layout has one more key than the US layout, sitting next to Enter, and that extra key carries # and ~. So on a UK PC you press the hash key directly, no modifier at all.
That contrast is the whole confusion: same country, same £ on the 3 key, two entirely different answers depending on whether you’re on a Mac or a PC.
A related symptom worth knowing: if Option + 3 gives you £ rather than # on a Mac with UK keycaps, your input source is set to a US layout. Go to System Settings → Keyboard → Input Sources and make sure British is the only one listed. Mixed input sources are the usual culprit — the hardware doesn’t decide, the layout does.

Every layout, in one table
| Keyboard | How to type # |
|---|---|
| US (Mac or PC) | Shift + 3 |
| UK Mac | Option + 3 |
| UK PC | Dedicated # key, next to Enter |
| German QWERTZ | Dedicated key beside Return |
| Most other European PC layouts | Usually AltGr + 3 — check the key legends |
| iPhone / Android | 123 key, then the symbol row |
If your layout isn’t listed, look at what’s printed on the 3 key and on the keys around Enter before assuming a shortcut. Layouts vary more for this character than for almost any other. The wider tour is in keyboard symbols.
Quick reference
| Symbol | Name | Code point | Windows | Mac | HTML |
|---|---|---|---|---|---|
| # | Number sign | U+0023 | Alt + 35 | Shift + 3 (US) / Option + 3 (UK) | # |
| ♯ | Music sharp sign | U+266F | 266F + Alt + X | Hex Input 266F | ♯ |
| ⌗ | Viewdata square | U+2317 | 2317 + Alt + X | Hex Input 2317 | ⌗ |
| # | Fullwidth number sign | U+FF03 | FF03 + Alt + X | Hex Input FF03 | # |
| ﹟ | Small number sign | U+FE5F | FE5F + Alt + X | Hex Input FE5F | ﹟ |
| № | Numero sign | U+2116 | 2116 + Alt + X | Hex Input 2116 | № |
A note on that Alt code. Alt + 35, Alt + 035 and Alt + 0035 all give you #. Leading zeros normally switch Windows between two different code pages, but below decimal 128 both are plain ASCII and identical, so here the zero genuinely makes no difference. That’s the exception to a rule that bites hard everywhere above 128 — see Alt codes vs Unicode vs HTML.
# is not ♯
They look similar at a glance and they are completely different characters.
- # U+0023 NUMBER SIGN has horizontal horizontal strokes and slanted verticals.
- ♯ U+266F MUSIC SHARP SIGN is the opposite: slanted horizontals and upright verticals, designed so it stays legible against the horizontal lines of a musical stave.
Using # in place of ♯ in written music, or in a key name like “C♯”, is the common error. It renders acceptably and is wrong — it won’t match a search for the sharp, and a screen reader announces it as “number sign” rather than “sharp”. Music note symbols has the rest of the notation set.
There’s a third one that almost nobody knows about: ⌗ U+2317 VIEWDATA SQUARE. The ITU’s telephone-keypad standard calls the bottom-right key the square key and uses this character for it — which is why phone documentation sometimes shows a symbol that isn’t quite the hash you typed.
What it’s called
The naming is genuinely inconsistent, and each name belongs to a different context:
- Number sign — the official Unicode name, and the US usage:
#3means “number 3”. - Hash — standard in British and Commonwealth English, and in computing.
- Pound sign — US telephony, as in “press pound”. Confusing for British readers, for whom the pound sign is £, a completely different character.
- Hashtag — only correct when it prefixes a word as a social-media tag. The symbol itself is not “a hashtag”.
- Octothorpe — originated at Bell Labs in the 1960s when the symbol was added to the telephone keypad. The “thorpe” half has several competing origin stories and none is settled, so treat any confident explanation of it with suspicion.
The hashtag convention itself was proposed by Chris Messina on Twitter in 2007. Tag-styling conventions are covered in Instagram bio symbols.
Windows
- Type it: Shift + 3 on a US layout; the dedicated key next to Enter on a UK layout.
- Alt code: hold Alt, type 35 on the numeric keypad.
- In Word:
0023then Alt + X, though for a character this accessible the keyboard is faster. Other Word routes are in symbols in Word.
Mac
- US layout: Shift + 3.
- UK layout: Option + 3.
- Wrong character appearing? Check Input Sources, as above.
- Character Viewer: Control + Command + Space, search “number sign” — useful mainly for ♯ and ⌗, which have no shortcuts at all.
iPhone, Android and Linux
- Phones: tap 123, then find # in the symbol row. If you use it constantly, a text replacement shortcut is quicker than two taps.
- Linux: it’s on the keyboard — Shift + 3 or the dedicated key, by layout. For the variants, Ctrl + Shift + U then
266fand Enter. See typing symbols on Linux.
In code and on the web
The hash does more jobs in code than almost any other punctuation mark, which is worth knowing when something unexpected happens to your text:
- Comments in Python, Ruby, Bash, YAML and PowerShell.
- Preprocessor directives in C and C++ (
#include). - CSS ID selectors (
#header) and hex colours (#e8643c). - URL fragments — everything after
#is handled by the browser and never sent to the server. This is why a#inside a filename or query string has to be percent-encoded as%23. - Markdown headings.
In HTML the character needs no escaping in body text — # exists but is rarely necessary. In a URL, encode it. That %23 rule is the one that catches people out most, because the symptom is a link that silently truncates.
Accessibility
Screen readers announce # as “number sign” or “pound”, depending on the reader and its verbosity setting — not as “hash”, and not as “hashtag”. A string like #throwback may be read as one run of letters, spelled out, or split, and it varies between readers.
Two practical rules: don’t let a hash carry meaning that isn’t also in the words, and use camel case in multi-word tags — #SmallSpaceGardening is parsed and read far better than #smallspacegardening. How screen readers pronounce symbols covers the wider pattern.
Troubleshooting
| Problem | Fix |
|---|---|
| Shift + 3 gives £ on a Mac | UK layout. Use Option + 3. |
| Option + 3 gives £ instead of # | Your input source is a US layout despite UK keycaps. Set British as the only input source. |
| No # key on a UK MacBook | Correct — it isn’t printed. Option + 3 still works. |
| # in a URL breaks the link | Everything after # is a fragment. Encode it as %23. |
| Sharp sign looks wrong in music | You used # instead of ♯ U+266F. Different character. |
| Alt code needs leading zeros? | No. Below 128 the code pages are identical — 35, 035 and 0035 all work. |
| Phone keyboard has no # | Tap 123 first; it’s in the symbol row. |
Recap
| Situation | Do this |
|---|---|
| US keyboard | Shift + 3 |
| UK Mac | Option + 3 |
| UK PC | The key next to Enter |
| Windows, any layout | Alt + 35 on the keypad |
| Writing music | ♯ U+266F, not # |
| In a URL | Encode as %23 |
Frequently asked questions
How do I type the hash symbol on a UK Mac?
Press Option + 3. On a UK layout the 3 key carries £ on Shift, so the hash moves to the Option layer — and most UK Mac keycaps don’t print it, which is why it seems to be missing.
Why does Shift + 3 give me £ instead of #?
You’re on a UK keyboard layout, where the pound sign occupies the position the hash holds on a US layout. On a UK Mac, use Option + 3. On a UK PC, use the dedicated # key beside Enter.
Is the hash symbol the same as the sharp sign?
No. The hash is U+0023 NUMBER SIGN, with horizontal crossbars and slanted uprights. The musical sharp is U+266F MUSIC SHARP SIGN, with slanted crossbars and upright verticals, shaped to stay legible on a stave.
Why is # called a pound sign in America?
It comes from US telephony, where the key is announced as “pound”. In British usage the pound sign is £, a different character entirely, which is why the two names cause so much confusion.
What is an octothorpe?
Another name for #, coined at Bell Labs in the 1960s when the symbol was added to the telephone keypad. The origin of the “thorpe” half is disputed, with several competing stories and no settled answer.
Why does my link break at the hash?
In a URL, everything after # is a fragment identifier handled by the browser and never sent to the server. If the # is meant to be part of the address, encode it as %23.
Written by Igor R. Tested on Windows 11, macOS, iOS, Android, Linux, Word and Google Docs, on US and UK layouts. Last updated September 2026. Symbol code points follow the Unicode Standard.