Skip to main content

Instagram DM Generator

Generate a fake Instagram DM screenshot — username, activity status, profile photo, gradient message bubbles, emoji reactions, typing indicator and a Seen receipt — from a simple line-by-line script, and download it as SVG.

Input

Shown under the username — e.g. Active now, Active 2h ago. Leave empty to hide it.

Drop an image or browse
One file · image

Optional. Stays in your browser — initials are drawn if you skip it.

One message per line. Start a line with me: for your messages, them: for theirs, --- for a date separator, end a line with | 09:14 to timestamp it, and with ^❤️ to add a reaction.

Settings

Leave empty for Instagram's own “Message…”.

The screen is a fixed phone-sized frame, so a long conversation scrolls. 0 shows the start, 100 the latest messages. No effect if everything already fits.

For mockups, memes and parody only. Don't present a generated screenshot as a real conversation, and don't use it to impersonate anyone or fabricate evidence.

Output

Preview

Your Instagram DM screenshot will appear here.

SVG source
 
Was this helpful?

Guides

Write a conversation, get a phone-sized Instagram direct-message screenshot. The generator draws the whole screen — status bar, username header with the activity line, gradient bubbles for your side, grey ones with the sender's small profile picture for theirs, emoji reactions, the "Seen" receipt and the camera/compose bar — and hands it back as an SVG you can download or paste straight into a slide.

Everything runs in your browser. The photo you upload never leaves the page, and there's no account, watermark or export limit.

How to use it

  1. Set the username and the activity line ("Active now", "Active 2h ago", or empty to hide it).
  2. Optionally upload a profile photo — skip it and the contact's initials are drawn instead.
  3. Type the conversation, one message per line.
  4. Adjust the appearance, bubble colour and receipt, then download the SVG.

Writing the conversation script

One line per message, with a short prefix deciding which side it lands on:

--- TODAY 09:12
them: Did you see the new post? ^❤️
me: Just liked it 😄
me: The second shot is unreal | 09:14
  • me: (or you:, sent:, >) is your side — the gradient bubble on the right.
  • them: (or contact:, received:, <) is the other person. A line with no prefix is treated as theirs, so a pasted transcript still renders sensibly.
  • A line starting with --- becomes a centred date/time separator.
  • | 09:14 at the end of a line adds a timestamp under that message.
  • ^❤️ at the end adds a double-tap reaction pill on the bubble.

Keeping the whole conversation in one text field is why a DM mockup here survives a shareable link, a saved preset and an API call — there are no repeater rows to re-click.

Settings

  • Appearance — light or dark, matching Instagram's two themes.
  • Your bubble colour — the blue→purple gradient, flat blue, or grey.
  • Receipt — Seen, Delivered, Sent or none, under your last message.
  • Typing indicator — the three-dot bubble on the contact's side.
  • Scroll position — the screen is a fixed phone-sized frame, so a long conversation scrolls; 0 shows the beginning, 100 the latest messages.

Is the image real?

No — it's a mockup, and it should be labelled as one. It's meant for product mockups, tutorials, slide decks, memes and parody. Don't present a generated screenshot as a real conversation, impersonate anyone with it, or use it as evidence.

Related tools

Mocking up a different app? The WhatsApp Chat Generator and iMessage Chat Generator use the same script format with each app's own chrome. For a feed post rather than a DM, use the Instagram Post Generator.

instagram dm generatorfake instagram messagedirect message mockupchat mockupscreenshot generatorconversationsocial media

Use it from code

From 3 credits per call

REST API

curl -X POST https://api.iotools.cloud/v1/tool/instagram-dm-generator \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "alexmorgan",
    "activity": "Active 2h ago",
    "script": "--- TODAY 09:12\nthem: Did you see the new post? …",
    "theme": "light",
    "bubble": "gradient",
    "receipt": "seen",
    "activeDot": "true",
    "typing": "",
    "statusTime": "9:41",
    "placeholder": ""
  }'

Swap in your own key from your account. The tool's fields are the body — no wrapper.

Ask an AI agent

Use the IOTools `instagram-dm-generator` tool (Instagram DM Generator) on this input:

YOUR_INPUT_HERE

Paste this at any agent connected to the IOTools MCP server, then add your input.

Love the tools? Lose the ads.

One payment clears every ad from your account, for good. No subscription, no tracking.