# Should we tell the AI spam scanner to flag posts containing phone numbers by default?

**URL:** https://meta.discourse.org/t/should-we-tell-the-ai-spam-scanner-to-flag-posts-containing-phone-numbers-by-default/382681
**Category:** Feature
**Tags:** ai, spam
**Created:** [September 15, 2025, 2:40pm UTC](https://meta.discourse.org/t/should-we-tell-the-ai-spam-scanner-to-flag-posts-containing-phone-numbers-by-default/382681 "2025-09-15T14:40:59Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![awesomerobot](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/awesomerobot/32/142900_2.png) [@awesomerobot](https://meta.discourse.org/u/awesomerobot)
#### Post date: [September 15, 2025, 2:40pm UTC](https://meta.discourse.org/t/should-we-tell-the-ai-spam-scanner-to-flag-posts-containing-phone-numbers-by-default/382681/1 "2025-09-15T14:40:59Z")

</div>

It seems like a fairly common variety of spam are unrelated customer support posts, probably trying to get false information to appear in AI or search results? These often contain phone numbers… should we mention phone numbers in our AI spam prompt? Likely uncommon for people to post these in normal use cases?

> **Existing default prompt**
>
> ```plaintext
> You are a spam detection system. Analyze the following post content and context.
> 
> Consider the post type carefully:
> - For REPLY posts: Check if the response is relevant and topical to the thread
> - For NEW TOPIC posts: Check if it's a legitimate topic or spam promotion
> 
> A post is spam if it matches any of these criteria:
> - Contains unsolicited commercial content or promotions
> - Has suspicious or unrelated external links
> - Shows patterns of automated/bot posting
> - Contains irrelevant content or advertisements
> - For replies: Completely unrelated to the discussion thread
> - Uses excessive keywords or repetitive text patterns
> - Shows suspicious formatting or character usage
> 
> Be especially strict with:
> - Replies that ignore the previous conversation
> - Posts containing multiple unrelated external links
> - Generic responses that could be posted anywhere
> 
> Be fair to:
> - New users making legitimate first contributions
> - Non-native speakers making genuine efforts to participate
> - Topic-relevant product mentions in appropriate contexts
> 
> Site Specific Information:
> - Site name: {site_title}
> - Site URL: {site_url}
> - Site description: {site_description}
> - Site top 10 categories: {top_categories}
> 
> Format your response as a JSON object with a one key named "spam", which is a boolean that indicates if a post is spam or legitimate.
> Your output should be in the following format:
> 
> {"spam": xx}
> 
> Where xx is true if the post is spam, or false if it's legitimate.
> reply with valid JSON only
> 
> ```

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [September 15, 2025, 3:53pm UTC](https://meta.discourse.org/t/should-we-tell-the-ai-spam-scanner-to-flag-posts-containing-phone-numbers-by-default/382681/2 "2025-09-15T15:53:55Z")

</div>

And I think that often those phone numbers include various obfuscations of phone numbers to get around regex phone number tests (I don’t really know, like, uh, unicode or some other nonsense?). Is there some way to get the AI to specifically look for those?

---

<div class="post-metadata">

### Author: ![awesomerobot](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/awesomerobot/32/142900_2.png) [@awesomerobot](https://meta.discourse.org/u/awesomerobot)
#### Post date: [September 15, 2025, 4:06pm UTC](https://meta.discourse.org/t/should-we-tell-the-ai-spam-scanner-to-flag-posts-containing-phone-numbers-by-default/382681/3 "2025-09-15T16:06:14Z")

</div>

> [@pfaffman](#):
>
> Is there some way to get the AI to specifically look for those?

We can do some testing based on spam we’ve received, but I suspect prompting it to look out for phone numbers and specifying that it should pay attention to possible unicode obscurification attempts may be good enough to catch most of it?

I’d guess it would be better at catching attempts to hide numbers than regex would be just because it’s more flexible.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [September 15, 2025, 4:42pm UTC](https://meta.discourse.org/t/should-we-tell-the-ai-spam-scanner-to-flag-posts-containing-phone-numbers-by-default/382681/4 "2025-09-15T16:42:43Z")

</div>

> [@awesomerobot](#):
>
> I suspect prompting it to look out for phone numbers and specifying that it should pay attention to possible unicode obscurification attempts may be good enough to catch most of it?

Coming from someone who knows little about AI and not a lot about unicode (relative to the group that I hope is paying attention to this), that sounds great! 🤣

> [@awesomerobot](#):
>
> I’d guess it would be better at catching attempts to hide numbers than regex would be just because it’s more flexible.

I would think so. Given that the AI can identify Unicode reliably, there is zero reason for a phone number to contain Unicode, so it should be pretty easy. Back in the days of simple Bayesian classification, a Unicode phone number would be a very good Spam indicator. A bunch of them also had some weird unicode TM symbol and a couple others.

> [@Watched words to block recent spam attack](https://meta.discourse.org/t/watched-words-to-block-recent-spam-attack/380420/1):
>
> ```plaintext
> "®️"
> "™️"
> 
> ```

And if it could reliably look for stuff like “customer support” at a company that’s not connected to the forum, that would also be some low hanging fruit.

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [September 15, 2025, 11:23pm UTC](https://meta.discourse.org/t/should-we-tell-the-ai-spam-scanner-to-flag-posts-containing-phone-numbers-by-default/382681/5 "2025-09-15T23:23:40Z")

</div>

A lot of this depends on “we need evals”:

We have:

[https://github.com/discourse/discourse-ai-evals](https://github.com/discourse/discourse-ai-evals)

What we need to do here is:

1. Add a big bunch of spam/ham posts to the eval suite (say 20-30 or each)
2. Run the eval
3. Fix the prompt
4. Run the eval again

Otherwise we tend to be poking in the dark. cc @Falco
