Major Platforms, On-Demand Access
Enable only the sites you use. Each supported platform requests browser host permission individually when toggled on.
Chrome Extension · Manifest V3 · Local-first Batch Archiver
Day21 Bulk Social Media Downloader adds one-click hover buttons, an on-page ⌘K command palette, and an auto-scrolling batch queue to most major social platforms. Save a single post or hundreds of items in the best available quality, with custom filenames and zero server round-trips.
00 / Watch
See how a whole collection is detected, queued, merged in best available quality, and sorted into named folders automatically. Plays muted — turn on sound in the player for the voiceover.
Enable only the sites you use. Each supported platform requests browser host permission individually when toggled on.
Hover a media card, click a floating profile batch pill, press ⌘K for the command palette, or launch from the toolbar popup.
Separate video and audio streams merge right inside your browser tab via FFmpeg.wasm. Nothing reaches our servers.
01 / Real Pages
Working extension surfaces shown in the exact places where saving decisions happen. Click any scene to inspect the full capture.
Trademark-neutral captures: Site names, logos, and creator handles are pixelated for trademark neutrality. Every button, badge, command palette, and progress drawer is the actual extension UI.

Scene 01 · Profile & Collection Batching
A “Download all posts” pill at the top of a creator profile, hover badges on each media card, auto-scroll harvesting, and a live 18/48 progress orb.

Scene 02 · ⌘K On-Page Command Palette
Press ⌘K (or Ctrl+K) on any supported page to launch a keyboard-first command palette that lists profile batches, visible viewport items, avatars, metadata export, and audio-only actions.

Scene 03 · Video & M4A Audio Extraction
Dedicated buttons on short-form vertical players and full videos let you save either the merged .mp4 video in best available quality or the standalone .m4a audio track.

Scene 04 · Live Queue & Progress Drawer
Real-time Total, Done, Skipped, and Failed counters sit beside your target folder badge, pause/cancel controls, and a thumbnail grid showing per-item progress.




02 / Features
Broad media coverage, durable batch controls, and precise local organization in one focused tool.

Local archive pipeline
Media is resolved from your active browsing session, merged locally via WebAssembly when audio and video arrive as separate streams, named according to your token template, and written straight to your local folder without touching any external cloud.
03 / How It Works
Grant only the site access you choose, trigger a save, and let your local naming rules handle the rest.
Install the extension, open Platform Access, and toggle on the social sites you want. Host permissions are requested per site on demand.
Hover any photo or video for instant save buttons, choose “Download all posts” on a profile, or search all detected page actions from the keyboard.
Watch the floating orb or open the drawer as files enter Downloads/Day21/{username}/, named cleanly and with duplicates skipped.
04 / The Interface
Real extension surfaces — from one-click batch recovery to filename tokens and local webhook automation.

Popup · Recovery
Live page media counter (48 media), an “Unfinished · 18/48 · Continue” recovery banner when a batch is interrupted, primary one-click batch action, and ⌘K shortcut reminder.
Inspect full panel ↗
Settings · Organization
Set a custom subfolder inside Downloads/, build templates with clickable tokens ({username}, {date}, {id}, {index}, {type}, {ext}), check the live preview, or pick a preset.
Inspect full panel ↗
Settings · Queue & Pacing
Cap runs at the first N items or grab all available, tune simultaneous downloads (1–6) and request intervals (0–3000 ms), skip already-saved posts, and export metadata JSON.
Inspect full panel ↗
Permissions · On Demand
Seven supported platforms (shown as Site A through Site G for trademark neutrality) are toggled individually. The extension never holds blanket access to sites you do not enable.
Inspect full panel ↗
Automation · Local Callback
Send a JSON POST payload to a local script, home server, or NAS indexer whenever a download or batch completes, with optional custom headers and a one-click test button.
Inspect full panel ↗




05 / Privacy by Architecture
Day21 is an independent software studio backed by more than a decade of experience building and maintaining download tools. No adware, no bundled extras — every fetch runs in your browser session and stays under your control.
Install and use immediately. No login wall, no email capture, and no cloud sync.
No usage tracking, no error beacons, and no third-party SDKs in the extension or on this website.
Fetches happen directly in your browser session and merge locally via FFmpeg.wasm. Nothing reaches our servers.
Fair Use & Responsibility · Designed for personal archiving of content you have lawful access to save. Follow each platform's terms of service, respect creators' rights, and use built-in pacing responsibly.
06 / FAQ
Clear answers about single saves, large batches, naming tokens, permissions, and privacy.
Hover any photo or video card and click the top-left Day21 badge to save just that item (or the ♫ button on videos for audio only). To grab an entire profile or collection, click the floating “Download all posts” pill, trigger the batch button in the toolbar popup, or press ⌘K and select the profile batch action.
You control both concurrency (1–6 simultaneous downloads) and request pacing (0–3000 ms between items) in Settings. You can pause or cancel a run at any time from the floating drawer, and if your browser closes mid-run, the popup shows an “Unfinished · Continue” banner so you can resume where you left off.
In Settings → Output & naming, pick a subfolder inside your browser Downloads directory (such as Day21/{username}) and compose your filename template using tokens like {username}, {date}, {timestamp}, {id}, {index}, {type}, {shortcode}, and {ext}. A live preview shows the exact output path before you run a batch.
Many platforms deliver high-resolution video and audio as separate streams. Instead of sending links to an external server, the extension runs FFmpeg.wasm directly inside your browser tab to mux video and audio into a standard .mp4 file. When you only want the soundtrack, choose the audio-only action to save the .m4a stream directly.
Multi-slide posts (carousels mixing photos and videos) are detected as a single logical group and queued in slide order. Including {index} in your filename template keeps every slide numbered cleanly inside your destination folder.
When “Skip already downloaded” is enabled, the extension keeps a local ledger of saved item IDs in your browser storage. Re-running a batch on a creator profile automatically marks previously saved posts as Skipped and only downloads new uploads.
The extension installs with zero host permissions. In the Platform Access panel, you enable only the social sites you actually use, and your browser prompts you per site on demand. You can turn any site off again with one switch.
No. There is no account, no analytics, and no Day21 media relay server. Requests run inside your existing browser session, stream merging happens locally on your device, and the optional webhook sends events only to an endpoint URL you configure yourself.
07 / Guides
Field guides for keeping large social archives organized on your own disk.
Guide 01 · Batch workflow
Why single-file saving breaks past a dozen items, and how to walk whole profiles and collections with a resumable, duplicate-aware queue.
Read guide →Guide 02 · Local archiving
How to pair folder-structure rules, filename tokens, and periodic duplicate-skipping re-runs to keep a browsable local archive on your own disk.
Read guide →