X is a text-first network that happens to carry video — which is exactly why a video pulled from it needs more rework than a repost between two vertical-video platforms. Resolution, aspect ratio, and caption all need a second pass before this content is ready for Instagram or TikTok.
X video isn't shot for the destination you're reposting to
Two structural differences show up almost every time:
- Resolution. X compresses video harder than TikTok or Instagram do on upload, and it compresses again on download. A clip pulled from X and reposted has usually been through two lossy passes before a viewer ever sees it — visibly softer than the same clip posted natively would look.
- Aspect ratio. A meaningful share of X video is 16:9 landscape or square, because X's player handles those natively and a lot of what gets posted there is screen recordings, clips from broadcast, or desktop-recorded content — not vertical phone footage. Neither TikTok nor Instagram Reels wants that ratio; both expect 9:16.
Both problems compound: you're re-cropping a video that was already the lowest-quality version of itself.
Get the cleanest copy you can
In order of preference:
- Your original file, if you made the video yourself and still have the source export. No compression loss, no cropping decisions forced on you by someone else's framing.
- X's own video download, where available — some accounts and clients expose a direct link to the underlying media file rather than the compressed feed version.
- A link-based downloader, the fallback for a video you don't own the source for. Paste the post URL, get the video back without needing to screen-record it (screen-recording adds a third compression pass and often captures UI chrome along with the footage).
Whichever method, resist re-encoding more than once. Every extra export is another quality step down from a source that was already compressed going in.
Fix the aspect ratio deliberately, not by default
If the source is 16:9 or square, don't auto-crop to fill 9:16 and call it done — decide what's actually in frame first:
- Talking-head or single-subject video: crop centered on the subject; the sides you lose are usually background.
- Screen recordings or multi-element frames: a straight crop can cut off exactly the part that made the clip worth reposting. Consider adding blurred-background padding above and below instead of cropping tighter, so nothing essential is lost.
- Check safe zones per destination after cropping — TikTok's UI sits differently on screen than Instagram's, so text or on-screen elements that clear one platform's overlay can land under the other's username or caption area.
Rewrite the caption from scratch
A tweet's text is written to sit next to a video thumbnail, often assuming the reader already has context from the thread or the account. Move it over unedited and it reads like it's missing something, because it is. Instead:
- State the point the video makes, standalone — don't reference "this tweet" or thread context that doesn't exist on the new platform.
- Drop tweet-specific phrasing ("as I said above," "see thread") that only made sense in X's format.
- Match the destination's caption culture: TikTok rewards a natural-language, searchable line; Instagram Reels does well with something tighter plus a small hashtag set. Neither wants X's abbreviated, reply-guy tone transplanted whole.
Where this fits in a broader cross-posting habit
This is really one instance of a general rule: what changes per platform beyond size is often bigger than the aspect ratio math suggests, and it's worth building the habit of a caption rewrite into every cross-post, not just the ones coming from X. If you're pulling from TikTok instead, the equivalent workflow — including the watermark problem X reposts don't have — is covered in reposting TikTok to Instagram without the watermark. And once a video is cleaned up and captioned per platform, distributing it everywhere in one pass is the subject of posting to all social platforms at once.
The pattern holds regardless of source platform: fix the file once, write the caption per destination, and a repost reads as native instead of forwarded.