Hashtag CamelCase Formatter – Capitalise the Words So They Can Be Heard
#onebigunbrokenstring and #OneBigUnbrokenString are the same hashtag to every platform: tag matching is case-insensitive, so both open the same feed and both count as the same tag. They are not the same to a screen reader. An unsegmented lowercase run carries no word boundaries, so a reader announces it as one unintelligible token — or spells it out character by character, depending on the reader and its built-in dictionary. The capitalised form hands the reader the boundaries it needs. That is the entire reason this hashtag camelcase formatter exists, and it is enough on its own: capitalising the words of a hashtag is an accessibility fix, not a growth tactic. Nothing here claims an effect on reach, impressions or ranking.
You type the words — the tool never guesses where they are
Type social media marketing and you get #SocialMediaMarketing, or #socialMediaMarketing if you prefer camelCase. The spaces are how the tool knows where each word starts, and that is deliberate: splitting an already-joined run back into words requires a dictionary, and no heuristic does it safely. expertsexchange, therapistfinder and nowhere are the standard demonstrations of what a guessing splitter produces. So rather than ship a feature that is confidently wrong some of the time, this tool asks you for the words.
The boundary strip fixes a pasted tag without retyping it
If you already have #Instagramreels sitting in a caption, paste it in and use the boundary strip: the joined tag is drawn one character per cell with a clickable gutter between every pair, and clicking a gutter inserts or removes a word boundary. The tag re-cases instantly. Boundaries are stored as grapheme indices rather than character offsets, which is what keeps an emoji, a flag or an accented letter whole no matter where you click.
See the difference you are actually making
The announcement comparison stacks two rows: the lowercase tag as one unbroken block, and the same tag with each word in its own chip. It illustrates the word segmentation a reader has to work with — it is not a recording of any particular screen reader, and behaviour differs between readers, versions and their dictionaries.
Acronyms, digits and the characters that get dropped
An acronym you type in capitals is preserved verbatim, so NASA images gives #NASAImages while nasa images gives #NasaImages. An optional word list can uppercase acronyms typed in lowercase; it is off by default and every entry is a chip you can remove. A digit run has no case and is left alone — top10 stays one word, top 10 is two. Apostrophes are removed without breaking a word apart, so don't becomes Dont. An ampersand is dropped rather than expanded, because turning & into and would be putting a word in your mouth — you are told it happened. Emoji are dropped whole, since a tag terminates at the first one.
istanbul becomes İstanbul rather than Istanbul. Scripts with no letter case — Japanese, Chinese, Korean, Arabic, Hebrew, Devanagari, Thai — are joined unchanged, and the tool says so on screen instead of silently doing nothing.What this tool will not do
It does not pull tags out of a pasted post; that is the Hashtag Extractor, and you get a pointer to it if what you paste looks like a whole caption. It leaves @handles alone. It shows no trending or volume data, because there is no source for it that could be read without guessing, and it publishes no maximum tag length or per-post tag cap, because none could be sourced — the one length warning is this tool's own readability threshold and says so. Batch mode takes one phrase per line and exports to CSV with spreadsheet formula characters neutralised. No text you type ever leaves your browser.