| TikTok | ||
|---|---|---|
| Characters | 2,200 | 2,000 |
| Media | a video (required) | optional |
| Hashtags | max 5 hashtags, inside the caption (comments are invisible to the algorithm) | 1-3 hashtags |
| Links in body | fine | fine |
| Needs platform approval | yes | yes |
TikTok allows 2,200 characters; Facebook caps at 2,000. A post written to TikTok's length gets truncated — usually mid-sentence — unless it is rewritten, not trimmed.
TikTok: max 5 hashtags, inside the caption (comments are invisible to the algorithm). Facebook: 1-3 hashtags. Carrying the tag block across is the single most obvious sign of an automated cross-post.
TikTok is hook-first, not SEO-first: the first 80-100 characters decide everything. Facebook is warm and community-toned; 40-80 characters peaks engagement. Those are different jobs, so the same words cannot do both well — and every algorithm here demotes text that obviously was not written for it. The fix is not to skip cross-posting; it is to send a native version to each network.
curl -X POST https://postwire.io/api/post \
-H "Authorization: Bearer $POSTWIRE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"platforms": ["tiktok", "facebook"],
"text": "Your post",
"per_platform": {
"tiktok": { "text": "The TikTok version" },
"facebook": { "text": "The Facebook version" }
}
}'
PostWire's /api/generate writes those per-platform versions for you from a single prompt, respecting
every limit in the table above. From an AI agent it is one MCP tool call.
Other pairs: Facebook to TikTok · all combinations · which APIs need approval