How to Download All the Videos on Your YouTube Channel
1) Get all URLs. 2) Download Videos from URLs
SUMMARY:
Are you like Angela, at ParkRose Permaculture, who has a lot of videos on your YouTube Channel, but doesn’t have your own copies of the videos? Under pressure, you might rightly fear that if something happens to your channel, you may lose all your videos!
Here are instructions to download backups of all the videos on your YouTube Channel:
How to Backup a YouTube Channel:
Get List of All Video URLs: Example: ParkRose Permaculture: 5,315 URLs

DETAIL:
Mac YouTube Download: Downie
If you want to download YouTube videos, and have a Mac, check out “Downie” by Charlie Monroe Software2 (no relation). In addition to supporting YouTube videos, Downie also downloads videos from other sites, such as Vimeo, Twitch, TED, Rumble, X, Facebook, and Instagram.
One important thing about Downie is that it accepts a list of video URLs, so that you can download multiple URLs in one batch.
How to Generate a List of Videos
WARNING: This next section is more technical. I ran this process manually for Parkrose Permaculture so they don’t have to bother with this step.3
Here’s a series of Gemini prompts I used to generate a list of “Parkrose Permaculture” videos:
Command-line Tool: yt-dlp
If you need a complete, structured dataset of all her video URLs for a project, your best bet is to use a free command-line tool like yt-dlp to extract the metadata yourself. Running a simple command like this in your terminal will output a text file of every URL in just a couple of minutes:
yt-dlp --flat-playlist --print url https://www.youtube.com/@ParkrosePermaculture > videos.txt
# Slow down request using “sleep” to avoid YouTube limiting how many videos can be retrieved:
yt-dlp --flat-playlist --sleep-requests 1 --print url https://www.youtube.com/@ParkrosePermaculture > all_parkrose_videos.txt
Result: all_parkrose_videos.txt
How To Download Videos
Once you have that text file listing all video URLs, you can easily split it into batches of 100 using any basic text editor or spreadsheet tool.
About Me:
I’m Tim Langeman. I live in Lancaster County, PA. As part of my work on a passion project called CiteIt, I learned how to handle YouTube videos programmatically using the python yt-dlp library featured in this article. My CiteIt app enables writers to build trust and educate readers by automatically looking up the context of writers’ quotations on websites, in YouTub transcripts, and PDF5 quotations (Demo). I hope to pitch the App to Substack so that every Substack writer can easily show their readers the context of their citations.
If you’re interested in getting a personal demo of the WordPress version of the App, feel free to send me an email: contact@citeit.net
P.S. I also run a Substack site: writing.openpolitics.com
FOOTNOTES:
If you have experience using a similar Windows tool or script provide a link into the comments.
I have no connection to Charlie Monroe Software and I receive no money from them. I just found their software useful and easy to use. It is also possible to generate a list of videos from the command line but many people do not know how to install python modules like yt-dlp.
Let me know whether there would be demand for me to setup an automated service to generate a list of all your YouTube Channel’s video URLs. Would people be willing to pay for this? How much would this be worth? I did this for free for ParkRose Permaculture, but it required manual processing. Is it worth it for me to automate this for anyone who wants?
Start out by downloading one video at a time, then increase the batch size to 10, 100, 500, 1000. Figure out how long the downloading process takes at each step and then spot check that the downloaded videos are correct. Then increase the batch size. You don’t want to overwhelm you computer by requesting 5000+ videos at the outset.
PDF support is not yet mature, but the App is designed to quote from digital text PDFs generated by computer, as well as PDFs scanned from images.


