Skip to content
Convert Filez
Image EditingRuns in your browser6 min readUpdated July 29, 2026

Meme Generator

This meme generator draws top and bottom text onto any photo in the classic white fill with a thick black outline, using the Impact style typeface that has defined the format for two decades. Type the top line, type the bottom line, and the text is sized automatically to fit the width of your image before you download the finished picture.

Loading the tool interface
Files never leave your deviceNo upload wait and no queueNo signup, watermark or file limit

The look of a meme is not arbitrary. White letters with a heavy black stroke read clearly against almost any background, from a dark photograph to a bright screenshot, without needing a solid box behind them. That single design decision from early image board culture is why the style survived while countless other caption formats did not, and it is exactly what this meme generator reproduces.

Nothing about the process touches a server. The photo is decoded in your browser, the two lines of text are measured and drawn onto a canvas at whatever size fits the width you have, and the flattened result is encoded as a PNG file on your own device. A meme generator that works this way has no upload queue, no account wall and no limit on how many images you make in a sitting.

How this meme generator auto sizes the text

Fixed font sizes break the moment an image is narrower or wider than whatever the designer had in mind, so this meme generator measures the actual pixel width of your top and bottom text at a starting size and shrinks it step by step until both lines fit inside the image with a small margin on each side. A short word like 'NO' renders large and bold, while a longer sentence automatically drops to a smaller size that still fits on one line.

If a line is too long to fit even at the smallest readable size, it wraps onto a second line rather than overflowing the edges of the photo or shrinking into something illegible. The height reserved for the top and bottom text blocks adjusts to the number of lines each one needs, so a two line caption does not collide with the photo underneath it.

Why the Impact style stroke exists

The heavy black outline around white letters is not decoration, it is contrast insurance. A caption without a stroke has to gamble on the colour of whatever is directly behind each letter, and on a busy photograph that gamble fails constantly, with some letters vanishing into light patches and others disappearing into shadow. A thick stroke guarantees the text stays readable regardless of what is underneath it, which is the entire reason this rendering approach became the default for the format.

This tool draws the stroke first with strokeText at a width proportional to the font size, then fills the same characters with white on top using fillText, which is the standard two pass technique for outlined text on a canvas.

Choosing a good photo for a meme

None of that is a hard requirement. This meme generator will happily caption any photograph you give it, but a picture chosen with these points in mind produces a result that reads clearly the first time someone glances at it, which is most of what makes a meme land.

  • A clear, high contrast subject reads better than a busy or cluttered background.
  • Leave open space near the top and bottom of the frame for the text to sit without covering the subject.
  • Square or landscape photos usually work better than tall portrait crops, since there is more width for the text to spread across.
  • A recognisable expression or moment is what actually carries a meme, the caption only points at it.

strokeText, then fillText: the whole meme drawn in one canvas pass

Three browser features do the whole job. The File and Image APIs decode the picture you provide, the 2D canvas context measures and draws the two text blocks using strokeText and fillText, and canvas.toBlob encodes the flattened picture as a PNG once you are happy with it. Because everything runs client side, a meme generator built this way can process an image of any size without a server side limit, and it keeps working even if your connection drops after the page has loaded.

Editing and re downloading

Changing either line of text or picking a different photo re draws the whole image from scratch rather than layering a new caption on top of the last export, so there is never a risk of double text or a stale outline left behind from an earlier attempt. That also means you can try several captions on the same photo in quick succession and only download the version you actually want to keep.

People who want to make a meme online usually reach for whatever meme maker loads fastest and asks for the least, and a page that does exactly one job well tends to beat a bloated editor for that kind of quick, occasional task. The classic top and bottom text meme layout this tool produces is instantly recognisable, which is exactly the point when the format itself is doing half the communication.

Think of it as a focused caption generator for one specific, very well known style rather than a general purpose text tool, since the auto sizing, the stroke and the uppercase transform are all tuned for that single look.

How to make a meme

  1. 1

    Add your image

    Drag a photo onto the drop area or click it to choose a PNG, JPG or WebP file.

  2. 2

    Type the top text

    Enter the setup line. It is drawn near the top edge of the image in the classic style.

  3. 3

    Type the bottom text

    Enter the punchline. It is drawn near the bottom edge, sized to match the top line.

  4. 4

    Generate the meme

    Press the button to render both lines onto the photo with the Impact style black outline.

  5. 5

    Download

    Save the finished PNG once the preview looks right.

Related tools worth bookmarking

Sources and further reading

Frequently asked questions

Common questions about the meme generator.

The browser automatically falls back to a font that does have the glyph for that one character while the rest of the line stays in the Impact style, since canvas text rendering follows the same font fallback chain a regular web page uses. An emoji will typically render in full colour, which looks noticeably different from the bold white and black text around it.

The classic layout uses one line at the top and one at the bottom, which covers the vast majority of meme formats. If you need a caption somewhere else on the image, the add text to image tool on this site places a line at any of nine positions with the same font controls.

The traditional choice is Impact, a bold condensed sans serif that was included with Windows for many years and became the de facto meme typeface as a result. This tool uses the same style, falling back to a similarly bold condensed font on systems where Impact itself is not installed.

No. strokeText and fillText both draw directly onto a canvas holding your photo, and the auto sizing loop that measures each line runs in plain JavaScript alongside them, all against data already local to your browser tab. None of that involves a request, so trying several captions in a row never touches the network once.

The meme generator measures how wide your text would be at a large starting size and reduces it step by step until both the top and bottom lines fit within the image with a small margin, so a longer sentence never runs off the edges of the picture.

Yes. A blank field simply is not drawn, so you can make a bottom text only meme, a top text only meme, or use both lines together depending on the joke.

Keep going

More image editing

View the full category