Formatting & mentions
Hashtags, mentions, emoji, links
Every platform has its own rules for hashtags, mentions, emoji, and links. OpenPost normalizes them in the composer so your post looks right everywhere, and the preview tells you what to expect.
Hashtags
X
Use 1–2, more reduces reach
Up to 30; first-comment option
3–5 optimal
TikTok
5–10 typical, no hard cap
Threads
No discovery yet, cosmetic only
Bluesky
Used but not clickable yet
Compose once with all your hashtags. The composer flags per-channel issues (“too many for X, consider Instagram first-comment”). Use per-channel overrides to tailor.
Mentions
Type @and OpenPost queries the relevant platform for matches. You pick a specific user — we store their platform ID, not just the string. This means:
- Renames are handled — if
@acmechanges to@acmeco, the mention still resolves. - Validation at compose-time — you can’t mention a user who doesn’t exist.
- Cross-platform mentions are not automatic —
@acmeon X is not the same account as@acmeon Instagram. You mention per-channel.
Emoji
All emoji you type work on all channels. We store Unicode codepoints and let the platform render them — which means the exact visual varies (an Apple emoji on X vs. Twemoji). This is expected.
Grapheme counts matter on Bluesky— some emoji count as multiple graphemes toward the 300-character limit. The composer shows the correct count per platform.
Links
- Unfurling— most platforms auto-generate a preview card from the URL. Each has its own preview style (X shows title + image, LinkedIn shows a card, Instagram doesn’t unfurl in captions at all).
- Shortening — X shortens URLs automatically via
t.co. OpenPost doesn’t shorten on other platforms unless you explicitly ask. - Instagram caption links— not clickable. If a link is in the caption, we warn you and suggest a “Link in bio” approach.
- UTM parameters— preserved verbatim. Add them for analytics.
Line breaks
All platforms honor line breaks, but rendering differs. X condenses multiple blank lines to one; Instagram preserves every line break. The preview shows the actual rendering.
Rich text
No platform supports bold, italic, or colored text in captions through API. If you paste formatted text from a doc, OpenPost flattens to plain text. Use emoji or line breaks for emphasis.