> For the complete documentation index, see [llms.txt](https://securitybot.gitbook.io/daxeon-knowledge-hub/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://securitybot.gitbook.io/daxeon-knowledge-hub/bot-guide/chat-filters/social-analysis.md).

# Social Analysis

{% hint style="warning" %}
**PRO only.** Social Analysis requires a [PRO subscription](/daxeon-knowledge-hub/plans-and-pricing/plans-and-pricing.md). It works alongside the [Discord Invite Filter](/daxeon-knowledge-hub/bot-guide/chat-filters/discord-invite-filter.md), which must be on before Social Analysis can act on anything it finds in a post.
{% endhint %}

Scammers have moved the scam link off Discord. Instead of pasting an invite your filters would catch, they post a link to an X post and put the invite inside the post. The Discord message contains nothing to block, so it looks clean to your moderators and to Daxeon.

When a member links an X post, Social Analysis reads the post, collects the links inside it, and runs your existing invite rules against them. If the post contains an invite you would have blocked had someone pasted it directly, Daxeon removes the message and tells your log channel what it found.

Social Analysis is **opt-in and disabled by default**. Once you turn it on, there is nothing else to configure.

{% hint style="info" %}
Social Analysis makes no decisions of its own. It gives your existing filters a new place to look, and your allowlists still decide what your server allows.
{% endhint %}

***

### How It Works

When a member posts a message linking to an X post, Daxeon:

1. Runs your normal filters first. If another filter already removed the message, Daxeon never looks the post up.
2. Reads the linked post, including the full text of long posts that X shortens.
3. Collects the links inside it and follows the posts it quotes.
4. Checks what it found against your invite rules, using your allowlists exactly as it would for a link pasted straight into chat.
5. Removes the message if the post contains an invite or app-authorization link you have not allowed. Your log channel gets an alert naming the post and the link, and the member gets a short note in the channel.

Rewriting the link does not get around this. Daxeon treats `x.com` and `twitter.com` the same, and mirror links such as `vxtwitter`, `fxtwitter`, `fixupx`, and nitter instances all resolve back to the same post.

***

### Your Allowlists Apply Inside Posts

The same rules cover a link inside a post and a link typed into your server. An invite to a server you have allowed stays allowed when it turns up inside an X post, and so does an app you have allowlisted. You do not allowlist anything twice.

The alert carries the same **Allow Invite** and **Allow App** buttons as a directly posted link. If Daxeon catches a partner's invite inside a post, your moderators can approve it from the log channel.

***

### Social Analysis and the Link Filter

These two are independent by design.

Run the [Link Filter](/daxeon-knowledge-hub/bot-guide/chat-filters/link-filter.md) without allowlisting `x.com` and it already removes every link to X, so this kind of scam never reaches your members. That protection ends the moment you allowlist `x.com` so your community can share posts, which most communities do sooner or later. **Allowlisting `x.com` is what exposes you**, and that is the case Social Analysis covers.

Social Analysis does not run your domain rules against the contents of a post. An ordinary X post links to all sorts of places, almost none of them on a typical allowlist, so doing that would remove nearly every legitimate post shared in your server. Only your invite and app rules apply to what a post contains.

***

### When a Post Cannot Be Read

Daxeon never removes a message because it could not read a post. It acts only on what it actually read, and it treats an unreadable post as unchecked rather than clean.

* **The post is gone, private, or from a suspended account.** There is nothing to read and no notice is sent. X does not say which of the three it is, and people link deleted posts constantly, so a notice here would bury the ones that matter.
* **Daxeon could not reach X.** Your log channel gets a warning and the message stays up. If the problem lasts, Daxeon holds off on repeating the notice, so an outage on X's side cannot flood your log channel.
* **A message links to an unusual number of posts.** Daxeon checks what it can, leaves the message up, and posts a notice saying some posts went unchecked. Padding a message with links buys attention rather than silence.

In each case the message stays up for your moderators to review.

***

### Daily Inspection Allowance

Reading a post costs Daxeon a paid call to X, so each server gets a daily allowance of post lookups. The allowance is high enough that a normal community never comes near it, and Daxeon remembers posts it has already read, including ones it read for another server, so those cost nothing.

A server that does exhaust its allowance is usually one someone is flooding with X links. Daxeon posts a notice in your log channel and stops inspecting posts until the allowance resets at midnight UTC. Every other filter keeps running. If you see that notice and nothing about it looks like an attack, contact support and we will look at your server's usage.

***

### Enable Social Analysis

You can turn Social Analysis on from the dashboard or with a slash command.

**From the dashboard**

1. Open your [server dashboard](https://daxeon.bot/dashboard) and select your server.
2. Go to **Configure → Social Analysis**.
3. Toggle **Analyze Shared X Posts** on, then save.

**From Discord**

```
/chat_filters social toggle
```

Run the command to enable Social Analysis for your server. Run it again to turn it back off.

{% hint style="info" %}
Turn on the [Discord Invite Filter](/daxeon-knowledge-hub/bot-guide/chat-filters/discord-invite-filter.md) as well. Social Analysis has no rules of its own, so with the invite filter off it has nothing to check a post against and takes no action.
{% endhint %}

***

### Checking Status

To see whether Social Analysis is currently active:

```
/chat_filters social about
```

The response shows whether Social Analysis is on, whether your server has PRO, and whether the invite filter it depends on is enabled.

***

### Requirements

* **PRO** subscription
* **Discord Invite Filter** enabled
* Daxeon must be able to **manage messages** so it can remove flagged messages

***

### What Happens on Downgrade

If your server is downgraded from PRO while Social Analysis is on, it stops inspecting posts. Re-subscribe to PRO and it starts again, with your toggle where you left it.

***

Next up: Learn how to fine-tune exceptions with [Bypass Settings](/daxeon-knowledge-hub/bot-guide/chat-filters/bypass-settings.md).
