
The group-chat reply
A photo everyone already knows, plus four words, sent before the conversation has moved on.
Your photo in · A bubble that fits the frame · Text that stays readable
Turn your photo into the joke people remember: give the subject a voice and post the punchline before the moment passes, with type that actually reads.
Drag the divider on this real Kavel run and watch the joke snap into place: the bubble takes the open upper-left space, the tail finds the cat, and the line reads at a glance.


Drag to compare before and after
It takes a photo you already have and adds a classic comic balloon, a trailing thought bubble or a jagged shout burst carrying whatever line you want, so the subject appears to be saying it. The format is old — it is the oldest joke on the internet — but the tools for it split into two disappointing halves, and that split is the reason this page exists.
Classic meme sites want an account before the download button works; real editors want five minutes of placing shapes, picking fonts and nudging a tail for a joke with a shelf life of about an hour. This studio gives you the speed of the first with the polish of the second, in the browser on free credits.
Upload the photo, type the line you want in the bubble, and the credit estimate updates before you commit.
Creative engine
Upload a photo with some empty space, type the line, and the credit estimate updates before you generate.

Bold black comic text inside a clean white bubble with a crisp outline, readable at the size people actually view it. Text is where most image tools fall over, and a short punchline here comes back ready to send.

It runs in the browser with free credits: no editor, no layer panel, no font hunting before you see a result. Keeping the line short does more for legibility than any setting, because a bubble grows to fit and the picture does not.
It is one pass over a photo you already have, the same as the beams in AI pet laser eyes, the exaggeration in the caricature generator, or the felt rebuild in the muppet generator.
From your own photo to a posted joke, with the cost shown before you commit.
Leave a corner of plain wall, sky or floor free. That gap is where the bubble goes, and a frame packed edge to edge leaves nowhere to put it.

Keep it short — a handful of words renders crisply — and make the joke sound the way it feels: a thought bubble, a shout burst, a manga bubble. Say where you want the bubble and who the tail should point at if the photo has more than one subject.

Generate and post it. A failed run is refunded unless it broke the content policy, so you only spend credits on the memes that actually come back.

Land the group-chat reply before the chat moves on, give a recurring character its signature voice, or turn a card or slide into the bit everyone remembers.

A photo everyone already knows, plus four words, sent before the conversation has moved on.

Give the recurring character a voice without paying an editor's five minutes for every post.
An inside joke printed on a birthday card, or the one slide in the deck that wakes the room up.
Common questions about captioning a photo with Kavel.
Paid plans unlock the clean original — the same meme with nothing on it. Free runs carry only a small corner mark, never across the picture and never over your bubble.
For a short line, yes — the demo on this page is a real run and the caption reads cleanly. Short punchlines are where this tool wins: keep the line tight and you get clean comic lettering that reads at a glance.
In the emptiest part of the frame, with the tail pointing back toward the subject. You can direct it — say upper left, or say which person should be speaking — and it will follow that. What it cannot do is invent space in a photo that has none.
Yes, if the photo has room for them and there are separate subjects to attach them to. Two people having a two-line exchange works. Six bubbles on a group photo is asking for trouble; build that one up over a couple of runs instead.
Yes — describe it. A thought bubble with trailing circles, a jagged shout burst, a rounded manga bubble, a black bubble with white text. The default is the plain white comic bubble with a black outline because it reads at any size.
Any photo with somewhere to put the bubble. Portraits, pets, screenshots and product shots all work. Very dark images can make a white bubble sit oddly, and a heavy crop that fills every pixel with subject leaves the bubble nowhere to go but over a face.
The estimate shows before you generate and moves with the format and resolution you pick, so you know the cost first. Failed runs are refunded automatically unless they broke the content policy, and new accounts start with free credits — enough to caption a few photos before spending anything.
Technically yes, and it is worth a second of thought first. Putting words in a real person's mouth is the one way this format goes wrong — a friend who will laugh is fine, a stranger or a public figure is a different thing. The content policy applies to what you generate here either way.
Credits are shared across everything Kavel runs. You see the cost before each run, and a failed job is never charged.
Pay safely and securely with
Payments are processed by Stripe over an encrypted checkout. Your card details are handled by Stripe and are never stored by Kavel.
Keep the punchline short and it lands in clean comic lettering built to read at posting size. Start free with enough credits to caption your first few photos, and get it into the frame before the moment passes.