The contact form is flooded with spam submissions, should you add honey trap fields first or implement captcha verification first.

📅 2026-11-01 👁️ 0

When the contact form is flooded with spam submissions, should you add a hidden honey pot field first or apply captcha? Add the honey pot field first. It does not disturb real visitors in any visible way, can block a part of script submissions that do not render; place the captcha in the second step, only when the remaining spam volume still affects business, because the captcha will also block a part of real users.

First judge what type of spam it is

Before starting, check the submission records. The garbage is roughly divided into three categories, with different handling methods.

The first category is script batch submission. The characteristics are short submission intervals, mechanical field filling, repeated appearance of the same source address, and a lot of blank or placeholder content. This is the source of quantity, and it is also the main target of honey pots and frequency limits.

The second category is semi-automatic submission. It will fill in reasonable content, but the same sentence will appear with different punctuation, often bypassing simple repetition detection. This type needs to rely on content-level filtering.

The third category is manual or proxy submission. The quantity is less, and the content is natural, making it difficult to resist any front-end means, and it can only be verified by background review and contact method verification.

In terms of statistics, robots have already accounted for 45% of the global internet traffic, and the automatic submission of unprotected sites accounts for more than half, so the first category usually constitutes the main body of the quantity, and solving it can achieve the fastest effect.

What can the honey pot field resist?

The method of honey pot is to place a real user invisible and unfillable input box in the form. The stylesheet hides it, so people won't fill it, and most scripts that directly traverse by field name will fill it in; the server will judge it as machine submission if it sees that the field is not empty, and directly discard or enter the pending review queue.

Its boundary also comes from the same principle: if the script renders the page first, parses the style, and then decides which fields to fill, it can skip this box. The relevant test data shows that the honey pot has an interception rate of about 40% for basic script submissions. Therefore, the honey pot is suitable as the first layer to eliminate the easiest part to block, but it is not suitable as the only solution.

There are three details to pay attention to when configuring. The field name should be natural, avoiding being easily recognized as a detection item; do not make the honey pot a required check, otherwise, the real user leaving it blank will cause an error; after the server determines it, leave a record for convenient subsequent statistics of how many were intercepted.

When should the captcha be used?

After honey pots and frequency limits, if spam still accounts for a considerable proportion of the submitted volume, consider captcha. There are three signals to judge whether to use it: natural content appears in the spam, the types passed by the honey pot; the same source was restricted and continued to submit after changing the address; the volume of manual review has already affected the response time.

The cost of captcha should be considered together. While it blocks machines, it also blocks a portion of real visitors, especially those with mobile and network environment restrictions; there are also large-scale proxy services, which means spending money to have real people help machines complete the verification, meaning it blocks low-cost submissions, not all automation.

In AnQiCMS, forms can be connected to reCAPTCHA for robot verification, which belongs to the second level of configuration. Whether to enable it, and on which forms to enable it, it is recommended to decide according to the previous three signals, rather than enabling it on the entire site by default.

The order and exceptions of the two layers

The regular order is four steps: first put up the honey trap field, then do source and frequency restrictions, then decide the captcha according to the remaining spam volume, and finally use content filtering to catch the leaked text spam.

Content filtering is often skipped. Features such as contact information, external links, and repetitive sentences are handled by sensitive word filtering and keyword replacement rules, which can block submissions that have passed several layers but are actually advertisements or phishing. AnQiCMS's content review process can keep suspicious submissions in a pending confirmation status instead of directly storing them in the database.

There are two exceptions. Open registration sites or forms collecting information publicly have a lower cost of manual review than the cost of mistakenly blocking real users, so captcha can be directly applied and honey pots can be retained; conversely, for internal contact or after-sales forms, it is better to have a few more pieces of spam than to disturb the user, and only honey pots and frequency limits should be left.

No matter which one, after the change, you should observe the submission volume and blocking records for one to two weeks, to confirm that the blocking has increased while the real submission has not decreased.

Common questions

Is it enough to just add honey pots?Useful for spam mainly submitted in batches using scripts, and it does not disturb. If natural content and address changes appear in the spam, frequency limits and captcha should be added.

Why is there still spam even after adding captcha?There are services for manual verification, which can be paid for per verification to complete the verification, so the captcha blocks low-cost automation, but not all submissions. Content filtering and backend review are still needed.

Should the submissions that are blocked be recorded?Yes, they should be recorded. Without a record, it is impossible to judge the blocking rate, and it is also easy to trace back when real users are mistakenly blocked. The record should keep the source, time, and the reason for the determination.

Related articles

The running environment needs to switch to a new version line, can I take a server for gray-scale testing first and then cut over to the full scale

When changing the version line of the running environment, you can first take a server with the same configuration as production for gray release, and then switch in batches. There are three prerequisites: the gray release copy is consistent with the production configuration, the version line expiration time is confirmed, and the rollback can be restarted on the original version line. This article explains how to cut gray release batches, monitor three types of compatibility differences, and the operation sequence of switching and rolling back.

2026-11-01

When deploying a content system in container mode, what should be confirmed first: port mapping and data backup?

When deploying the content system in a container, first confirm the port mapping relationship between the exposed image and the host machine, and then place the upload directory and database on a persistent volume outside the container; the backup cannot only export the database, static files and configurations should be packaged together, and a recovery verification should be run in an isolated environment. Taking the AnQiCMS image that listens on the default port 8001 as an example, this article provides the check sequence before going online.

2026-11-01

How to connect the translation process when the two Chinese and English sites share the same backend

When the Chinese and English sites share the same backend, first configure the multi-language sites and switches, then process the content: existing pages use whole-page HTML translation to take over, new content is created separately by language, consistency of terminology relies on keyword library and site-wide replacement, and updates of the two sets of content use the same process for synchronization.

2026-11-01

What should be done before upgrading to the new version?

Before upgrading, do two things: back up the data along with the static files and confirm that they can be restored, write down the upgrade window and rollback path. For versions involving security fixes, you also need to rotate the site signature key and change all admin passwords after the upgrade. Upgrading itself is not enough to clear the attacker's existing sessions.

2026-11-01

The security patches and system upgrades for the operating environment are due at the same time, which step should be done first?

When the environment security patch and the content system upgrade coincide with the same maintenance window, first patch the high-risk operating environment patches, and then schedule the content system upgrade, and first verify compatibility on the copy. This article explains the differences in nature of the two updates, the reasons for sorting, and the minimum operational steps and rollback preparation within the window.

2026-11-01

Which item should be inspected first for backup and recovery before merging multiple sites into a batch of domain names?

Before merging multiple sites into a new domain batch, backup and recovery must be accepted first to ensure clean recovery: Confirm that the backup covers the database and static files, and then perform a real recovery drill in an isolated environment before discussing address switching, 301 redirects, and site map reconstruction.

2026-11-01

How to queue for site upgrades when the security minor version is released on the same day and the major version is scheduled for December?

The short-cycle security minor version and the end-of-year major version should be queued in two channels: the security version enters the maintenance window on the same day, and the major version is first verified in the test environment for templates and data, and then灰度切量并可回退。This article provides the queuing rules, steps within the window, and observation indicators for the gray period for the two types of versions.

2026-11-01

How to see the default switch of a new site placed in a back-end system?

When multiple sites share the same backend, the default switch of a new site only checks three things: which batch of sites the default value of the site status affects, whether the access entry and content structure are properly matched, and the difference between closing and deleting. This article provides the check sequence for a new site and explains the fallback role of the recycle bin and backup in the multi-site scenario.

2026-11-01