Table of Contents
Open Table of Contents
Overview
Two hundred days ago, ReviByte was just a domain and three sentences of a homepage — you can still read that first post if you want the unfiltered starting point. I wrote about the next stretch of that in the 121-day milestone post, back when the site was still finding its footing. For Day 200, instead of writing another long look-back, I wanted the milestone to be something people could actually use — so I built an Instagram Reels downloader for the /save/ hub, next to the TikTok downloader that’s already been running there for weeks.
Here’s the actual build story, not the polished version.

How It Actually Works
The downloader runs on the same architecture as the TikTok tool: a Cloudflare Worker sits in front, receives the Instagram Reel URL from the user, and calls out to a RapidAPI endpoint that resolves the actual media file. Nothing on ReviByte’s own server ever touches Instagram directly — the worker handles that layer entirely, which keeps the whole thing fast and keeps ReviByte’s own infrastructure out of Instagram’s rate limits.

Most of the actual coding — debugging the request handler, working through the payload differences, writing this post itself — happens the same way I run the rest of ReviByte from my phone, no local dev environment involved.
By the Numbers
The downloader has been resolving requests reliably since launch, with no reported downtime on the /save/ hub. It sits on the same infrastructure behind ReviByte’s broader growth to 500+ daily visitors — real numbers on resolve time and total downloads processed will be added here once they’re pulled from Cloudflare’s dashboard.
The Bugs That Actually Took Time
| Bug | What Was Happening | Fix |
|---|---|---|
| Cloudflare Worker to RapidAPI mismatch | Worker was calling the endpoint with a request shape built for TikTok, so a chunk of Instagram requests silently failed | Rebuilt the request handler as its own branch instead of reusing TikTok’s logic |
| Broken thumbnails | Instagram CDN URLs can expire or block hotlinking, so preview images sometimes returned broken or blank | Routed all thumbnails through the existing server-side image proxy instead of linking directly |
| Carousel posts | Multi-image/video posts only returned the first item, so users downloading a carousel Reel got the wrong file | Added detection for carousel payload shape and handled it as its own case |
| Slow first load | Cold-start delay on the Worker made the first request per session feel stuck | Adjusted the proxy’s caching so repeat thumbnail requests don’t refetch from Instagram each time |
The thumbnail bug was the worst one. It looked fixed three separate times before it actually was, because Instagram’s CDN appears to behave differently depending on how the original post was uploaded — app versus web versus reshared content often returned different URL patterns.
![]()
What Users Actually Get
None of this matters if it doesn’t make things easier for whoever’s actually using it. So here’s the practical version:
- Downloads the original public file as posted — the tool doesn’t add a watermark of its own
- No app install — it runs entirely in the browser, which matters if you’re on a low-storage phone
- Handles Reels, single posts, and carousels without needing separate tools for each
- Free, with no daily limit currently in place

New posts like this one get indexed and get their images picked up quickly, partly because of a sitemap fix I made months ago that was silently blocking Google from crawling post images properly. Worth the read if you’re on Astro and wondering why your images aren’t showing in Search.
FAQ
Does the Instagram downloader require login or an account?
No. Paste the Reel link and download — no Instagram login, no ReviByte account.
Why does it sometimes take a few seconds longer than the TikTok downloader?
Instagram’s API responses are heavier and route through the image proxy for thumbnails, which adds a small delay the TikTok tool doesn’t have.
Can it download private Reels?
No. It only works on publicly accessible posts, the same restriction any similar tool has.
Will carousel posts download every item at once?
Right now it correctly detects and resolves carousels instead of failing, but full multi-item batch downloading in one click isn’t built yet — that’s a likely next step.
Will there be a push notification when new downloader features ship? Possibly — push notifications are still a work in progress on ReviByte. I wrote about why they weren’t showing up at all for a while, and that’s since been fixed.
The TikTok downloader taught me the backend pattern. The Instagram downloader taught me that copying a pattern to a new platform isn’t actually copying — it’s rebuilding the parts that look the same but aren’t. Two hundred days in, that’s still the whole approach: ship something real, fix what breaks, keep going.




Comments 0
Leave a comment