Works, with rewrites

Cross-posting Instagram to X: what actually breaks

You can, but not by copying the text across: 3 things change between Instagram and X, starting with you lose 1,920 characters. Below is exactly what breaks and what to do instead.

Side by side

InstagramX
Characters2,200280
Mediaa photo or video (required)optional
Hashtagsmax 5 hashtags at the END of the caption1-2 hashtags, zero is fine
Links in bodyfinesuppress reach
Needs platform approvalyesyes

What changes, one by one

You lose 1,920 characters

Instagram allows 2,200 characters; X caps at 280. A post written to Instagram's length gets truncated — usually mid-sentence — unless it is rewritten, not trimmed.

The hashtag rules are not the same

Instagram: max 5 hashtags at the END of the caption. X: 1-2 hashtags, zero is fine. Carrying the tag block across is the single most obvious sign of an automated cross-post.

A link in the body suppresses reach on X

Links are fine on Instagram. On X they cut distribution — the link belongs in a reply, not in the post.

Why copy-paste cross-posting underperforms

Instagram is built for short captions — under 100 characters is rewarded. X is one hook and nothing else — opinionated, conversational, over in a breath. 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.

Publish to both in one call

curl -X POST https://postwire.io/api/post \
  -H "Authorization: Bearer $POSTWIRE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "platforms": ["instagram", "x"],
    "text": "Your post",
    "per_platform": {
      "instagram": { "text": "The Instagram version" },
      "x": { "text": "The X 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.

Get an API key free →

Questions people actually ask

Can I cross-post from Instagram to X?
You can, but not by copying the text across: 3 things change between Instagram and X, starting with you lose 1,920 characters. Below is exactly what breaks and what to do instead.
What is the character limit difference between Instagram and X?
Instagram allows 2,200 characters and X allows 280.
How do I post to Instagram and X at the same time?
With PostWire, one API call publishes to both: POST /api/post with platforms set to ["instagram","x"]. Or one MCP tool call from an AI agent.

Other pairs: X to Instagram · all combinations · which APIs need approval