Design Instagram
HardSystem design · Media Social · Meta
Design Instagram: users upload photos and short videos, follow accounts, view profiles and scroll a ranked feed. Scale: 500M daily users, about 5B feed loads/day (170K/s peak), 100M new posts/day. The emphasis is media: resumable direct-to-storage upload on poor mobile connections, asynchronous processing into renditions, CDN delivery, and metadata - plus the hybrid-fanout feed. DMs, ads and stories internals are out of scope.
Requirements
- Media is uploaded directly to object storage, never through the API tier, and is resumable
- Generate renditions asynchronously and publish the post only once a usable rendition exists
- Serve essentially all media from a CDN using immutable URLs
- Feed uses hybrid fanout for large accounts and re-checks privacy at read time