
Preview your post on every platform, then get client sign-off with a link or a PDF.
PostDecks is a free tool for the people who run social accounts for clients. Paste a caption, drop in an image, and see exactly how the post will look on X, LinkedIn, Instagram, Facebook and the rest, before it goes anywhere near a client. Then send a link they can approve, or export a PDF proof for sign-off. No dashboard for your client to log in to.
One caption and one set of images can look completely different from platform to platform. Three things decide how it renders:
Instagram and Facebook suit 4:5 portrait, LinkedIn prefers 1.91:1 landscape, X shows anything from 2:1 to 3:4 uncropped, and Stories and TikTok fill a full 9:16 screen. Upload one image and every platform crops it differently.
Every platform cuts long captions at a different point. Instagram hides everything past about 125 characters behind a more link, LinkedIn around 210 on a desktop and fewer on a phone, and Facebook around 477. X shows the whole post but caps a standard account at 280 characters, with more on Premium. YouTube cuts a title at the end of its second line, and Pinterest shows one line of a Pin's title. PostDecks applies each platform's rule as you type.
Instagram builds a swipeable carousel. Facebook and LinkedIn arrange a collage by the shapes of your photos. X and Threads put two side by side and more in a strip, and Bluesky makes a grid of up to four, then a carousel. The same set of images gets a different layout everywhere.
Drag in your images, paste the caption, and set the display name, handle, and LinkedIn headline, or pick a client you saved. Every preview updates live, and your post is kept in this browser, so a refresh does not lose it.
Switch between phone and desktop, and light and dark. Change the crop on any card, turn on safe zones for Stories and TikTok, and use View to choose the platforms you are posting to.
Download one combined PDF proof sheet or a PNG of any card, or share a link your client can approve or comment on without logging in. You get an email when they reply, and you can update the link if the post changes. Once it is approved, Post it opens X, LinkedIn, Threads or Bluesky with the caption already typed, or copies it for the rest.
The exact ratios, limits, and truncation points PostDecks renders against.
| Platform | Ratio | Limit | Truncation |
|---|---|---|---|
| X (Twitter) | 4:5 | 280 chars | No truncation |
| 1.91:1 | 3,000 chars | ~210 chars | |
| LinkedIn Carousel | 1:1 | 3,000 chars | ~210 chars |
| 4:5 | 2,200 chars | ~125 chars | |
| Instagram Story | 9:16 | n/a | No caption |
| 4:5 | 63,206 chars | ~477 chars | |
| Facebook Story | 9:16 | n/a | No caption |
| Threads | 1:1 | 500 chars | No truncation |
| Bluesky | 4:5 | 300 chars | No truncation |
| 2:3 | 800 chars | Title on one line | |
| TikTok | 9:16 | 4,000 chars | ~100 chars |
| YouTube title | 16:9 | 100 chars | After 2 lines |
Everything runs in your browser. When you add an image it is processed locally and never sent to a server: no account, no upload. The post you are working on is kept on your own device, so a refresh does not lose it, and Reset to blank clears it.
Two things leave your browser, and only when you choose them. Sharing a post as a link stores a copy of it so your client can open it, until you delete the link. And with a free account, the clients and Instagram grids you save are kept with your account, so they are there on your other devices.
That matters when you are working with unreleased campaign assets: your client's images and copy stay on your machine through preview and export.