Online Tool Store Online Tool Store

Video Thumbnail Maker

Grab a frame from your own video, add a bold headline over it, and check it reads at the small size viewers actually see. Nothing is uploaded.

🔒 This tool runs entirely in your browser. Your files are never uploaded to a server.

Use a line break by typing | where you want one.

Full size

At the size people will actually see it

168 px wide is roughly a YouTube sidebar suggestion. If the headline is unreadable here, it is unreadable where it counts.

168 px

120 px

The video is decoded by your browser and never uploaded, so nothing here depends on a server — but it also means only formats your browser can play will open. A MOV with certain codecs may show a black frame even though the file is fine; if that happens, an exported still from your editor works as the input. YouTube accepts thumbnails up to 2 MB, so the JPEG option is there for when a detailed frame pushes the PNG over.

How to use it

  1. Drop in a video — or an exported still, if your codec will not play.
  2. Scrub to the frame you want. Capture waits for the seek to complete.
  3. Write the headline, using a vertical bar where you want a line break.
  4. Check the small previews, then download PNG or JPEG.

Design at 1280, judge at 168

This is the thing most thumbnail tools get wrong by omission. You upload at 1280 × 720 and you design on a big screen, but almost nobody sees it that way:

upload size          1280 × 720
sidebar suggestion   ~168 px wide   13% of that
dense mobile list    ~120 px wide    9%

At 168 pixels, a headline set at 11% of the height is about 18 pixels tall — readable, but only just, and only if it is short. Four words work; a sentence does not. Both preview sizes are rendered from the same canvas as the export, so what you see is exactly what gets downscaled.

Capturing a frame is not synchronous

The obvious way to grab a frame is to set the video's current time and immediately draw it to a canvas. It does not work, and it fails in a way that looks like a broken tool:

video.currentTime = 12.5
ctx.drawImage(video, 0, 0)   ← draws the OLD frame

video.currentTime = 12.5
await 'seeked'
ctx.drawImage(video, 0, 0)   ← draws frame 12.5

Setting the time only asks the decoder to move; it announces arrival with a seeked event. Draw before that and you copy whatever was last decoded, which on a freshly loaded video is a black frame — the single most common complaint about browser-based frame grabbers. This waits for the event every time.

It also starts a tenth of a second in rather than at zero, because the first frame of a recording is so often a fade from black that defaulting to it would look like the same bug.

Outline, not shadow

Text on a thumbnail sits over a photograph nobody planned around — it might be a bright sky in one frame and a dark interior in the next. A drop shadow only separates text from a light background; a thick stroke in a contrasting colour survives both. The outline here is 14% of the type size with rounded joins, and there is a separate darkening slider for the frame itself, which is the other half of making arbitrary imagery safe to write on.

What running in the browser costs

Nothing is uploaded, so a long video costs no waiting and no privacy. The trade is codec support: you get whatever your browser can decode, and no more. MP4 with H.264 is close to universal; some MOV and MKV files will load their metadata and then produce nothing but black. When that happens the file is not broken — the browser simply cannot read it, and a still exported from your editor works perfectly as the input.

FAQ

Why does the preview show the thumbnail so small?

Because that is the size it will be seen at. A YouTube sidebar suggestion is around 168 pixels wide and a mobile list item can be smaller still. Designing at 1280 and never checking at 168 is how thumbnails end up with four lines of unreadable text — so both sizes are shown together.

What size should a YouTube thumbnail be?

1280 × 720, which is 16:9, and under 2 MB. That is the recommended upload size rather than the display size — it needs to be that large so the downscaled versions stay sharp. The JPEG option is there for when a detailed frame pushes the PNG over the file limit.

Why is my captured frame black?

Either the very first frame genuinely is black — most recordings fade in, which is why this starts a tenth of a second in — or your browser cannot decode that codec. A MOV from a phone or camera can load its metadata while failing to produce pictures. Exporting a still from your editor and using that as the input sidesteps it entirely.

What is the dashed box in the corner?

Where YouTube draws the duration badge. Anything you put there will be covered on the platform, so the guide is on by default as a reminder — it is drawn on the preview and on the export, so turn it off before you download.

Why such a heavy outline on the text?

Because the background is a photograph you do not control. A drop shadow disappears against a busy or light frame; a thick contrasting outline survives almost anything. The outline scales with the type size so it stays proportionate.

Is my video uploaded?

No. The browser decodes it locally and the frame is captured to a canvas in the page. Nothing is sent anywhere, which also means a long video costs you nothing in upload time — only what your machine spends decoding it.

How we compare

Feature Online Tool Store Online thumbnail makers Canva or Photoshop
Grabs the frame from your own video Usually image upload only You export the still first
Shows the real display size
Marks the duration-badge corner
No upload, no account, no watermark Account required
Ready in seconds
Layers, cut-outs, custom fonts, templates
Every video codec Whatever your browser plays Server-side, so broader

Fast, private, and it checks the one thing that actually decides whether a thumbnail works — legibility at the size it gets shown. For layered artwork, cut-out subjects or brand fonts you want a real design tool; bring the frame from here and take it there.

Explore related tools

Embed this tool

Paste this on your own site — it stays free, and every file still stays in your visitor's browser, not yours or ours.