| YouTube | ||
|---|---|---|
| Characters | 3,000 | 5,000 |
| Media | optional | a video (required) |
| Hashtags | 3 hashtags (5 max) at the end | 3-5 hashtags in the description, never more than 15 total |
| Links in body | suppress reach | fine |
| Needs platform approval | yes | yes |
LinkedIn posts are frequently text-only. YouTube requires a video on every post, so there is no direct equivalent — you have to attach media before this cross-post is even possible.
LinkedIn: 3 hashtags (5 max) at the end. YouTube: 3-5 hashtags in the description, never more than 15 total. Carrying the tag block across is the single most obvious sign of an automated cross-post.
LinkedIn penalises links in the body, so posts written for it park the URL elsewhere. On YouTube links in the body are fine — putting it back is free reach.
YouTube requires a separate title (max 100 characters). LinkedIn has no such field, so there is nothing to copy across — it has to be written.
LinkedIn is professional and first-person; the hook must fit in 210 characters. YouTube is a search engine: the title carries the keyword in the first 40 characters. 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": ["linkedin", "youtube"],
"text": "Your post",
"per_platform": {
"linkedin": { "text": "The LinkedIn version" },
"youtube": { "text": "The YouTube 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: YouTube to LinkedIn · all combinations · which APIs need approval