XPSTACKBRIEFBY EXPANSION WORKS
← All guides
Software

HighLevel Added Chat Spam Protection. Its Default Is Backwards.

The new control keeps suspicious chat contacts visible and can stop paid follow-up. Good. New widgets default to Pause Both. I’d make the filter earn that power first.

By Xavier Pearson · Updated September 22, 2026 · Facts checked September 22, 2026 · 4 min read

HighLevel built a spam control I actually like, then gave it too much authority by default.

Suspicious chat contacts stay in the CRM. They get tagged. The pause shows up in activity history. That is much better than making a real inquiry disappear because a hidden classifier got nervous.

My verdict: HighLevel got the new-widget default backwards. Start with Tag Only. Let the filter point at suspects before it gets to silence them.

Old widgets get nothing. New widgets get Pause Both.

This update has two defaults.

Existing Chat Widgets stay off. That avoids changing a live flow without warning. New widgets start with protection on and Pause Both selected.

I understand the first decision. I do not understand giving an untested classifier control of both channels on the second.

Check every widget. There is no safe account-wide assumption here.

The useful part is that the lead stays visible

HighLevel does not delete a flagged contact. It keeps the record, adds a searchable tag, logs the pause, and lets someone restore messaging when the submission is legitimate.

That is the right shape for this kind of control. A fake lead should not burn message credits or throw more bad addresses at your sender reputation. A real lead should not disappear because they submitted twice or showed up during a traffic spike.

The feature offers four actions: Tag Only, Pause SMS, Pause Email, and Pause Both. Give it Tag Only. Review what it catches. Then let the evidence decide whether it earns a channel.

HighLevel will not show you the rule

HighLevel does not publish the signals or thresholds it uses to identify suspicious activity. That may keep spammers from gaming the filter. It also means you cannot inspect the rule before letting it stop follow-up.

I have not tested the classifier. The retention, tag, pause options, defaults, and activity logging are vendor-documented. The false-positive rate is not. Until you measure it in your own traffic, “suspicious” is a useful label, not a verdict.

Give it normal leads and annoying leads

On a test widget, submit the kinds of records that should be easy to separate:

  • One normal inquiry.
  • The same inquiry twice.
  • A malformed email or phone number.
  • Several rapid submissions.
  • A legitimate burst that resembles a campaign launch.

Confirm which contacts receive the tag, whether the activity history names the paused channel, and whether restoring a legitimate contact resumes the expected follow-up.

Then watch the flagged set through a normal traffic cycle. If the obvious junk is caught and the real inquiries stay intact, move from Tag Only to the narrowest useful pause. SMS may be the expensive channel. Email may be the reputation problem. “Pause Both” should be a decision, not a default you forgot to notice.

Keep the current path when spam is not the problem

If your widget does not trigger automatic outbound messages, this setting has less work to do. If you barely receive chat spam, turn on Tag Only or leave the flow alone. Do not create a daily review ritual to solve a problem you do not have.

The no-buy path is even simpler: send nothing automatically until a chat contact passes basic validation or a person reviews it. That costs more attention, but it keeps an unknown classifier away from a high-value inquiry.

For current HighLevel users with real spam, this is a worthwhile keep-current improvement. It is not a reason to buy HighLevel by itself.

If fake contacts, paid messages, and unowned follow-up are colliding in the same lead path, [Build a StackBrief](/stackbrief) and find the first failure worth fixing.

Sources

Get the setup I would use for your business

Answer the questions and get what to fix, keep, use, and add later.

Build my StackBrief →