Video Tools

Extract Frame from Video

Scrub to any moment in a video and save that exact frame as a PNG, JPG, or WebP image — free, instant, and entirely in your browser.

Private by default Instant results No signup
Frame GrabberLive
Drop a video file or click to uploadMP4, WebM, MOV, or any video your browser can play
Overview

How does this frame grabber work?

Your video is loaded into a normal HTML video element, which your browser already knows how to decode. Moving the scrubber seeks the video to a precise timestamp, and the tool then paints that single decoded frame onto a canvas at the video's full native resolution. The canvas is exported to a PNG, JPG, or WebP image, so what you download is a pixel-accurate still of the exact moment you selected — not a rescaled screenshot of your monitor.

Guide

How to use it

1Drop in a video file or click to upload one
2Scrub to the moment you want, or nudge frame by frame
3Pick an output format and, for JPG or WebP, a quality level
4Capture the frame and download the image
Why it helps

Features & benefits

Exports at the video's full native resolution
PNG for lossless stills, JPG or WebP for smaller files
Quality slider for JPG and WebP output
Step backwards and forwards a frame at a time
Live canvas preview of the frame you are about to save
100% private — your video never leaves the device

Why this runs entirely in your browser

Uploading a whole video just to keep one frame is slow, wasteful, and hands your footage to a stranger's server. This tool avoids all of that: the file is read locally through an object URL, decoded by the browser's own video pipeline, and drawn to a canvas in the same tab. No bytes are transmitted, which also means the tool works offline and handles large files without any upload wait.

Common uses

Grabbing a thumbnail for a video you are publishing, pulling a clean still for a blog post or slide deck, capturing evidence of a visual bug at an exact timestamp, saving a reference frame for illustration or storyboarding, or extracting a readable frame of on-screen text from a screen recording.

Frequently asked questions

A few things people usually want to know before capturing a frame.

Anything your browser can play natively will work here, because the tool relies on the browser's own decoder rather than shipping its own. In practice that means MP4 with H.264, WebM with VP8 or VP9, and usually MOV files that use H.264. Less common codecs such as HEVC, AV1 on older hardware, or professional formats like ProRes may refuse to load depending on your browser and operating system. If the preview stays blank, the codec is unsupported — converting the clip to MP4 or WebM first will resolve it.

Seeking accuracy depends on the video's keyframe spacing. Browsers seek to the nearest decodable point and then decode forward, so most files land within a frame or two of the timestamp you selected, and many land exactly on it. Videos with widely spaced keyframes — common in heavily compressed exports — can be slightly less precise. The frame-step buttons move by roughly one frame at a time so you can nudge to the exact image you want, and the canvas preview always shows precisely what will be saved.

Choose PNG when the frame contains text, UI elements, or sharp edges, because it is lossless and will not smear fine detail — the trade-off is a much larger file. JPG is ideal for photographic footage where a small amount of compression is invisible, and the quality slider lets you balance sharpness against file size. WebP generally produces noticeably smaller files than JPG at comparable quality and is supported by every current browser, making it a good default for images destined for the web.

The image is exported at the video's intrinsic resolution, not the size of the preview on your screen. A 1920x1080 source produces a 1920x1080 image even though the preview may be displayed much smaller, and a 4K source produces a full 4K still. This matters because a screenshot taken with your operating system captures only the scaled-down player, losing detail. Here, the canvas is sized to the decoded video dimensions before drawing, so nothing is downsampled.

No. The video is never uploaded, stored, or shared. It is read directly from your device using a local object URL, decoded by your browser, and drawn to a canvas inside this tab — no part of the file is transmitted over the network at any stage. That is also why large files load instantly instead of waiting on an upload. Everything is discarded from memory the moment you close or refresh the page, so download any frames you want to keep before leaving.