Back to Blog

How to Filter Grok Tweets on X#

Since X integrated Grok into the platform, timelines are full of AI-generated replies. The @grok account shows up under trending posts, and people constantly tag it in threads hoping for AI answers. If you find this distracting, Twitter Filter can help you get rid of it.

Hiding tweets from @grok#

The most straightforward rule. This catches everything the @grok account posts:

user.screen_name == 'grok'

Import-ready JSON:

{
  "name": "Grok account",
  "condition": "user.screen_name == 'grok'",
  "action": "hide"
}

This only matches tweets posted by the account itself. It won't touch tweets from regular users who mention Grok.

Hiding replies that tag @grok#

The bigger annoyance for most people. Under any popular tweet, you'll see dozens of replies that are just someone tagging @grok to get an AI response. This rule filters those out:

tweet.is_reply && tweet.text contains '@grok'
{
  "name": "Replies mentioning @grok",
  "condition": "tweet.is_reply && tweet.text contains '@grok'",
  "action": "hide"
}

The tweet.is_reply part matters. Without it, you'd also catch original tweets that happen to reference Grok, which might be actual discussion worth reading.

One rule for everything#

If you want a single rule that covers both cases:

user.screen_name == 'grok'
|| (tweet.is_reply && tweet.text contains '@grok')
{
  "name": "Filter Grok content",
  "condition": "user.screen_name == 'grok' || (tweet.is_reply && tweet.text contains '@grok')",
  "action": "hide"
}

How to use#

Copy the JSON block for the rule you want. In Twitter Filter, open the Rules tab and click Import. Paste the JSON and confirm. The rule takes effect on your timeline immediately.

If you're not sure a rule is too aggressive, set "action" to "mark" instead of "hide". Matched tweets will get a yellow border instead of being hidden, so you can check what the rule catches before committing to full hide.

Don't have the extension yet? Install Twitter Filter from the extension page.