Day 12 – Building My YouTube Transcript Fetcher
Overcoming YouTube's anti-bot system (part 2)
The Challenge: YouTube’s Restrictions
Fetching transcripts isn’t as straightforward as it sounds. YouTube has different types of transcripts:
- Manual transcripts uploaded by content creators.
- Auto-generated transcripts by YouTube’s speech recognition system.
- Auto-generated translated transcripts, which are YouTube’s automatic translations of the original subtitles.
To make my tool reliable, I needed to handle all three cases efficiently. But there was a problem: YouTube blocks servers that send too many requests, making it impossible to consistently retrieve transcripts without hitting rate limits.
The Solution: Proxy Rotation via WebShare
I implemented proxy rotation to bypass these restrictions. Instead of sending requests from a single server (which YouTube would eventually block), I rotate between multiple IP addresses using WebShare proxies. This allows my system to stay under the radar and fetch transcripts without interruptions.
Of course, this added complexity—more moving parts, potential latency issues, and the need for frequent monitoring. But so far, the tradeoff has been worth it.
Optimizing for Speed & User Experience
Once I had the proxy system running, I expected response times to be sluggish due to the extra networking overhead. But surprisingly, even with proxy rotation, the transcript-fetching speed remains quite fast.
So I started thinking: what if I could stream the response to the user in real-time? Instead of waiting for the full transcript to load, I could display it progressively, like how ChatGPT generates text. This would make the experience feel instant and smooth. Definitely adding this to my roadmap.
Designing the App – Keeping It Minimalist
Aside from the backend, I’ve been working on the UI/UX. I’ve always been drawn to minimalist design, here are some brands that inspire me:
- VoiceNotes (my go-to voice note-taking app, I love what @jijo and his team did with the design)
- Notion (super clean)
- Tally (same spirit as Notion)
- Apple (nothing else to say)
I want my app to feel lightweight, intuitive, and frictionless
Naming: "Supplychat"
Naming things is hard. I chose a bunch of different names before settling on Supplychat. I had tried to go with Peachy and BlitzIQ but frankly they felt odd.
- It’s easy to pronounce in multiple languages.
- It clearly hints at conversation and knowledge sharing.
- I will sometimes keep a lowercase aesthetic: supplychat
Might not be perfect, but for now, I’m happy with it.
Edit: Oh, and I've also purchased the domain supplychat.co !
Edit 2: The Twitter account is now @trysupplychat !
Marketing & Next Steps
Now that 90% of the technical work is done, the real challenge begins: getting people to use it.
Instead of relying on traditional marketing, I’m leaning into learning in public + short-form video content:
✅ Twitter → Documenting my process, sharing insights.
✅ TikTok & Instagram Shorts → I'll need to learn how to make short-form content.
✅ Reddit → Engaging with communities that would benefit from it.
For now, I use my own tool every day while watching YouTube. It’s become second nature—whenever I open a video, my extension is there, and I can ask it anything. Super useful!
Still lots to improve, but I'm super excited to see the progress!
