The chat-bubble-on-a-photo look is everywhere: meme captions styled as texts, story posts that "quote" a conversation, album art and edits where a floating blue bubble says the thing the photo can't. Screenshot-and-crop gets you a flat gray rectangle; Zebra's chat bubble tool gives you the real thing — an iMessage-style bubble with a tail, rendered over your photo, with every part of it editable. Free, in-browser, full resolution out.

Three steps

  1. Open the chat bubble tool and upload a photo.
  2. Click Add bubble, then type your text in the panel. Drag the bubble to wherever it should sit.
  3. Adjust colors, size, and the tail, then hit Download.

Each bubble you add is its own object: click one to select it, and the panel edits just that bubble. Add as many as you need — a whole fake conversation stacks up naturally, alternating left-tail and right-tail bubbles.

Everything you can change

  • Text — any text, multi-line included. Alignment inside the bubble: left, center, or right.
  • Font size — 10 to 48 px, with a separate scale control (30–400%) that resizes the whole bubble, so you can make a tiny whisper or a poster-sized statement.
  • Rotation — −180° to +180°. A few degrees of tilt makes a bubble look pasted-on in a good, sticker-ish way.
  • Tail direction — left or right. In iMessage grammar, a right tail means "sent," a left tail means "received." Flip it per bubble to build a two-sided conversation.
  • Bubble color — the classic set is one tap away: iMessage blue, SMS green, white, black, gray. Or open the color picker and type any hex value.
  • Text color — same presets plus the free picker. White-on-blue reads "sent iMessage"; black-on-gray reads "received."
  • Duplicate & delete — clone a bubble with all its settings (handy for keeping one side of a conversation consistent), or remove it.
  • Position — drag any bubble anywhere on the photo. Nothing snaps to a grid; you place it exactly.

The classic recipes

  • Sent iMessage: blue bubble (#0e7afe), white text, tail right. This is the tool's default — add a bubble and you already have it.
  • Received message: gray bubble, black text, tail left. Stack it above or below the blue one for a conversation.
  • Green SMS: green bubble (#34c759), white text. The "they don't have an iPhone" punchline built into a color.
  • Custom meme caption: black bubble, white text, scale pushed up to 200%+, slight rotation. Reads as a sticker, not a screenshot.

A fake conversation is just these stacked: received gray at top left, sent blue below right, repeat. Because each bubble keeps its own settings, duplicate is faster than rebuilding — clone the last blue bubble, drag it down, change the text.

Why not just screenshot a real chat?

You can — but the screenshot locks everything in. The text can't be edited afterward, the bubble sits on a white app background instead of your photo, resolution is capped at your screen, and cropping around the bubble leaves ragged edges. Rendering the bubble on the photo directly means full-resolution output, any placement, any color, and text you can revise five times without retyping the conversation in a messages app.

What it's good for

  • Meme captions — the floating bubble is the caption format of the moment; a rotated black bubble on a chaotic photo carries the joke.
  • Story and post edits — "quote" a message over the photo it's about, without exposing a real chat screenshot.
  • Invitations and announcements — a blue bubble saying "we're getting married 💍" over an engagement photo.
  • Album art and covers — a single bubble on a portrait is a whole aesthetic.
  • Product shots with a voice — a bubble saying the one-line pitch, pointed at the product.

For longer captions or decorative typography — curved text, outlines, spirals — the draw-text tool is the better fit; bubbles are for speech. And if the photo needs framing before the bubble goes on, crop it first so the composition is final when you start placing things. For labeling who's who in a photo rather than who said what, that's tag stickers — same idea, different sticker.

Common questions

How do I put an iMessage bubble on a photo?
Open the chat bubble tool, upload the photo, and click "Add bubble" — the default is already an iMessage-style blue bubble with white text and a right tail. Type your text, drag it into place, download. Free, no signup.
Can I add more than one bubble?
Yes — click "Add bubble" as many times as you want. Each bubble is independent: its own text, colors, size, rotation, and tail. Click any bubble to select and edit it, or duplicate an existing one to keep a conversation's style consistent.
Can I make the bubble any color, not just blue or green?
Yes. The presets cover the classics — iMessage blue, SMS green, white, black, gray — and a color picker next to them accepts any custom color for both the bubble and the text.
How do I make it look like a received message instead of a sent one?
Switch the tail to the left and set the bubble to gray with black text. Right tail + blue is "sent"; left tail + gray is "received" — that's the iMessage convention.
Does the download lose quality?
No — the bubbles are rendered onto your photo at its native resolution and the result saves at full size. PNG inputs save back as PNG; other formats save as JPG.
Does it work on a phone?
Yes, in any modern mobile browser — dragging bubbles works with touch. If you make these edits often, the iOS app has the same bubble editor.