Macha

How Do You Block Spam in Freshdesk? Spam Action, Domain Rules and CAPTCHA (2026)

Abbas, Customer Support & AI, Macha

Written by

Ankeet Guha, Co-founder & CTO, Macha

Reviewed by

Published July 23, 2026

Updated September 24, 2026

Freshdesk blocks spam in three layers: the Spam action on a ticket (which can also block the sender), a built-in filter that flags any email scoring 6 or higher, and Ticket Creation rules that quarantine whole domains on arrival. Spam tickets are deleted permanently after 30 days, so real customers caught by mistake need rescuing before then.

Key takeaways

  • Freshdesk blocks spam by marking a ticket as Spam and blocking the sender, then adding a Ticket Creation rule with the Mark as spam action for repeat domains.
  • Freshdesk's proactive spam filter is on by default and automatically marks any incoming email with a spam score of 6 or higher as spam.
  • Freshdesk keeps tickets in the Spam view for 30 days and then deletes them permanently, so legitimate tickets must be restored before then.
  • Freshdesk Ticket Creation rules run top to bottom in Execute first matching rule mode by default, so a spam rule placed below a broad routing rule never fires.
  • Enabling CAPTCHA under Admin, Channels, Portals, Edit, Manage sections is the most effective Freshdesk control against bots submitting the support form.
How Do You Block Spam in Freshdesk? Spam Action, Domain Rules and CAPTCHA (2026)

To block spam in Freshdesk, mark the ticket as Spam and accept the prompt to block the sender, then add a Ticket Creation rule under Admin → Workflows → Automations with the action Mark as spam for any domain or phrase that keeps coming back. Freshdesk's built-in filter already flags any incoming email with a spam score of 6 or higher, and turning on CAPTCHA for your portal stops form bots.

MethodWhere to set itWhat it stops
Spam action + block contactTicket toolbar → More → SpamOne sender, now and in future
Proactive spam filterOn by default, no setupEmails scoring 6 or higher
Ticket Creation ruleAdmin → Workflows → Automations → Ticket CreationWhole domains, subject lines, repeat phrases
Portal CAPTCHAAdmin → Channels → Portals → Edit → Manage sectionsBots submitting your support form

How does Freshdesk handle spam?

Freshdesk fights spam at three levels, and most teams use all three together.

  • Reactive (per ticket): the Spam action on an individual ticket, for the one-off that slipped through, with an option to block the sender.
  • Automatic (built in): the proactive spam filter, which scores every incoming email and quarantines the obvious junk without any setup.
  • Rule-based (proactive): Ticket Creation automations that inspect the sender, subject, or body of every new ticket and mark matching mail as spam the moment it arrives.

The first is a broom, the second is a smoke detector, and the third is a locked door. Configure the third well and the first two barely get used.

How do you mark a single ticket as spam?

This is the fastest fix and the one you'll reach for most. When a junk ticket lands in your queue, open it and use the ticket's overflow menu.

  1. Open the offending ticket.
  2. Click the ... (More) menu in the ticket toolbar.
  3. Select Spam.

Per Freshworks' Spam and trash documentation, the ticket leaves your main inbox and moves to the Spam view (Tickets → Ticket views → Spam). Freshdesk then offers to block the contact; if you accept, every later ticket from that sender is marked as spam automatically. You can also select several tickets in the list view and mark them as spam in bulk.

A Freshdesk ticket with the More menu open, showing the Spam action alongside Merge, Log time and Delete
A Freshdesk ticket with the More menu open, showing the Spam action alongside Merge, Log time and Delete

The Spam action lives in the same More menu as Execute scenarios, Merge, Convert to forum topic, Log time, Print, and Delete, so if you can merge a ticket, you already know where to find it. The clock matters here: a ticket stays in the Spam or Trash view for 30 days, after which Freshdesk deletes it permanently. Until then you can remove it from spam from inside the ticket. Spam is the safer default over Delete for that reason, but it isn't a permanent archive, so check the folder before the month runs out.

What does Freshdesk's built-in spam filter catch?

You don't have to catch everything by hand. Freshdesk ships with a proactive spam filter that's enabled by default. According to the How to protect your helpdesk from spam attack article, the filter evaluates every incoming email ticket against preset criteria and assigns it a spam score. Messages scoring 6 or higher are marked as spam automatically and dropped into the Spam folder, with no rule, action, or agent involved.

Two practical implications follow:

  • Check the Spam folder at least weekly. Freshworks notes that legitimate mail can be caught if it comes from an IP on a spam-reporting list or simply scores high. Because spam is purged after 30 days, a real customer caught on the 1st is gone by the 31st if nobody looks.
  • Close the front door for portal spam. A lot of junk doesn't arrive by email at all; it's bots filling in your support form. Go to Admin → Channels → Portals → Edit → Manage sections and turn on Enable CAPTCHA to help avoid spam. It's the single most effective setting against form-submission bots.

How do you auto-route junk with Ticket Creation (Dispatch'r) rules?

The manual Spam action and the built-in filter handle most cases, but for a recurring offender (a spam domain hammering you, a mailing list you're stuck on, a subject line that always signals junk) you want it gone before it hits your queue. That's the job of a Ticket Creation automation rule.

Long-time users know this feature as the Dispatch'r. Freshdesk has folded it into the unified automations UI, but it runs at the same moment: the instant a ticket is created. Per the Automation Rules Examples: Ticket Creation documentation, here's how to build a rule that marks incoming mail as spam:

  1. Go to Admin → Workflows → Automations and open the Ticket Creation tab.
  2. Click New rule and give it a clear name (e.g. Block spam domains).
  3. In the "On tickets with these properties" (conditions) section, choose Requester email → Contains and enter the values you want to block, for example spamdomain.com or a specific sender.
  4. In the "Perform these actions" section, add the Mark as spam action. (Delete the ticket is also available, but it skips the Spam folder you'd use to rescue a false positive.)
  5. Click Preview and save, then Save and enable.

From then on, any new ticket whose requester email matches is quarantined automatically. Placement matters more than it looks. Freshworks' Dispatch'r documentation says Ticket Creation rules run top to bottom, and the default mode is Execute first matching rule: only the first enabled rule whose conditions match will run. If a broad routing rule such as "all email to Tier 1" sits above your spam rule, the spam rule never fires. Put spam rules at the top of the list, or switch the tab to Execute all matching rules if you need several rules to act on the same ticket.

How do you block a whole domain?

Freshdesk has no standalone domain blocklist screen, but a Ticket Creation rule is the practical equivalent. To block an entire domain (a persistent spam wave, or a competitor scraping your form), create the rule above with Requester email → Contains → @baddomain.com and the Mark as spam action. You can stack several domains into one rule's condition set, and add Subject or Description → Contains conditions to catch spam that rotates sender addresses but reuses the same pitch. Blocking a single contact covers one address; the rule covers everyone at the domain.

Where does native spam handling stop?

LayerWhat it's good forWhere it stops
Ticket Spam actionOne-off junk, fast cleanup, blocks the senderManual; scales badly under an attack
Proactive spam filterObvious spam, zero setup, always onScore-based, so it misses clever spam and occasionally over-flags
CAPTCHA on portalBot form submissionsOnly guards the portal, not email
Ticket Creation rulesRecurring senders, domains, subject patternsYou maintain the rules; matches are literal, not semantic; order matters under first-match

For most teams, these layers are enough. The proactive filter quietly eats the bulk of junk, CAPTCHA shuts down form bots, and a handful of Ticket Creation rules handle the repeat offenders.

They share one limit: every one of these tools matches on patterns, not meaning. A rule that blocks @baddomain.com can't tell an angry but legitimate customer from a troll, and the spam score doesn't understand intent. The tickets that make it past the filters, the real ones, still land on a human who has to read each one, work out what the customer wants, and write the reply. Spam handling cleans the queue; it does nothing about the work inside it. Rules are also literal, so aggressive blocking risks quarantining real customers, and every rule you add is one more thing to maintain as spam patterns shift.

That's the seam where an AI layer fits, and it's worth being clear about the build-versus-buy tradeoff before adding one. The category of AI agents for customer service exists to do the reasoning-heavy part that pattern rules can't. Macha is one such layer: it runs on top of the Freshdesk you already use (Macha also runs on Zendesk, Freshdesk, Gorgias, Front, HubSpot or Intercom) and doesn't replace your help desk, your Spam folder, or your automation rules. You connect Macha to Freshdesk with your subdomain and API key, and it reads the same tickets your spam rules already filtered, drafting a grounded first reply, triaging by intent, and looking up order or account status through a custom tool that turns a REST API into something the agent can call. Because it reasons about what a message means rather than which string it contains, it can also flag borderline junk your literal rules miss, while Freshdesk stays the system of record for how mail is received and quarantined. (Macha's connector is for Freshdesk specifically, not Freshchat, Freshservice, or Freshcaller. Macha bills per ticket, one conversation charged once however many messages it takes, never per resolution; plans start at $299/mo for up to 750 tickets.) To see how that automation is wired, how to automate Freshdesk with AI walks through it.

For the broader picture on email setup and deliverability, see how to configure email in Freshdesk and the companion guide on why Freshdesk emails go to spam. The flip side of blocking junk is making sure your own replies aren't treated as junk.

FAQ

How do I mark an email as spam in Freshdesk? Open the ticket, click the ... (More) menu in the ticket toolbar, and choose Spam. The ticket moves to the Spam view under Tickets, and Freshdesk offers to block the sender so their future tickets are marked as spam automatically.

Can I block an entire email domain in Freshdesk? Yes, with a Ticket Creation automation rule (formerly the Dispatch'r). Go to Admin → Workflows → Automations → Ticket Creation → New rule, set the condition Requester email → Contains → @yourdomain.com, add the Mark as spam action, and save. Keep the rule at the top of the list, because the default mode runs only the first matching rule.

Does Freshdesk have a built-in spam filter? Yes. A proactive spam filter is enabled by default and scores every incoming email ticket; messages scoring 6 or higher are automatically marked as spam and moved to the Spam folder. Check that folder regularly in case a real email is over-flagged.

How long does Freshdesk keep tickets in the Spam folder? 30 days. After that, Freshdesk permanently deletes them, so restore any legitimate ticket before then from inside the ticket.

How do I stop spam from my customer portal form? Go to Admin → Channels → Portals → Edit → Manage sections and enable CAPTCHA to help avoid spam. It's the most effective control against bots submitting your support form.

Can I add AI to Freshdesk spam handling without replacing Freshdesk? Yes. An AI agent layer like Macha connects to Freshdesk and works on the same tickets your spam rules and filter already produced, reasoning about intent to draft replies and surface borderline junk, while Freshdesk stays the system of record for how mail is quarantined and restored.

Ready to clear the tickets that survive your spam filters? Start a free trial of Macha and connect it to your Freshdesk in minutes.

Macha

About Macha

Macha is an AI agent platform that works on top of the help desk you already use (Zendesk, Freshdesk, Gorgias, Front, Intercom or HubSpot) and connects to the rest of your stack, even your own internal systems. It is done for you: the Macha team analyzes your past tickets, builds the knowledge base and the agents, and runs them in safe mode until the drafts are right. Pricing is about $0.40 a ticket, and that includes setup and a dedicated success manager who handles your changes. Learn more about Macha →

Zendesk
5.0 on Zendesk Marketplace

Loved by support teams worldwide

See what support teams are saying about Macha AI.

The application seems excellent to me! We are still testing, and we need support for some details and they were extremely efficient too!

Daniela Costa

Daniela Costa

Head of Support, Seabra

Macha has been a great addition to our support toolkit. It generates clear, well-organized responses that fit naturally into our workflow. One feature we particularly appreciate is its ability to automatically reply in the same language as the ticket.

Marius F

Marius F

Support Head, Zentana

We've been using Macha for a little while now and it's been really great addition so far! It's powerful, convenient, and makes getting work done a lot easier for our agents.

Alexander Wedén

Alexander Wedén

Head of Support

Support team is very helpful and responsive. Really enjoy how lightweight this is within Zendesk itself vs other more intrusive tools.

Cathleen Wright

Cathleen Wright

Zendesk Admin, Cortex IO

So far it's pretty good! Our queries are a little nuanced, so we can't always use it, but it's got enough utility for us. It can even incorporate our bilingual country with greetings in a second language.

Jae Oliver

Jae Oliver

Head of Support, Wise

Really enjoying using Macha, it has made a noticeable difference to our support team in a short amount of time. I really like the ticket summary feature, saves us a lot of time.

Harry Jackson

Harry Jackson

Head of Support, Crumb

Macha AI is a great addition to my workspace! It's powerful, convenient, and it really makes productivity so much easier for our agents!

Dave G

Dave G

Head of Support, Cyber Power Systems

Very impressed! AI integration for Zendesk has certainly come a long way and Macha seems to set the standard for now. This will for sure save lot of time in our support team.

Pauli Juel

Pauli Juel

Head of CS, Dokument24

Macha has been working great for us so far! The auto-responses are accurate and our resolution time has dropped significantly.

Lana T

Lana T

Zendesk Admin, Swotzy

Macha AI is a great addition. The knowledge base feature means our agents always have the right answers at their fingertips.

Mischa Wolf

Mischa Wolf

Head of Support, Topi

We're enjoying this integration so far. It's made our support team more efficient and our customers get faster responses.

Paula G

Paula G

Head of Customer Support, Xly Studio

The team enjoys using it. It saves considerable time on common questions and the integration options are excellent.

Kilian Leister

Kilian Leister

Support Head, Didriksons

Get your AI agents set up for you.

Book a 20-minute call with our team. We'll show you where we would start on your Freshdesk and how the setup works. Setup and a dedicated success manager come with the trial and every plan.

Live in under a week
Safe mode until you approve
About $0.40 a ticket