Social Media Post Formatter
Format social posts with Unicode bold/italic/mono/strike, line-break boosters that survive copy-paste, and a clean hashtag block. Works on X / Twitter, Mastodon, Bluesky, Facebook, Threads and Reddit.
What is the Social Media Post Formatter?
Social Media Post Formatter applies Unicode Mathematical-Alphanumeric styles — bold, italic, bold-italic, sans-serif variants, monospace, small-caps, strikethrough and underline — so the formatting survives copy-paste into platforms that strip rich text (X / Twitter, Mastodon, Bluesky, Facebook, Threads, Reddit). It also fixes the most common formatting failure: blank lines that platforms collapse. The 'preserve blank lines' option inserts U+2063 INVISIBLE SEPARATOR on empty lines so the gap renders reliably. A hashtag panel takes a comma-separated list, dedupes and normalises tags (adds `#`, optionally lowercases), and drops the cleaned block at the bottom of the post. Live character / line / hashtag counts and a real-time preview let you tune the post before pasting. Pure functions, no network.
How to use it
- Pick a body style — bold, italic, monospace, small-caps and so on.
- Toggle 'preserve blank lines' so platforms don't collapse your formatting.
- Type your hashtags as a comma-separated list — they get cleaned and prefixed automatically.
- Copy the formatted preview and paste into X, Mastodon, Bluesky, Facebook or any other platform.
Benefits
- 10 Unicode styles (bold / italic / bold-italic / sans-serif variants / mono / small-caps / strike / underline) that survive copy-paste.
- Blank-line booster using U+2063 INVISIBLE SEPARATOR — fixes Threads / Bluesky / Facebook line-break collapsing.
- Hashtag block builder with dedupe, lowercase and auto-`#` prefix.
- Live preview with character, line and hashtag counts.
- Works on every text-based platform: X / Twitter, Mastodon, Bluesky, Facebook, Threads, Reddit.
- Persists draft and formatting choices in localStorage for one-click resume.
- Honest warning when a chosen style (combining marks) may render poorly on some Android keyboards.
- Runs 100% in your browser — drafts never leave the device.
Frequently asked questions
How can bold text 'survive copy-paste' if platforms strip formatting?
We don't use rich-text markup — we substitute each letter for the Mathematical-Alphanumeric Unicode equivalent (e.g. 'A' → '𝐀'). Those are actual Unicode characters, so they paste unchanged into any platform that supports Unicode (which is essentially everywhere).
Does this work on X / Twitter?
Yes. Bold, italic, monospace and small-caps all render correctly. The blank-line booster also keeps your line breaks intact.
Does the blank-line trick break accessibility?
Screen readers ignore zero-width / invisible characters, so the audio output is unchanged. Visual rendering gets the gap. It's the standard fix used by every social-media scheduling tool.
Will hashtags survive my style choice?
Yes. We only style the body — the hashtag block at the bottom is left as plain text so platforms recognise it and make tags clickable.
Why do some Android keyboards render strike-through poorly?
Combining-character styles like strikethrough require the rendering engine to draw the combining mark over the previous glyph. Some Android keyboards / older Android versions don't draw them at the right offset. The tool warns when you pick one.
Can I bold only part of a post?
Not in this version — the style applies to the whole body. For mixed styling, copy the bold portion separately, then paste the plain part. Or use the LinkedIn formatter, which has separate hook + body style controls.
Is this the same as fancy-text generators?
It shares the same Unicode transforms as our Fancy Text Generator. The difference is the hashtag block, line-break booster and live character counts geared specifically at posting — not just generating one fancy phrase.
Does dedupe handle case differences?
Yes — duplicates are matched case-insensitively. The original casing of the first occurrence is kept.
What about emoji?
Emoji pass through unchanged. The Unicode transforms only apply to ASCII letters and digits — emoji aren't in the Mathematical-Alphanumeric blocks.
Is anything uploaded?
No. All formatting and previewing runs entirely in your browser.
How many characters / hashtags can I include?
There's no tool-side limit, but most platforms cap posts (280 / 500 / 5 000 chars). The character counter helps you stay within whatever platform you're posting to.
Related tools
See all text toolsLinkedIn Post Formatter
Bold the hook, format the body, fix line breaks — all offline.
Instagram Caption Formatter
Caption formatter that fixes IG's broken line breaks.
Tweet Character Counter
Count tweets and threads against the X/Twitter limit.
Fancy Text Generator
Turn plain text into fancy Unicode styles.