Understanding video thumbnails
One representative frame, one preview image.
What a thumbnail is, the smart-pick algorithms that beat "grab the first frame", and the contact-sheet variant for long videos.
The default is wrong.
The naive thumbnail is "the first frame". For most real videos that's a black screen, a logo, or a title card — useless as a preview. Better defaults: pick a frame N seconds in (10-30 seconds skips intros). Even better: scan multiple candidate frames and pick the one with the most visual interest (highest entropy, most colour variety). The "smart thumbnail" you see on YouTube and Vimeo is doing this scoring per video.
FFmpeg's thumbnail filter.
The built-in heuristic: thumbnail filter scans every N frames and picks the one most different from its neighbours — proxying "this frame is interesting". ffmpeg -i in.mp4 -vf "thumbnail=100" -frames:v 1 out.png examines 100-frame batches and picks the standout from each. Useful when you have no editorial input on which frame to use and want better than first-frame.
A worked thumbnail.
A 30-minute lecture, target a single representative thumbnail. Three strategies. Strategy 1: poster frame at t=120s (assumes the intro ends by then) — ffmpeg -ss 120 -i in.mp4 -frames:v 1 thumb.jpg. Strategy 2: smart thumbnail — ffmpeg -i in.mp4 -vf "thumbnail" -frames:v 1 thumb.jpg. Strategy 3: explicit timestamp from a user's pick. Pick strategy 1 for bulk processing; 2 when there's no editorial; 3 when there is.
Poster frame at fixed timestamp
-ss 120 -frames:v 1
Seek 120s in, take one frame, stop.
ffmpeg -ss 120 -i in.mp4 -frames:v 1 thumb.jpg
= Sub-second runtime
Contact sheets for long videos.
For a 90-minute recording, a single thumbnail can't represent the content. The contact sheet (sometimes called a "preview sprite") is a grid of N×M small thumbnails sampled across the video duration. A 4×6 sheet of 90-minute content is one frame every ~3.7 minutes. The sheet doubles as a navigation aid: hover on a video player's scrubber, see the matching thumbnail. Most video players (Plex, JW, Vimeo) generate these automatically.
Aspect ratio matters.
A 16:9 thumbnail of a 16:9 video looks fine. A square thumbnail forced from a 16:9 source either crops (loses left/right edges) or letterboxes (black bars). Most platforms prefer 16:9 thumbnails at specific sizes (YouTube wants 1280×720 for upload). Generating multiple sizes (1280×720 for the hero, 320×180 for the grid view, 100×56 for the scrubber sprite) is the typical thumbnail pipeline.
The right frame is editorial.
A YouTube thumbnail isn't usually a frame from the video at all — it's a deliberately-designed promotional image with annotations, faces, big text. The frame-grab tool gives you a baseline; for content where the thumbnail matters (anything you're publishing), expect to design it. For internal use (video libraries, course catalogues, archive browsing) the auto-pick is fine.