Hello everyone,
Since several people have been asking how to download Crunchyroll videos, I created this little tutorial.
Please note that this has been tested with Windows.
No support is provided here, for the tools listed.
Usage at your own risk!
IMPORTANT: The usage of a VPN may cause issues.
What you need.
1. Crunchyroll account / subscription - Necessary to download many of the videos
2. FFMPEG - can be found here:
IMPORTANT - Please use FFMPEG from that link.
More info can be found here
3. yt-dlp - can be found here:
4. Your favourite internet browser - Here used Chrome.
5. Link Grabber for Chrome - You can use any other preferred link grabber.
6. Creation of batch files, folders and config.
First steps after downloading the above tools
Once all the tools have been downloaded or installed in the browser.
Please create a folder on your HDD called: yt-dlp.
Within that folder create the folders: batch,cache, downloads, ffmpeg
Extract the yt-dlp.exe into the folder yt-dlp.
Extract the content of the bin in the downloaded ffmpeg archive into the ffmpeg folder that has been created in the yt-dlp folder.
The files in that folder should be as per the below screenshot.

UPDATE: Created a download_menue.bat
The download_batch_file.bat, download_url.bat, check_yt-dlp_update.bat and check_subtitle_language.bat are no longer needed as they are integrated in the menu.
You can go to step CONIFG.TXT.
I am going to leave the creation of the before-mentioned bat files in the tutorial.
ATTENTION: Copy the code 1:1, do not change any of the code if you do not know what it does, as it might render it useless or introduce errors during execution of the files.
Next, create a file download_batch_file.bat in the yt-dlp folder, copy and paste the below code via notepad or notepad++ and save the bat file.
Next, create a file called download_url.bat in the in the yt-dlp folder, copy and paste the below code via notepad or notepad++ and save the bat file.
CONIFG.TXT
Create a file called config.txt in the yt-dlp folder.
Copy and paste the code below into the config.txt and save it.
Please note that comments have been added to the config for easier understanding, please do not remove any of the #s in the file. The only # than can be removed is the one in front of #--verbose.
What does the config file do?
It provides settings for the files that will be downloaded such as the naming convention, video quality, subtitle language etc.
The naming of the files is as per config and will create a subfolder in the downloads folder with the name of the content, the name of the season and the name of the episode.
Files will be saved as MKV with subtitles and certain metadata embedded as per the config file above.
You can adjust the config file to your needs, information regarding the commands can be found here
Once all files and folders have been created your yt-dlp folder should look like this:

Please note the folder called "cache" is no longer required, the standard cache folder of yt-dlp is used now as problems have been reported.
Now you’re ready to download depending on how you want to download.
If you go by URL, you just need to copy the URL to download double click on the download_url.bat and paste the URL, hit enter and wait till it’s finished.
Kindly note that you need to log in to Crunchyroll with your browser for the cookies to be created before you can download content.
If you prefer to download in batches open your preferred browser.
Go to the content that you want to download and copy the links into a txt file.
Save the txt file in the folder batch, for example, my_favourite.txt
After you’re done double click on download_batch_file.bat and enter the name of the batch file that you want to download in this example my_favourite.txt
To make it easier with copying links use Link Grabber or your favorite link extraction tool.
Extract the links you need and save them in a txt file in the folder batch.
Remember the name of the file as it is needed when you double-click on the download_batch_file.bat
Please find below additional batch file contents for updating yt-dlp and for checking available subtitle languages.
Create a file called check_yt-dlp_update.bat copy and paste the code via notepad/++ into the file and save it
Create a file called check_subtitle_language.bat copy and paste the code via notepad/++ into the file and save it.
Since several people have been asking how to download Crunchyroll videos, I created this little tutorial.
Please note that this has been tested with Windows.
No support is provided here, for the tools listed.
Usage at your own risk!
IMPORTANT: The usage of a VPN may cause issues.
What you need.
1. Crunchyroll account / subscription - Necessary to download many of the videos
2. FFMPEG - can be found here:
Code:
https://github.com/yt-dlp/FFmpeg-Builds/releases
More info can be found here
Code:
https://github.com/yt-dlp/FFmpeg-Builds
3. yt-dlp - can be found here:
Code:
https://github.com/yt-dlp/yt-dlp/releases
4. Your favourite internet browser - Here used Chrome.
5. Link Grabber for Chrome - You can use any other preferred link grabber.
6. Creation of batch files, folders and config.
First steps after downloading the above tools
Once all the tools have been downloaded or installed in the browser.
Please create a folder on your HDD called: yt-dlp.
Within that folder create the folders: batch,
Extract the yt-dlp.exe into the folder yt-dlp.
Extract the content of the bin in the downloaded ffmpeg archive into the ffmpeg folder that has been created in the yt-dlp folder.
The files in that folder should be as per the below screenshot.

UPDATE: Created a download_menue.bat
The download_batch_file.bat, download_url.bat, check_yt-dlp_update.bat and check_subtitle_language.bat are no longer needed as they are integrated in the menu.
You can go to step CONIFG.TXT.
I am going to leave the creation of the before-mentioned bat files in the tutorial.
ATTENTION: Copy the code 1:1, do not change any of the code if you do not know what it does, as it might render it useless or introduce errors during execution of the files.
Next, create a file download_batch_file.bat in the yt-dlp folder, copy and paste the below code via notepad or notepad++ and save the bat file.
Code:
@ECHO OFF
ECHO ======================================================================================================================
ECHO.
SET /P BATCH="[Enter the name of batch file to download ] "
ECHO.
ECHO ======================================================================================================================
ECHO.
yt-dlp.exe --config-locations "config.txt" --batch-file "../%BATCH%"
ECHO.
ECHO =====================================================================================================================
ECHO.
ECHO Done!
PAUSE
EXIT
Next, create a file called download_url.bat in the in the yt-dlp folder, copy and paste the below code via notepad or notepad++ and save the bat file.
Code:
@ECHO OFF
ECHO ======================================================================================================================
ECHO.
SET /P URL="[Enter the video URL of the video to download] "
ECHO.
ECHO ======================================================================================================================
ECHO.
yt-dlp.exe --config-locations "config.txt" "%URL%"
ECHO.
ECHO ======================================================================================================================
ECHO.
ECHO Done!
PAUSE
EXIT
CONIFG.TXT
Create a file called config.txt in the yt-dlp folder.
Copy and paste the code below into the config.txt and save it.
Please note that comments have been added to the config for easier understanding, please do not remove any of the #s in the file. The only # than can be removed is the one in front of #--verbose.
Code:
#Location of the ffmpeg binary
--ffmpeg-location "ffmpeg"
# Print various debugging information
#--verbose
#Suppress HTTPS certificate validation
--no-check-certificate
#Do not bypass geographic restriction via faking X-Forwarded-For HTTP headerDo not bypass geographic restriction via faking X-Forwarded-For HTTP header
--no-geo-bypass
#Write subtitle file
--write-subs
#Languages of the subtitles to download (can be regex) or "all" separated by commas, e.g.
#--sub-langs "en.*,ja". You can prefix the language code with a "-" to exclude it from
#the requested languages, e.g. --sub-langs all,-live_chat. Use --list-subs for a list of available language tags
--sub-langs en-US
#Write video description to a .description file
--write-description
#Subtitle format; accepts formats preference, e.g. "srt" or "ass/srt/best"
--sub-format ass
#Number of fragments of a dash/hlsnative video that should be downloaded concurrently (default is 1)
-N 5
#Maximum download rate in bytes per second
--limit-rate 3.2M
#Video format code
-f "b"
#The paths where the files should be downloaded.
-P "downloads"
#Output filename template
-o "%(series)s/%(season_number)s - %(season)s/%(episode_number)s - %(episode)s.%(ext)s"
#The name of the browser to load cookies from.
--cookies-from-browser chrome
#Containers that may be used when merging formats, separated by "/", e.g. "mp4/mkv".
#Ignored if no merge is required. (currently
#supported: avi, flv, mkv, mov, mp4, webm)
#--merge-output-format MKV
#Remux the video into another container if necessary
--remux-video mkv
#Embed subtitles in the video (only for mp4, webm and mkv videos)
--embed-subs
#default subtitle
--ppa "EmbedSubtitle:-disposition:s:0 default"
#Embed metadata to the video file. Also embeds chapters/infojson if present unless
#--no-embed-chapters/--no-embed-info-json are used (Alias: --add-metadata)
--embed-metadata
#Do not set any "purl" in the video metadata
--parse-metadata ":(?P<meta_purl>)"
#Do not set any "comment" in the video metadata
--parse-metadata ":(?P<meta_comment>)"
#Do not set any "description" in the video metadata
--parse-metadata ":(?P<meta_description>)"
#Do not set any "title" in the video metadata
--parse-metadata ":(?P<meta_title>)"
#Do not set any "episode_id" in the video metadata
--parse-metadata ":(?P<meta_episode_id>)"
#Do not set any "date" in the video metadata
--parse-metadata ":(?P<meta_date>)"
#Do not set any "season_number" in the video metadata
--parse-metadata ":(?P<meta_season_number>)"
#Do not set any "episode_sort" in the video metadata
--parse-metadata ":(?P<meta_episode_sort>)"
#Do not embed the infojson as an attachment to the video file
--no-embed-info-json
#Do not retrieve video comments unless the extraction is known to be quick
--no-write-comments
#Do not embed chapters/--no-embed-info-json
--no-embed-chapters
#Keep the intermediate video file on disk after post-processing
#--keep-video
What does the config file do?
It provides settings for the files that will be downloaded such as the naming convention, video quality, subtitle language etc.
The naming of the files is as per config and will create a subfolder in the downloads folder with the name of the content, the name of the season and the name of the episode.
Files will be saved as MKV with subtitles and certain metadata embedded as per the config file above.
You can adjust the config file to your needs, information regarding the commands can be found here
Code:
https://github.com/yt-dlp/yt-dlp#usage-and-options
Once all files and folders have been created your yt-dlp folder should look like this:

Please note the folder called "cache" is no longer required, the standard cache folder of yt-dlp is used now as problems have been reported.
Now you’re ready to download depending on how you want to download.
If you go by URL, you just need to copy the URL to download double click on the download_url.bat and paste the URL, hit enter and wait till it’s finished.
Kindly note that you need to log in to Crunchyroll with your browser for the cookies to be created before you can download content.
If you prefer to download in batches open your preferred browser.
Go to the content that you want to download and copy the links into a txt file.
Save the txt file in the folder batch, for example, my_favourite.txt
After you’re done double click on download_batch_file.bat and enter the name of the batch file that you want to download in this example my_favourite.txt
To make it easier with copying links use Link Grabber or your favorite link extraction tool.
Extract the links you need and save them in a txt file in the folder batch.
Remember the name of the file as it is needed when you double-click on the download_batch_file.bat
Please find below additional batch file contents for updating yt-dlp and for checking available subtitle languages.
Create a file called check_yt-dlp_update.bat copy and paste the code via notepad/++ into the file and save it
Code:
@ECHO OFF
ECHO ======================================================================================================================
ECHO.
yt-dlp --update
ECHO.
ECHO ======================================================================================================================
ECHO.
PAUSE
EXIT
Create a file called check_subtitle_language.bat copy and paste the code via notepad/++ into the file and save it.
Code:
@ECHO OFF
ECHO ======================================================================================================================
ECHO.
SET /P URL="[Enter the video URL to check available subtitle languages] "
ECHO.
ECHO ======================================================================================================================
ECHO.
yt-dlp.exe --verbose --no-check-certificate --no-geo-bypass --list-subs --cookies-from-browser chrome "%URL%"
ECHO.
ECHO ======================================================================================================================
ECHO.
ECHO Done!
PAUSE
EXIT
Last edited: