How to Use the Number Sign Correctly: Clear Rules and Practical Examples
The number sign (#) is one of the most versatile symbols on a keyboard, yet it is also one of the most misused. From social media to spreadsheets, its meaning shifts with context, and a single misplaced character can confuse readers or break code.
Mastering its correct use protects clarity, preserves data integrity, and prevents embarrassing branding mistakes. Below, you will find field-tested rules, real-world examples, and little-known edge cases that even professional editors overlook.
Core Naming Convention: Why # Means “Number” and Nothing Else in Formal Writing
In academic, legal, and technical documents, the glyph is read as the word “number.” It is not an abbreviation for “pound,” “hash,” or “hashtag.”
Style guides such as Chicago and AMA restrict its appearance to tables, figures, and product codes where space is scarce. Anywhere prose flows, writers spell out “number” to avoid ambiguity.
Example: “Experiment 4” is correct; “Experiment #4” is flagged by copy editors unless it appears in a column header.
Spatial Rules: Where to Place the Symbol Relative to Digits
No space separates # from the numeral in American English: “#8 screw” not “# 8 screw.” British technical manuals sometimes allow a thin space, but global supply chains favor the tight version for SKU consistency.
When the reference is indefinite, insert a non-breaking space after the sign to prevent line-splitting: “item # 1-234” keeps the identifier intact across PDF columns.
Capitalization After the Symbol
Capitalize the noun that follows only if it is a proper name: “#2 Phillips” refers to the trademarked screwdriver profile. Generic counts stay lowercase: “#10 envelope.”
Social Media Shift: How # Transforms into a Hashtag and Why Spacing Dies
On platforms that recognize hashtags, the symbol switches from quantifier to metadata marker. The instant you prefix a word string with #, the sentence grammar dissolves and the phrase becomes a searchable token.
Spaces and punctuation kill the token, so “#New York” only indexes “New.” Writers compress with camelCase: “#NewYork” or “#newyork” depending on brand guidelines.
Platform-Specific Parsing Quirks
Twitter ignores underscores inside hashtags; Instagram does not. LinkedIn collapses multiple hashtags into the first five for feed ranking.
Test every campaign string by pasting it into the platform’s search bar before publishing. A hidden dash can orphan your content from its intended thread.
Accessibility Note: Screen Reader Behavior
NVDA announces “hashtag” once, then reads the concatenated letters. JAWS splits camelCase correctly if capital letters are present, improving comprehension for visually impaired users.
Spreadsheet & Database Syntax: Escaping the # to Prevent Formula Errors
Excel treats # as the first character of an error code. If your part number begins with #, prepend a single quote to force text format: ‘#123.
SQL views # as a temporary table prefix in T-SQL. Naming a permanent column “#clients” causes runtime conflicts.
Regular Expression Escape
In regex engines, match the literal symbol with #. Forgetting the backslash turns your pattern into a comment delimiter in Python, silencing every line beneath it.
CSV Export Hazard
When a SKU like “#4567” lands in the first CSV column, Excel auto-converts it to a formula and throws a #NAME? error. Protect the field with double quotes and an equal sign: “=””#4567”””.
Legal & Medical Shortcuts: When # Equals “pound” and Risks Lives
U.S. pharmacies still use # to mean “pound” on handwritten scripts. A hurried “#MgSO4” can be misread as “1 lb magnesium sulfate,” a lethal dose.
Institute for Safe Medication Practices urges electronic prescribing to eliminate the symbol entirely. If paper is unavoidable, write “lb” and “number” in full.
Patent Drafting Protocol
USPTO accepts # only in drawing call-outs. Claims sections must spell “number” to avoid examiner objection under 37 CFR 1.75.
Contract Tables
When listing sequential contract amendments, label columns “Amendment No.” not “Amendment #.” Arbitrators have overturned settlements because the pound interpretation introduced weight ambiguity.
Programming Languages: Octothorpe as Comment, Token, and Shebang
In Python, # initiates a comment that runs to the line end. Accidentally prefixing configuration values hides them from the interpreter and triggers default fallback behavior.
Unix shebang (#!) must sit alone on the first line with no leading spaces. A hidden BOM character before the # forces the kernel to reject the script as binary.
Color Hexadecimals
CSS expects exactly six hex digits after #: #FA8072. Modern browsers forgive three-digit shortcuts, but post-processors like Sass throw “invalid hex” warnings that break CI pipelines.
Markdown Collision
Markdown headings start with #, so writing “#1 tip” creates an H1 tag instead of literal text. Escape with backslash: #1 tip.
Typography & Design: Choosing the Right Glyph From Font to Font
The Unicode code point U+0023 delivers the standard hash, but designers often prefer U+1F12E for a heavyweight version that matches bold numerals.
Some condensed fonts squeeze # into a blob; verify legibility at 10 pt before printing barcodes that rely on human verification.
Color Contrast
WCAG 2.2 requires a 4.5:1 contrast ratio for inline symbols. A pale-gray # against a white field fails audits even if the surrounding text passes.
Line Height Trap
In CSS, setting line-height: 1 can clip the # glyph’s ascenders, making it resemble a plus sign. Increase to 1.2 for data tables.
International Variations: When # Means “Sharp” or “Chess Checkmate”
Musicians label F# as “F sharp,” never “F number.” Miswriting “F#” in orchestral parts sends brass players hunting for the nonexistent 15th partial.
Chess annotation uses # for checkmate, but algebraic notation places it after the move, not before: “Qh7#” is decisive; “#Qh7” is gibberish.
UK Telephone Keypads
British voice prompts call # “hash,” yet older switchboards labeled it “gate.” Update IVR scripts to match regional lexicons or callers press the wrong key.
Chinese Input Methods
In Pinyin keyboards, typing # toggles full-width mode, turning “#123” into “#123” and breaking international part lookups. Lock the input method to half-width for logistics software.
Voice & Audio: Pronouncing the Symbol in Scripts and Captions
Screenplay format books instruct actors to say “number” when dialogue reads “Call room #412.” Recording the glyph literally produces blooper reels.
Audio description tracks for the visually impaired expand every # into context: “door number four-one-two,” preventing confusion with apartment count.
Podcast Show Notes
Spotify’s auto-transcript engine omits # unless it is part of a verified hashtag. Manually insert quotation marks around technical identifiers to preserve them in search.
SEO & URL Slugs: Why Google Ignores or Penalizes the Character
Google treats # as a fragment separator; everything after it is dropped from the crawl. A URL like “example.com/product#123” indexes only “product.”
Move identifiers to the path: “example.com/product/123” or to a query string: “example.com/product?id=123” for analytics tracking.
Breadcrumb Markup
Schema.org breadcrumbs strip # by default. If your SKU contains the symbol, URL-encode it as %23 to maintain breadcrumb visibility in SERPs.
Analytics Fragment
UTM parameters after # are never sent to server logs. Place campaign tags before the hash or risk losing attribution data.
Branding & Merchandise: Registering a Trademark That Starts With #
The USPTO classifies # as a nondistinctive symbol. To register “#GLOW,” you must prove acquired distinctiveness through five years of exclusive use.
Include the symbol in every specimen: hangtags, social posts, and packaging must show the exact mark to satisfy the examining attorney.
Domain Registration
ICANN allows # in subdomains but not top-level domains. Create “shop.#brand.com” for campaigns, yet expect mobile keyboards to hide the symbol behind two extra taps.
Quality Assurance Checklist: A Rapid-Fire Guide for Editors
Search your manuscript for # using wildcard # in Word’s advanced find. Replace each with “number” unless it sits inside a code block, table, or verified hashtag.
Run a regex pass to catch spaced variants: #s+d+. Eliminate the gap to meet AMA style.
Export to PDF, select all text, and paste into a plain-text editor. Any missing glyph indicates font subsetting failure; reload with full embedding.
Final Proof
Zoom to 200% and scan for clipped ascenders. If the symbol resembles a smudge, switch to a font with explicit Unicode drawing instructions.