Last active
September 3, 2025 00:58
-
-
Save hunderslash/664ee2b8773699527683380abf8f7603 to your computer and use it in GitHub Desktop.
twitch.tv direct clip URLs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Note: | |
| The Stream ID is typically 11-12 digits long, and is divisible by 16. | |
| It can be found fairly easily using sites like sullygnome.com (better for 2015-2017 streams), and twitchtracker.com. | |
| The VOD ID is 8-10 digits long, and sometimes shows up in clips-media-assets2.twitch.tv urls. | |
| The Streamer ID is a numerical identifier for the streamer in question. | |
| Format 1: | |
| https://clips-media-assets2.twitch.tv/[Stream ID]-index-0000000000.mp4 | |
| These clips were created from May/June to August 2016. | |
| The clip URLs increment with padding, so something like | |
| https://clips-media-assets2.twitch.tv/[Stream ID]-index-0000193842.mp4 | |
| would also be valid. | |
| Format 2: | |
| https://clips-media-assets2.twitch.tv/[Stream ID]-offset-0.mp4 | |
| This format was used from August/September 2016 onward. | |
| The url does not use padding, so | |
| https://clips-media-assets2.twitch.tv/[Stream ID]-offset-999.mp4 | |
| is a valid url, where | |
| https://clips-media-assets2.twitch.tv/[Stream ID]-offset-0999.mp4 | |
| is invalid. | |
| Format 3: | |
| https://clips-media-assets2.twitch.tv/vod-[VOD ID]-offset-0.mp4 | |
| This format was introduced mid-August 2016, when clipping from past broadcasts | |
| became available. These clips will have a modify date up to 60 days from the initial broadcast, | |
| since that is the maximum amount of time a VOD stays accessible on site. | |
| I have found clips of this format as old as August 16th, 2016, meaning the earliest clips from | |
| a stream using this format would have aired June 17th, 2016. | |
| Note that this format is very handy for finding the VOD IDs of a twitch stream, since there are | |
| not many reliable ways to do so. | |
| The number syntax for this format is the same as format 2. | |
| Format 4: | |
| https://clips-media-assets2.twitch.tv/[Streamer ID]-offset-0.mp4 | |
| This format uses the Streamer ID in place of the Stream ID, and results in | |
| seemingly random clips from between September 2016 and November 2019. | |
| The offset for the resulting clips is the same as in the initial stream, except there is | |
| no identifier to pair with it, apart from file modify date. | |
| The number syntax for this format is the same as format 2. | |
| Format 5: | |
| https://clips-media-assets2.twitch.tv/AT-cm|[UUID, 9 digits?].mp4 | |
| I am not sure how this ID is generated, but I have only seen it so far in streams from 2020. | |
| I downloaded a sample range of the clips and it appears the number increments with time, with a | |
| higher number being a later date. It would be possible to get all clips from a specific livestream | |
| in this format by finding the range of time a stream aired, and downloading all clips between two | |
| timestamps. It would take more manual filtering though. | |
| Currently twitch is changing a few things with clip urls, so newer clips are formatted a bit differently | |
| and it's harder to brute force clips from a specific stream. These url formats are still useful for older | |
| stream clips though. | |
| Also note, replace .mp4 with -preview.jpg for most of these urls to get the preview image for the clip. | |
| I recommend this method if you want to check all vod clip urls but don't want to download tons of mp4 files. | |
| Make sure you use wget --trust-server-names --timestamping so you aren't downloading the same 404 image a million times. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment