Meme Generator
Meme generator: caption any image or GIF with any number of draggable text boxes, 8 fonts and 19 blank templates. Saves PNG, JPG or animated GIF. No upload.
Drop an image or GIF here or click to browse
Drag a caption on the picture to move it, or use the arrow keys.
Saved at 600 × 498px
🔒 Made entirely in your browser — no upload, no account, no watermark.
Every caption is its own box
Drop in a picture or an animated GIF — or start from one of the blank templates — and type your captions. Each caption is its own box: drag it on the canvas or nudge it with the arrow keys (hold Shift to move further), add as many as the meme needs, and remove the ones you do not. A picture opens with the familiar pair, one across the top and one along the bottom, and every caption starts in the classic look — uppercase Impact, white fill, thick black outline. Long captions wrap to the width of their own box, and if one ends up drawn outside the picture the page says which one instead of quietly cropping it. Everything happens in your browser, so your image is never uploaded to a server.
Nineteen blank templates
No picture to hand? The library holds 19 blank grounds: eight solid colours and four
gradients at 600 × 498, four panel layouts (two-panel, three-panel, a 2 × 2 grid and side-by-side), and
the three shapes people post to — 1080 × 1080 square, 1080 × 1920 story and
1920 × 1080 widescreen. Search them by name, by keyword or by pixel size, so typing
1080 narrows the list to the square and the story. A panel template opens with one caption
already centred in each panel. Nothing is downloaded for a template — each one is a handful of numbers
drawn at export time, so a story template really is exported at 1080 × 1920. They are blank canvases and
layouts, not the famous photographs: those are hosted under licence elsewhere, so bring your own picture
for one of those.
Styling each caption
Select a caption and it gets its own controls: typeface — Impact, Arial, Verdana, Courier New, Comic Sans MS, Times New Roman, Georgia, and a Hangul gothic stack, because Impact has no Hangul glyphs at all — plus size, horizontal and vertical alignment, bold, italic, uppercase, text colour, outline colour, outline width, a drop shadow drawn in the outline colour, opacity, and the width and height of the caption's own box. The typefaces are font stacks, not downloads: nothing is fetched, so a caption appears the moment it is typed and the tool still works offline. Positions and sizes are kept as fractions of the finished picture, so what you drag on the preview lands in exactly the same place in the file you save, whatever size it is exported at.
The picture, and text outside it
A loaded picture can be rotated a quarter turn either way, flipped across or down, and turned greyscale, sepia or blurred, with one button to put all of it back. If you would rather the words sat off the picture instead of over it, the caption bar adds a band above it, below it or both, with a height from 5% to 60% and a colour of your choosing. Because captions are positioned against the whole canvas, a caption at the top drops into the bar as soon as the bar exists.
PNG, JPG, or a GIF that still moves
Save as PNG, JPG or GIF. An animated GIF is decoded in the page — this tool carries its own GIF reader, down to the LZW bitstream, interlacing and all four disposal methods — every frame is captioned, and it is written back with each frame's own delay and its loop flag, so the result still animates instead of collapsing to a still. Use the original image resolution is on by default, so a photo saves at its own pixel size; turn it off to export 600px wide. Past about 16 million pixels a canvas comes back blank on iOS Safari, so the export is scaled down and the page says so rather than handing you an empty file.
Why make memes locally
Most online meme makers upload your image to their servers, stamp on a watermark, or gate the download behind a sign-up. Here the whole thing runs on your device: no watermark, no account, no upload, and it keeps working offline. The dashed box around the selected caption is a handle for you and is never drawn on what you download. Pictures up to 40 MB are taken by drop, by the file picker, or by pasting one straight from the clipboard.
Frequently asked questions
Is my image uploaded anywhere?
No. The image you pick and the finished meme are drawn entirely in your browser on a canvas. Nothing is sent to a server, so it works offline and stays private.
Is there a watermark?
No. The PNG you download is exactly what you see on the canvas — no watermark and no sign-up required.
What font does it use?
The classic meme look uses Impact (falling back to a condensed bold sans-serif if Impact is not installed), rendered in uppercase with a black outline and white fill.
Can I make a meme without a photo?
Yes. There are 19 built-in backgrounds — 11 solid colours, 4 gradients and 4 panel layouts — and you can add as many captions as you like on any of them.
Can I caption an animated GIF and keep it moving?
Yes. Drop the GIF in, choose GIF as the format, and every frame is captioned — the animation is decoded in the page itself and written back with each frame's own delay and its loop flag, so the result still moves. It reads up to 300 frames, and up to 40 million pixels of them; a longer animation is refused out loud and its first frame used as a still, rather than quietly giving you a shorter GIF. Export is capped at 60 million pixels in total (frames × width × height) — turn off “Use the original image resolution” if you hit it.
Can I add more than a top and a bottom caption?
Yes. “Add caption” adds another, with no fixed limit. Each caption is its own box: drag it on the canvas or nudge it with the arrow keys (hold Shift to move further), and give it its own font, size, colours, alignment and box size. The panel templates open with one caption already placed in each panel.
Can I put the text above or below the picture instead of over it?
Yes. Set the caption bar to Top, Bottom or Top & bottom and a band is added outside the picture, with a height from 5% to 60% and a colour you pick. Captions are positioned against the whole canvas, so a caption at the top drops into the bar as soon as the bar exists.
Can I use a font other than Impact, and does Korean text work?
There are eight typefaces: Impact, Arial, Verdana, Courier New, Comic Sans MS, Times New Roman, Georgia, and a Hangul gothic stack. Pick the gothic one for Korean — Impact has no Hangul glyphs at all, so Korean set in Impact is drawn by whatever face the browser substitutes. They are font stacks rather than downloads, so nothing is fetched and the tool still works offline.
What can I save as, and at what size?
PNG, JPG (written at quality 0.92) or GIF. “Use the original image resolution” is on by default, so a picture saves at its own pixel size; turn it off to export 600px wide. Above about 16 million pixels the canvas is scaled down — iOS Safari paints a larger one blank — and the page tells you when that happens. MP4 is not offered.
Can I rotate, flip or recolour the picture?
Yes, once a picture is loaded: rotate a quarter turn either way, flip it across or down, and apply greyscale, sepia or a blur from 0 to 12. “Reset picture” puts all of it back at once. Cropping and extra image layers are not part of this tool.