Video Thumbnail Generator
Extract a frame from video and export it as a 1280x720 YouTube-ready PNG, JPG, or WebP. Pick any timestamp, resize to fit, no upload—runs in your browser.
About Video Thumbnail Generator
YouTube creators chase CTR with custom thumbnails, course producers screenshot exact slides at lecture timestamps, marketing teams pull product hero shots from drone footage, and QA engineers grab frames to attach to bug reports. The tedious way: load video in player, scrub to the moment, screenshot, crop the browser chrome out. This tool does it directly: pick a precise timestamp (down to fractions of a second), render the exact pixel-perfect frame, resize it to a delivery-ready preset (Source, 1920x1080, 1280x720 YouTube, 1080x1080 square, 1080x1920 vertical, or any custom size) with aspect-correct contain (letterbox) or cover (crop) scaling, and export as PNG (lossless), JPG (small), or WebP (modern). Everything runs in-browser via HTML5 video and canvas — no upload, no cloud processing, no compression of your source video. Works on MP4, WebM, MOV up to 100 MB. See also our Video to GIF and Video Joiner.
How accurate is the timestamp capture?
You can pick any timestamp down to fractions of a second. Use the slider or type the time in HH:MM:SS format to jump precisely to the frame you need.
Which formats can I export?
You can export the captured frame as PNG (lossless), JPG (smaller file size), or WebP (modern compression). Choose the format that fits your workflow best.
Does the tool compress my original video?
No. The original video stays untouched. The tool only reads the selected frame and renders an image based on the video's original resolution.
Is my video uploaded anywhere?
Everything happens locally in your browser using HTML5 video and canvas. Your video file never leaves your device, ensuring complete privacy.
Can I adjust image quality?
Yes. When exporting to JPG or WebP you can fine-tune the quality slider to balance file size and clarity. PNG export is always lossless.
What's the recommended size for a YouTube thumbnail?
YouTube recommends 1280x720 (16:9), under 2 MB. Most modern videos are recorded at 1080p (1920x1080) or 4K, so the captured frame will exceed those dimensions — that's fine, YouTube downscales automatically. Export as JPG quality 85-92 to stay well under 2 MB while keeping crisp text and clean edges. If you plan to overlay graphics or text later, export as PNG for editing flexibility, then convert to JPG before uploading.

Why is the captured frame slightly different from what I see in the player?
Browser video players often display only keyframes (I-frames) during scrubbing — the in-between B/P-frames are interpolated from neighbors. When you seek to an arbitrary timestamp, the decoder snaps to the nearest keyframe, which may be a few hundred milliseconds away depending on the GOP size (typically 2-4 seconds for streaming-optimized MP4s). For frame-perfect accuracy, encode source videos with shorter GOPs or use editing software like Premiere/Resolve that supports cue-accurate seeking.
Does this work for very long videos like full movies?
Yes for streaming the timeline (seeking is instant via HTTP range requests on the browser), but the 100 MB upload cap rules out feature-length films at typical bitrates. For long content, transcode to a lower bitrate first (around 1-2 Mbps for 1080p) using a tool like Handbrake, then load the smaller file. The thumbnail quality won't suffer because we capture the raw decoded frame, not a re-encoded version.
Can I batch-generate thumbnails at regular intervals?
Not in a single click — this tool focuses on precise single-frame capture. For batch sprite sheets (every 10 seconds across a video) you'd want a dedicated 'video to GIF' or 'extract frames' tool, which we offer separately. As a workaround here: capture each timestamp individually by typing 00:00:10, 00:00:20, 00:00:30, etc., and download between captures. Useful for storyboards or chapter markers.
WebP vs PNG vs JPG — which should I pick?
WebP wins for web uploads — 25-35% smaller than JPG at equivalent quality, supports transparency, decoded by all modern browsers. Use PNG when the thumbnail will be edited in Photoshop or has sharp graphics (UI screenshots, text). Use JPG for compatibility with legacy systems (eBay, old CMS, email attachments) — it's universally supported but slightly bigger than WebP. Quality 88 on WebP usually matches PNG visually at 1/8 the file size.
Can I resize the thumbnail to 1280x720 or other fixed dimensions?
Yes. The Output Size dropdown exports your frame at the exact dimensions you need: Source (native resolution), 1920x1080, 1280x720 (the YouTube thumbnail standard), 1080x1080 square for Instagram, 1080x1920 vertical for Shorts/Reels/TikTok, or any Custom width and height up to 8192 px. The Fit Mode controls how a frame whose aspect ratio differs from the target is fitted: Contain scales the whole frame to fit and letterboxes the remainder (black for JPG, transparent for PNG/WebP so you can composite it over a background), while Cover scales to fill the target and center-crops the overflow with no bars. The reported resolution and the downloaded file always match the chosen target, so you skip a separate resize step. Aspect correction is applied automatically, so anamorphic (non-square-pixel) sources are exported un-squished at their true display proportions.
How do I get a frame-accurate screenshot from a video?
Browser seeking lands on the nearest decodable point near your timestamp, which for long-GOP MP4 can be a few hundred milliseconds off. To hit a specific frame: type an exact time in the timestamp box (the field accepts decimals like 00:01:23.5 or plain seconds like 83.5), nudge in small steps and re-capture, or seek with the slider then click 'Use current playback time' to lock the player's exact position. For true single-frame stepping, encode the source with a short GOP (keyframe every 1 second or all-intra) before loading it here, or use an NLE like Premiere/Resolve that supports cue-accurate seeking. If a capture comes back blank, the codec (often ProRes or HEVC inside a MOV) isn't decodable in your browser — re-wrap or transcode to MP4 (H.264) or WebM (VP9) first.
