Instagram Story Maker

A full-screen story from your photo, with a title and text kept clear of Instagram's buttons.

Runs entirely in your browser

Loading the tool…

Your picture is opened by this page and never uploaded. The ad is made on this device, and sharing hands it to your device's apps rather than to a server, so the page keeps working with the network off.

A story fills the whole phone screen, 1080 pixels wide by 1920 tall, and this page opens on exactly that. A landscape photo is cropped to the tall frame; drag it so the part that matters is in it, and pinch to come in closer. The title and the text are laid on top, and the file you save is the size Instagram shows, edge to edge.

The top and the bottom of a story are not entirely yours. Instagram puts the profile name and the progress bars across the top, and the reply box, or the call to action on an ad, across the bottom, about a seventh of the height each. Use Top and Bottom to snap a text into place, then drag it in a little: keeping words out of the top and bottom 250 pixels or so keeps them clear of both.

The same frame suits Facebook stories, Reels and TikTok, which share the 9:16 shape. On a phone, Share sends the story straight to Instagram with nothing uploaded by this page.

How to use it

  1. Choose your photo: the frame is already 1080 × 1920.
  2. Drag and pinch it until the subject fills the tall frame.
  3. Tap the title and the text to write them, and keep them away from the very top and bottom.
  4. Share to Instagram from your phone, or download it.

Questions

What size is an Instagram story?

1080 × 1920 pixels, the 9:16 shape of a phone screen. Reels use the same size, and so do Facebook stories and TikTok, so one story made here works on all of them.

Where should the text go on a story?

Away from the edges. The top of a story carries the profile name and progress bars, and the bottom the reply box or the ad's button, roughly 250 pixels each. Snap a text to Top or Bottom here and then drag it towards the middle until it clears them.

Can I use a landscape photo?

Yes, but only a slice of it fits: the story frame is tall, so a wide photo is cropped to its middle. Drag it sideways to choose the slice, or zoom out as far as it goes. A photo taken upright fills the story with nothing lost.

Is my picture uploaded?

No. The picture is opened and the ad is made in this tab, and the page is served with a rule that forbids it from opening a network connection. Sharing hands the finished file to an app on your device; nothing is sent to a server by this page.

The story frame

PartPixels from the edgeWhat covers it
TopAbout 250Profile name, progress bars
BottomAbout 250Reply box, or an ad's button
MiddleThe rest of the 1920Nothing: the place for words

Other platforms

The same maker opened on another platform's format. Any of them makes every size once you are there.

Your data stays on your device

Everything above runs inside your browser as WebAssembly compiled from Rust. Nothing you type is uploaded, logged or stored on a server. You can load this page once, go offline, and it still works.

This page makes no requests at all, to anywhere. That is not a promise in the copy: it is a Content-Security-Policy header your browser enforces, and connect-src on it is none. Open the network tab and watch nothing happen.