Get a YouTube Thumbnail
To get a YouTube thumbnail, you need exactly one thing out of the link you copied: the 11-character video ID. Everything else in that link — the host, the playlist, the timestamp, the extra parameters — is ignored. We measured that on 5 October 2026: 11 different link shapes were reduced to an ID by one rule, and every shape that named the same video came back with the same file, SHA-1 identical. The same day, every near-miss ID — upper case, an underscore where a hyphen belongs, one character short — came back as a 404 with a 1,097-byte grey square. And across a fresh sample of 12 public videos, the big 1280 × 720 file was there for only 10 of them. So the part people get wrong is almost never the tool. It is the 11 characters, and which of the file names you ask for.
The only thing you need out of the link
- Find the 11 characters. A video ID is 11 characters drawn from letters, digits, hyphen and underscore. It is the only variable in the whole request; get it right and the rest is a choice of file name.
- Paste it into one URL shape.
https://img.youtube.com/vi/<video-id>/<file-name>.jpg. That is the same host that serves the picture on the video's own page — you are not copying anything out of a video, you are asking for a file that already exists. - Then pick which file. The 11 characters decide which video; the file name decides what you actually get, and for some videos some of those names do not exist. That is the whole of it.
Eleven ways people paste the same video — one rule, one result
These are the shapes a link realistically arrives in: copied from an address bar, from a share sheet, from a playlist link, from an embed, from a phone. For each one the ID was pulled out by a single rule, then requested:
| What you copied | ID found | Result for maxresdefault.jpg |
|---|---|---|
| plain watch URL | dQw4w9WgXcQ | 200 · 65,324 B · 1280 × 720 |
short youtu.be link | dQw4w9WgXcQ | 200 · 65,324 B · 1280 × 720 |
watch URL + playlist + index + t=42s | dQw4w9WgXcQ | 200 · 65,324 B · 1280 × 720 |
watch URL with app=desktop&feature=share | dQw4w9WgXcQ | 200 · 65,324 B · 1280 × 720 |
| mobile host link | dQw4w9WgXcQ | 200 · 65,324 B · 1280 × 720 |
| shorts link | aqz-KE-bpKQ | 200 · 108,323 B · 1278 × 720 |
| embed link | 9bZkp7q19f0 | 200 · 184,051 B · 1280 × 720 |
| live link | jNQXAC9IVRw | 404 · 1,097 B · 120 × 90 |
| bare ID, pasted on its own | dQw4w9WgXcQ | 200 · 65,324 B · 1280 × 720 |
| bare ID with a trailing space | dQw4w9WgXcQ | 200 · 65,324 B · 1280 × 720 |
| bare ID with a trailing newline | dQw4w9WgXcQ | 200 · 65,324 B · 1280 × 720 |
Two things are worth reading out of that table. First, the five shapes that named the same video returned one identical file — same SHA-1 22b4a49d…, same 65,324 bytes, every time. The playlist, the t=42s and the feature=share changed nothing, because none of them is part of the ID. Second, the row that failed did not fail at the parsing step: the live link yielded the correct ID, and the file was the thing missing — that upload has no 1280 × 720 still, which the next section quantifies.
One shape that has nothing to give: a channel link or a bare playlist link contains no 11-character video ID at all, so there is no video to ask the image host about. You need a link that points at one video.
The ID is read literally — every near-miss is a 404
The 11 characters are not normalised, guessed or fuzzy-matched. Measured today against one video, typing anything that is not exactly right returns the same grey miss:
| What was typed where the ID belongs | Result |
|---|---|
| the exact ID | 200 · 108,323 B · 1278 × 720 |
| the same ID in capitals | 404 · 1,097 B · 120 × 90 |
| the same ID in lower case | 404 · 1,097 B · 120 × 90 |
| underscore where the hyphen is | 404 · 1,097 B · 120 × 90 |
| one character added | 404 · 1,097 B · 120 × 90 |
| one character dropped | 404 · 1,097 B · 120 × 90 |
| a space in front | 404 · 1,097 B · 120 × 90 |
| a line break on the end | 404 · 1,097 B · 120 × 90 |
The last two rows are the ones that catch people. A trailing space or an accidental line break is invisible in the box you pasted it into, and the request still goes out — it simply stops matching. And the miss is not a blank: it is a real 1,097-byte JPEG at 120 × 90, so a browser <img> element treats it as a picture that loaded fine. If you got something back and it is tiny and grey, the ID or the file name was wrong, not the video.
Decoration on the end of the URL changes nothing
Thumbnail addresses in the wild often arrive with a query string attached, which leads people to think the string is required. It is not. Same file, four suffixes, measured today:
| Suffix on the image URL | Result |
|---|---|
| nothing | 200 · 65,324 B · 1280 × 720 |
?sqp=…&rs=… | 200 · 65,324 B · 1280 × 720 |
?v=1 | 200 · 65,324 B · 1280 × 720 |
#t=1 | 200 · 65,324 B · 1280 × 720 |
All four returned the same 65,324 bytes and the same dimensions. So a long thumbnail address with a string of encoded parameters on the end can be shortened to the bare name and will still work; conversely, a URL that fails does not fail because you trimmed that string off.
The 1280 × 720 file is not guaranteed — measured on 12 videos
This is the number that matters most for anyone trying to get a thumbnail rather than a small copy of one. Twelve public videos, five standard file names each, all requested on 5 October 2026:
| Video ID | maxresdefault | hq720 | sddefault | hqdefault | default |
|---|---|---|---|---|---|
dQw4w9WgXcQ | 200 · 65,324 B · 1280 × 720 | 200 · 65,324 B · 1280 × 720 | 200 · 31,029 B · 640 × 480 | 200 · 21,011 B · 480 × 360 | 200 · 2,888 B · 120 × 90 |
kJQP7kiw5Fk | 200 · 82,327 B · 1280 × 720 | 200 · 82,327 B · 1280 × 720 | 200 · 40,116 B · 640 × 480 | 200 · 25,889 B · 480 × 360 | 200 · 3,963 B · 120 × 90 |
fJ9rUzIMcZQ | 404 · 1,097 B | 404 · 1,097 B | 404 · 1,097 B | 200 · 23,549 B · 480 × 360 | 200 · 2,948 B · 120 × 90 |
JGwWNGJdvx8 | 404 · 1,097 B | 404 · 1,097 B | 200 · 62,587 B · 640 × 480 | 200 · 58,804 B · 480 × 360 | 200 · 7,043 B · 120 × 90 |
RgKAFK5djSk | 200 · 167,787 B · 1280 × 720 | 200 · 167,787 B · 1280 × 720 | 200 · 54,089 B · 640 × 480 | 200 · 14,239 B · 480 × 360 | 200 · 2,612 B · 120 × 90 |
OPf0YbXqDm0 | 200 · 96,758 B · 1280 × 720 | 200 · 96,758 B · 1280 × 720 | 200 · 42,935 B · 640 × 480 | 200 · 28,637 B · 480 × 360 | 200 · 3,992 B · 120 × 90 |
hTWKbfoikeg | 200 · 45,768 B · 1280 × 720 | 200 · 45,768 B · 1280 × 720 | 200 · 21,475 B · 640 × 480 | 200 · 14,490 B · 480 × 360 | 200 · 2,299 B · 120 × 90 |
60ItHLz5WEA | 200 · 66,726 B · 1280 × 720 | 200 · 66,726 B · 1280 × 720 | 200 · 23,038 B · 640 × 480 | 200 · 12,609 B · 480 × 360 | 200 · 1,506 B · 120 × 90 |
CevxZvSJLk8 | 200 · 77,033 B · 1280 × 720 | 200 · 77,033 B · 1280 × 720 | 200 · 36,987 B · 640 × 480 | 200 · 23,193 B · 480 × 360 | 200 · 3,820 B · 120 × 90 |
YQHsXMglC9A | 200 · 70,149 B · 1280 × 720 | 200 · 70,149 B · 1280 × 720 | 200 · 25,002 B · 640 × 480 | 200 · 15,600 B · 480 × 360 | 200 · 2,571 B · 120 × 90 |
PT2_F-1esPk | 200 · 98,814 B · 1280 × 720 | 200 · 98,814 B · 1280 × 720 | 200 · 43,307 B · 640 × 480 | 200 · 25,917 B · 480 × 360 | 200 · 2,976 B · 120 × 90 |
lp-EO5I60KA | 200 · 63,535 B · 1280 × 720 | 200 · 94,319 B · 1280 × 720 | 200 · 28,071 B · 640 × 480 | 200 · 20,928 B · 480 × 360 | 200 · 3,261 B · 120 × 90 |
Counted across the twelve: hqdefault answered 12 of 12, sddefault 11 of 12, maxresdefault 10 of 12, hq720 10 of 12. Two of the twelve have no 1280 × 720 file at all. Notice the shape of those two misses, though, because it kills the tidy rule:
- On
fJ9rUzIMcZQ, the 1280 × 720 names and the 640 × 480 name are all gone; the largest file that answered was 480 × 360. - On
JGwWNGJdvx8, the 1280 × 720 names are gone but 640 × 480 answered at 62,587 B — larger than the 480 × 360 file on the video above.
So "if the biggest is missing, go one rung down" is not a rule either. The file names are independent of each other, and the only reliable way to get the largest available copy is to ask for the names and keep whatever returns a real image. Both of those videos are public and play fine; a missing thumbnail file is not a sign that anything is wrong with the video.
Two names, two different files — again
The claim that hq720.jpg and maxresdefault.jpg are one file under two names held for 9 of the 10 videos above where both answered — the same 1280 × 720 label and an identical SHA-1. On the tenth it did not: lp-EO5I60KA returned 63,535 B for maxresdefault and 94,319 B for hq720, both labelled 1280 × 720, 30,784 bytes apart. Two names, same label, different files. The practical rule is unchanged from what that means: ask for both and keep the larger, or read the byte count and decide. A tool that treats the two as aliases and skips one can silently hand you the smaller picture.
What getting the file does not give you
Saving the bytes is the easy part. What comes down is the still the uploader published with the video — a file the host serves — not a frame of your choosing and not something extracted from the video. Your own uploads are yours. For someone else's, treat a saved file as reference material unless you have permission, and check what your jurisdiction allows before you republish it. Nothing on this page stores, mirrors or re-hosts any thumbnail. This is not legal advice.
Questions people actually ask
"I pasted the link and got a grey square with a tiny picture on it — did the video get taken down?"
Almost certainly not. That square is a 1,097-byte JPEG at 120 × 90, and it is what the host returns for a name it does not have. Two of the twelve public videos measured today answered exactly that way for the 1280 × 720 names while playing normally. Ask for hqdefault, which answered for all twelve, and check the status code rather than the picture.
"Do I have to use the full watch link, or does the short one work?"
Both work, and they give you the same file. Eleven link shapes were measured today — long, short, mobile, embed, shorts, playlist-laden, and a bare ID — and every shape naming the same video produced one identical file, same SHA-1. All you are doing is finding the same 11 characters.
"My thumbnail address has a long ?sqp= thing on the end — will it break if I delete it?"
No. Same URL with the query string, with ?v=1, with a fragment, and with nothing at all returned the same 65,324 bytes and the same 1280 × 720 dimensions. The extra string is not part of what identifies the file.
"Can I get the thumbnail from a playlist or a channel page?"
Not from those on their own — there is no 11-character video ID in a channel link or a bare playlist link, so there is no video for the image host to answer about. Open one video and take the ID from that link.
"Why did one video give me a bigger file for hq720 than for maxresdefault?"
Because they are not always the same file. Nine of ten videos measured here returned identical bytes under both names; one returned 94,319 B for hq720 against 63,535 B for maxresdefault, both labelled 1280 × 720. Requesting both and keeping the larger is the only rule that survived the sample.
All figures on this page were measured on 5 October 2026 by requesting each URL directly from img.youtube.com and recording the HTTP status, byte count, Content-Type, Cache-Control and Access-Control-Allow-Origin, hashing the response body, and reading pixel dimensions out of each downloaded file's own JPEG header. The 12-video sample counts a video as valid when its hqdefault.jpg answered 200 with a real image, which all twelve did. Videos are named by ID only: no titles, channel names or links to videos appear here, and none of the pictures are hosted on this site. Different videos return different numbers — that is the reason for measuring rather than listing.