Instagram deletes chats one at a time. Clearbox clears the whole inbox — everything or a set number, at a speed you pick. What's different: protected chats. Scan your inbox once, tick the names you never want removed, and they are skipped on every run. There is no undo on Instagram's side, so that was the point. Nothing else in this category does it. It also logs every deleted chat by name, so you can find them again. No account, no password, nothing leaves your browser. Free, 52 languages.
Hey Product Hunt 👋
I had a few hundred Instagram conversations I did not need and no way to clear them. Instagram deletes one chat at a time: open the row menu, hit Delete, confirm, then the next one. There is no multi-select on desktop or in the app, and people have been asking for one for years.
The obvious fix is a script that clicks through them, and I wrote that in an afternoon. Then I did not run it — because there is no undo, and somewhere in that inbox were five or six conversations I would have been genuinely upset to lose.
So most of the work went into the opposite of deleting. You scan your inbox once, tick the names you want kept, and Clearbox skips them on every run from then on. The list stays saved. That turned out to be the thing nothing else in this category does, and it is the only reason I trust my own tool enough to use it.
Three things I did not expect while building it:
Instagram's chat list is a sliding window. You cannot scroll to the bottom and collect every name, because rows get dropped from the DOM as new ones render. Scrolling back up does not reliably bring them back either. I ended up keeping a persistent ledger of every name seen across scrolls, which is also what makes the protected list work properly.
Chrome throttles timers in background tabs, much harder than I assumed. I measured it: a 3-second wait became 11.5 seconds on average and 59 seconds at worst. Rather than let a job silently take ten times longer, the extension tells you to keep the tab in front.
Names are surprisingly hard to read off the page. Instagram puts a hidden screen-reader element containing the word "Active" before the name of anyone currently online. My first version read that instead of the name, which meant a protected person who happened to be online would not have been protected. That bug scared me more than any other.
Deleting only clears your side, by the way. The other person keeps their copy and the thread returns if they message you. That is Instagram working as designed, and it is exactly why there is a log of every name removed.
Free, runs entirely in your browser on the session you are already signed into, and it ships in 52 languages.
Happy to answer anything. And if Instagram changes their interface and something breaks, tell me — that is the one guarantee I can actually make.