Facebook gives you "Snooze for 30 days" on individual posts and pages. Instagram gives you "Not Interested" on individual posts and Reels. Both work — for exactly one post, one time, and only after you've already seen it. Neither one lets you say "I never want to see the word spoiler, or anything about an ex, or any sponsored post" and have it actually stay filtered.

That gap is why keyword-level, browser-side filtering works so much better for these two feeds specifically — they're both algorithmic, infinite-scroll, and mix organic posts with ads and Reels in an order you don't control.

Why Snooze and Not Interested Fall Short

Feature Facebook/Instagram native tools ElementHider
Blocks by keyword, not just by post/page ✗ no
Filters sponsored/"Suggested for you" posts ✗ partial, resurfaces
Filters Reels & Instagram Explore grid ✗ no
Applies instantly, no per-post action needed
Works as new content loads on scroll
Different rule sets you can toggle on/off ✓ (Supporter Pack Groups)

The core issue is that Facebook and Instagram's feed algorithms actively work against one-off actions like Snooze — they're designed to keep re-testing content types you've previously engaged with, even ones you've explicitly dismissed once. A browser-level filter doesn't have that problem: if a keyword matches, the post is removed every time, indefinitely, with no re-testing.

Setting Up ElementHider for Facebook & Instagram

ElementHider scans the page as it renders and removes anything matching your keywords before you scroll to it — including content that loads dynamically as you scroll, which is how both feeds work by default.

1

Install ElementHider

Free on Chrome and Firefox.

2

Add keywords for what you want gone

Common starting points: Sponsored Suggested for you Reels plus any names, topics, or ex-related terms you don't want resurfacing.

3

Scope it to facebook.com or instagram.com

Toggle "This site only" so a keyword like Reels only applies where you mean it, without affecting unrelated sites.

4

Pick Hide or Blur

Hide removes the post/Reel entirely and closes the gap. Blur keeps a placeholder in place so the feed's layout doesn't visibly shift, if you'd rather not draw attention to what's been filtered.

Common Use Cases

Cutting down on ad and "suggested content" volume

Both feeds are increasingly padded with posts you didn't ask for — sponsored content and "suggested for you" posts from accounts you don't follow. A keyword rule targeting that boilerplate label text removes the post itself, not just the label. The same approach works for sponsored listings on shopping sites, if that's where most of your ad noise is coming from.

Avoiding a specific person's posts without unfollowing them

Sometimes unfollowing isn't an option (family, coworkers), but you still don't want their posts in your feed. A keyword or point-and-click rule targeting their name or profile link hides their posts specifically, without them knowing they've been unfollowed — because you haven't.

Muting a topic during a specific period

Put a temporary topic (a breakup, a health issue, a news event) into its own Supporter Pack Group, and toggle the whole group off once you don't need it filtered anymore — no need to remember or delete individual keywords.

Tip: Instagram's Explore grid and Reels tab are two of the highest-volume places algorithmic content sneaks through untouched by "Not Interested." Point-and-click hiding on the grid container itself is often more effective than trying to keyword-match individual captions.

The Bottom Line

Snooze and Not Interested are fine for the occasional one-off post, but they don't scale to an entire feed's worth of noise, and both platforms' algorithms actively work against them staying effective. Keyword-level filtering at the browser level catches everything matching a rule, permanently, across the main feed, Reels, and Explore — without needing you to act on every single post. The same technique works just as well for filtering noise out of X/Twitter's feed, if that's another algorithmic feed you'd rather tame.