Instagram mockup and post preview generator

Check an Instagram post preview before you publish, or switch to X, LinkedIn, Facebook, Threads or Bluesky. Type the text, add an avatar and images, see roughly where the text folds and how the media box is cropped, then export the mock as a PNG for a client or a content review.

Runs in your browser.

Text and files stay on your device.

Maintained by the bundle.social team, last updated . How we check the numbers

Loading the tool

How to use

  1. 01

    Write the post and pick the platform

    Type or paste the post text, then choose Instagram, X, LinkedIn, Facebook, Threads or Bluesky. The character limit, the fold and the media box change with the choice.
  2. 02

    Add images and the profile

    Add up to ten images, then a display name, a handle or headline and, if you want, an avatar, all from your device. Nothing is uploaded.
  3. 03

    Check the fold and the crop

    The preview cuts the text where the platform usually shows a see-more link and clamps the first image to the platform's feed ratio. Press the link in the mock to expand the text.
  4. 04

    Switch the view and export

    Toggle mobile or desktop width and a light or dark theme, turn sample engagement numbers on if the mock needs them, then download the PNG.

Where the text folds

Feeds hide long text behind a see-more link so a post does not push the next one off the screen. None of the platforms documents the rule; it depends on rendered lines, so this tool uses observed budgets: about 125 characters or two lines on Instagram, three lines on LinkedIn (around 140 characters on a phone, 210 on desktop), roughly 400 to 480 characters on Facebook, and the 280 character line on X. Threads and Bluesky usually show the whole post within their limits. Put the opening line before the fold; only readers who tap see the rest.

How the media box is chosen

The preview takes the first image's width and height and clamps the ratio into the range the platform tends to show in the feed, for example 4:5 to 1.91:1 on Instagram. If the image falls outside that range the box is marked as cropped and the image is center-cropped, as most feeds do. Carousels on Instagram take the first item's ratio for every slide; Threads keeps each image's own box. Export the image at the target ratio with the image resizer if the crop cuts something important.

Limitations

  • The previews are approximations drawn with our own shapes. Fonts, spacing and icons differ from the real apps and change without notice.
  • The see-more fold is estimated from a character and line budget. Real apps fold by rendered height, so wide characters, emoji and long words move the cut.
  • Media boxes follow typical feed ratios. Platforms crop, pad and letterbox differently per surface, and video is not previewed.
  • X is counted with its weighted rules (links 23, emoji and CJK 2) through the twitter-text library; Bluesky is counted in graphemes, the other platforms in code points. The platform character counters show the full breakdown.
  • Hashtags, mentions and links are shown as plain text; link cards and polls are not drawn.
  • Engagement numbers are fixed sample values for the mock, labelled as such; nothing is measured.
  • The PNG export renders the preview in your browser. Some Safari versions block it; a screenshot is the fallback.

bundle.social is not affiliated with, endorsed by, or sponsored by Instagram, Facebook, Meta, X, TikTok, LinkedIn, YouTube, Threads, Bluesky, Pinterest or any other platform named here. Platform names and logos belong to their owners and are used only to describe compatibility.

FAQ

Does the preview upload my text or images?

No. Everything stays in the browser tab. Images are read from your device as local object URLs, the PNG is rendered by your browser, and the page makes no request with your content.

Why does the fold in the preview differ from what I see in the app?

Apps fold by rendered height, which depends on font size, screen width, emoji and line breaks, and they change the rule over time. The tool uses a character and line budget observed in the feed, so treat the cut as a guide and keep the important words well before it.

Can I preview a carousel or a multi-image post?

Yes. Add up to ten images. Instagram and Threads show them as a carousel with slide controls under the mock. LinkedIn and Facebook show a grid of up to four tiles with a plus-N badge for the rest. X and Bluesky take at most four images per post, so the preview shows four and hides the others, and the image list marks them as hidden.

Why are the engagement numbers always the same?

They are fixed sample values for the mock, off by default, and labelled as samples inside the preview and in the exported PNG. The tool measures nothing and has no connection to any account.

The PNG download fails. What can I do?

The export renders the mock through an SVG foreignObject, which some Safari versions refuse, usually with images or custom fonts. Try again once, switch to Chrome or Firefox, or take a screenshot of the preview, which gives the same pixels.

Is the character count exact?

For X the preview applies X's weighted rules with the open-source twitter-text library: every link counts as 23 and emoji and CJK characters as 2. Bluesky is counted in graphemes and the other platforms in code points, which matches their documented limits but not every edge case. The platform character counters on this site show the full breakdown.

Related tools

Publish the post you just previewed

bundle.social schedules and publishes to every platform in this preview from one dashboard or one API call. The free plan needs no card.