Skip to main content

CAPTCHA - Modern Spam Protection for Your Webforms (CRM)

Webforms now use Google's invisible reCAPTCHA for improved spam protection. Configure your domain and reCAPTCHA keys in the CRM, then replace your existing webform embed code with the new version to enable the updated protection.

The CAPTCHA on your webform embed code has been upgraded to a modern, invisible version. The previous CAPTCHA service was retired by Google in 2018, which meant your forms were silently accepting spam even though they appeared to be protected. With this update, visitors no longer need to type anything to prove they are human — the new CAPTCHA verifies them automatically in the background using behavioral signals.

To benefit from this protection, two things must happen: a Dazos administrator must register the website domain(s) with Google reCAPTCHA (a one-time setup per domain) and paste the reCAPTCHA keys into the new Configure CAPTCHA screen inside the CRM. After that, each website owner must replace their existing webform embed code with a freshly copied version from the CRM.

Important: Until the domain is authorized in Google reCAPTCHA and the new embed code is pasted onto the website, submissions on the affected domain will be silently rejected or will accept spam. Complete the steps end-to-end before declaring the upgrade done.

Contents

  1. Before You Start

  2. For Dazos Administrators — Register the Domain in Google reCAPTCHA

  3. For Dazos Administrators — Add the Keys to the CRM

  4. Open Your Webform Settings

  5. Confirm Captcha Is Enabled

  6. Copy the Updated Embed Code

  7. Update the Embed Code on Your Website

  8. Test the Form

  9. What’s Different About the New CAPTCHA

  10. Frequently Asked Questions

  11. Need Help?

1. Before You Start

You will need:

  • A CRM user account with permission to view the Webforms settings (typically administrators and marketing team members).

  • Access to your website’s content management system, page builder, or HTML editor — wherever the original webform embed code was previously pasted. ● The full list of website domains where your webform will be embedded. Each domain must be authorized with Google before the CAPTCHA will function on it.

Access requirements: Sections 2 and 3 of this guide are for Dazos administrators (or whoever manages the Google reCAPTCHA account on behalf of Dazos). Sections 4 through 8 are for the website owner — typically a customer admin or a marketing team member. If you are a customer following this guide, skip to section 4.

2. For Dazos Administrators — Register the Domain in Google reCAPTCHA

This step is a one-time setup per Google reCAPTCHA site. Once a site is registered, every new customer domain can be added to the existing Domains list — no need to create a new site key for each customer.

Step 2.1 — Open the reCAPTCHA admin console

  1. Sign in with the Google account that owns the Dazos reCAPTCHA configuration. If you are setting this up for the first time, sign in with a Google account that will be managed by the Dazos operations team.

Step 2.2 — Create the reCAPTCHA site (first-time setup only) If a v3 site already exists for Dazos, skip to step 2.3 and just edit it. Otherwise:

1. Click the + (plus) icon in the top-right of the admin console to add a new site.

2. Fill out the Register a new site form:

Field

Value

Notes

Label

Dazos Webforms v3

A friendly name only you see — pick anything descriptive.

reCAPTCHA type

reCAPTCHA v3

Required. Do not pick v2 — v3 is the invisible score-based version.

Domains

Add one entry per line

Add every domain that will host an embed code. See examples below.

Owners

At least one Dazos team email

Add backup owners so the site is not tied to a single person.

Accept the reCAPTCHA Terms of Service

Checked

Required to proceed.

Send alerts to owners

Checked (recommended)

You will receive an email if Google detects suspicious activity.

3. Click Submit.

Step 2.3 — Add a new customer domain to an existing site

When a new customer signs up and wants to embed a webform on their site:

1. Open the reCAPTCHA admin console.

2. Open the existing Dazos site (e.g. Dazos Webforms v3).

3. Click the gear icon in the top-right corner of the site card, then choose Settings. 4. Expand the Domains section.

5. In the empty entry row, type the customer’s domain. Use the bare domain only — no http://, no https://, no trailing slash, no path.

6. Press Enter or click Add.

7. Repeat for every additional domain (test, staging, production).

8. Click Save at the bottom of the panel.

Tip: Allow about 60 seconds for the domain change to propagate before testing. If you submit a form too soon after saving, you may still see “Invalid domain for site key” until propagation completes.

Example domain entries:

Entry

Will the CAPTCHA work?

customer-clinic.com

Yes — covers [https://customer-clinic.com](https://customer-clinic.com) and any subdomain configured separately.

[www.customer-clinic.com](https://www.customer-clinic.com)

Yes — but only for the www host. List the bare domain too if visitors might land without www.

forms.customer-clinic.com

Yes — for embeds hosted under that specific subdomain.

[https://customer-clinic.com/contact](https://customer-clinic.com/contact)

No — paths and protocols cause the entry to be rejected. List the bare domain only.

localhost

Yes — for local development. Add localhost and any custom local host.

Important: Whenever a customer mentions their form is on a new subdomain (for example, moving from www.clinic.com to forms.clinic.com), repeat step 2.3 for the new subdomain. The CAPTCHA will silently fail on any domain not in this list.

3. For Dazos Administrators — Add the Keys to the CRM

Each reCAPTCHA v3 site in the Google admin console has two keys:

Key

Where It Is Used

Sensitive?

Site key (public)

Embedded in the webform HTML on customer websites. Visible to anyone.

No — safe to share.

Secret key (private)

Used by the CRM server to verify submissions with Google. Must never be exposed.

Yes — treat as a credential.

The CRM now provides a dedicated Configure CAPTCHA screen so administrators no longer need to edit any configuration files directly.

Step 3.1 — Copy the keys from Google

1. In the reCAPTCHA admin console, open the Dazos site.

2. Click the gear icon, then Settings.

3. Expand the reCAPTCHA keys section.

4. Reveal and copy the SITE KEY to a secure note.

5. Reveal and copy the SECRET KEY to a secure note.

Step 3.2 — Open the Configure CAPTCHA screen in the CRM

1. Log in to the CRM with an administrator account.

2. From the top navigation, click Integrations.

3. From the Integrations menu, select Webforms.

4. On the Webforms list page, click the Configure CAPTCHA button (shield icon, top-right of the list).

The Configure CAPTCHA modal opens. It contains the following fields:

Field

Purpose

Site Key (required)

Paste the public reCAPTCHA v3 site key from Google.

Secret Key (required)

Paste the private reCAPTCHA v3 secret key from Google.

Score Threshold (advanced, optional)

Number between 0.0 (permissive) and 1.0 (strict). Default is 0.5.

Step 3.3 — Paste the Site Key

1. In the Site Key field, paste the value you copied from Google.

2. The site key is public — it is shown in plain text and is safe to share.

Step 3.4 — Paste the Secret Key

The Secret Key field behaves differently depending on whether a secret has previously been saved. This was updated in the latest release to prevent administrators from accidentally overwriting or echoing the live secret.

First-time setup (no secret saved yet):

  • The field is empty and shows the placeholder “Paste your reCAPTCHA v3 secret key”.

  • The hint below the field reads “Required on first save. Copy the v3 secret key from your Google reCAPTCHA admin console.”

  • Paste the secret key and click Save Configuration.

Updating an existing secret (a secret is already saved):

  • The field opens empty every time the modal is opened. The CRM does not pre-fill or display any part of the live secret.

  • The placeholder shows a short masked hint such as “Leave blank to keep current secret (••••••••AB12)”. The trailing characters help you confirm which secret is currently active without revealing the whole value.

  • The hint below the field reads “A secret is already saved. Type a new value to overwrite it, or leave this field blank to keep the existing one.”

You have two choices:

What you want to do

What to type

Result on Save

Keep the existing secret unchanged

Leave the field blank

The saved secret is preserved.

Replace the secret with a new one

Type or paste the new secret key

The old secret is overwritten.

Tip: Click the eye icon at the right of the field to reveal what you have typed (only while typing — the saved secret is never revealed).

Step 3.5 — (Optional) Tune the score threshold

reCAPTCHA v3 returns a score from 0.0 (very likely a bot) to 1.0 (very likely a human) for every submission. The CRM rejects any submission scoring below the configured threshold.

1. Click Advanced inside the modal to expand the threshold control.

2. Enter a value between 0.0 and 1.0 in steps of 0.1. Default is 0.5.

Threshold

Behavior

0.3

Very permissive — only the most obvious bots are blocked.

0.5

Balanced default — recommended starting point.

0.7

Strict — may occasionally reject borderline human submissions.

0.9

Very strict — rejects most submissions; only use for high-spam targets.

Tip: Start at 0.5. If real customers report rejected submissions, lower to 0.3. If spam is still getting through, raise to 0.7. Adjust one form at a time and monitor for a week between changes.

Step 3.6 — Save and verify

1. Click Save Configuration.

2. A confirmation message appears and the Last updated line in the modal footer is refreshed with your name and the current timestamp.

3. The Secret Key field is cleared again, and the placeholder updates to show the new masked tail — confirming the new secret is saved.

No service restart is required. The new keys take effect on the next form submission.

4. Open Your Webform Settings

1. Log in to the CRM with your normal credentials.

2. From the top navigation menu, click Integrations.

3. In the Integrations menu, select Webforms.

You will see a list of every webform configured for your instance. Each row represents one form that can be embedded on a website.

5. Confirm Captcha Is Enabled

For the spam protection to be applied, the Captcha Enabled option on the webform must be turned on.

1. From the Webforms list, click the webform you want to update.

2. Click Edit.

3. Locate the Captcha Enabled field on the form.

4. Make sure it is checked. If it is already checked, no change is needed.

5. Click Save.

Tip: If your form was previously protected (or supposed to be protected), Captcha Enabled is almost certainly already on. There is no need to disable and re-enable it — just confirm.

6. Copy the Updated Embed Code

1. Return to the Webforms list, or stay on the webform’s detail page.

2. Open the Show Form view for the webform (this is the same option you used when you first set up the embed).

3. A preview of the form will appear with a copy icon next to it.

4. Click the copy icon. The full embed code, including the new CAPTCHA, is now on your clipboard.

Tip: If you have multiple webforms on your website, repeat steps 6.1 through 6.4 for each one. Each form has its own embed code.

7. Update the Embed Code on Your Website

1. Open the page on your website where the form is currently embedded.

2. Find the existing embed code (it begins with <form id="__vtigerWebForm" and ends with </script>).

3. Delete the entire existing embed code. Do not try to merge the new code with the old one — replace it entirely.

4. Paste the new embed code from your clipboard in the same location. 5. Save and publish the page.

Important: The new embed code keeps your existing form fields, layout, and submission destination unchanged. Anything you customized around the form on your website (heading text, styling, surrounding content) is unaffected. Only the embed code itself needs to be replaced.

8. Test the Form

After publishing, visit the page on your live website and confirm the form is working with the new protection.

1. Open the published page in any browser.

2. Look at the bottom-right corner of the page. You should see a small reCAPTCHA badge that says “protected by reCAPTCHA”.

3. Fill in every required field with realistic information.

4. Submit the form.

5. Log in to the CRM and confirm a new record was created with the data you submitted.

What You See

What It Means

reCAPTCHA badge in bottom-right

The new CAPTCHA is active and protecting your form.

Badge shows “Invalid domain for site key”

The hosting domain is not in Google’s Domains list — go back to section 2.3 and add it.

Submission shown in CRM

End-to-end flow is working.

“CAPTCHA verification failed” alert

The score was below the configured threshold, or the secret key is wrong — check the score threshold and verify the keys in section 3.

Tip: The reCAPTCHA badge is a small floating panel near the bottom-right corner. Some ad blockers may hide it; if you do not see it but submissions arrive in the CRM successfully, the protection is still working.

9. What’s Different About the New CAPTCHA

You may notice a few changes once the update is in place:

  • No checkbox, no images. Visitors are not asked to “click here to verify you are not a robot” or pick out fire hydrants from a grid. The verification happens silently in the background based on how the visitor interacts with your page.

  • Faster submission for real visitors. Because there is no challenge to solve, real people see no delay at all.

  • Suspicious submissions are blocked automatically. When the protection detects bot-like behavior, the submission is rejected before reaching your CRM. You will not see those attempts in your records.

  • The small reCAPTCHA badge. This is a Google requirement for using the invisible version, and it must remain visible on every page that hosts the form.

Capability

Old CAPTCHA

New CAPTCHA

Visible challenge

Was supposed to show, but the service was retired

None — works invisibly in the background

Spam blocking

Not actually working since 2018

Actively blocks bot submissions

Visitor friction

None (because it was broken)

None (by design)

Mobile-friendly

Yes

Yes

Per-domain registration required

Yes (but moot — service dead)

Yes (must add each domain to Google admin)

Key configuration

Edit a config file on the server

Use the in-CRM Configure CAPTCHA screen

Secret key safety

Stored in plain text in a file

Stored in the CRM and never displayed back to administrators

Did this answer your question?