> For the complete documentation index, see [llms.txt](https://docs.powerfulform.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.powerfulform.com/integrations/google-recaptcha.md).

# Google reCAPTCHA Integration

Create Google reCAPTCHA keys, add them to the app, and turn the challenge on for a form.

## What You Need Before You Start

To enable Google reCAPTCHA, you need:

* A **Google account**
* A **Site Key**
* A **Secret Key**

You can create these for free in Google reCAPTCHA Admin Console.

## How to set it up

### Create Your reCAPTCHA Keys in Google

1. Visit the Google reCAPTCHA admin page: <https://www.google.com/recaptcha/admin>
2. Click **+ Create**
3. Enter your website name

<figure><img src="https://2907469752-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FehM2rz7MmKkWcJmgvJOe%2Fuploads%2Fgit-blob-b7c9f476feace36fa6404ba8648ba6ac7fadd319%2Fscreenshot-integration-google-recaptcha-integration-1.png?alt=media" alt=""><figcaption></figcaption></figure>

4. When registering a new website, the form will open and you need to fill in all the details correctly then submit the form.

For example: I want to register recaptcha v2

* **Label**: Enter a name to identify your site (e.g., "My Shopify Store") as you want
* **reCAPTCHA Type**: Select **reCAPTCHA v2** and choose **"I'm not a robot" Checkbox**.
* **Domains**: Input your domain name. For example:

Store URL: `abcstore.myshopify.com`\
Custom domain: `mycoolbrand.com`

On reCAPTCHA setup, enter: `mycoolbrand.com`

<figure><img src="https://2907469752-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FehM2rz7MmKkWcJmgvJOe%2Fuploads%2Fgit-blob-2afa302815f9f897c32e7c0b096982c70a22a294%2Fscreenshot-integration-google-recaptcha-integration-2.png?alt=media" alt=""><figcaption></figcaption></figure>

5. Click **Submit** button and the site key and secret key shows up

### Step 2 - Add Google reCaptcha to app Settings

1 Open the app > click **Settings** >**Third party integrations** > hover **Google reCaptcha** > click **Config**

<figure><img src="https://2907469752-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FehM2rz7MmKkWcJmgvJOe%2Fuploads%2Fgit-blob-4ab636d3a33a6a68608079a5dfa85c5dcfd62913%2Fscreenshot-integration-google-recaptcha-integration-3.png?alt=media" alt=""><figcaption></figcaption></figure>

2\. On **reCaptcha type** dropdown > select reCaptcha type: **v2** or **v3**

3\. Enter **Site key** and **Secret key** you get in **step 1** above

<figure><img src="https://2907469752-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FehM2rz7MmKkWcJmgvJOe%2Fuploads%2Fgit-blob-79831eabdbc72c125b733088e19bf8a9b658931d%2Fscreenshot-integration-google-recaptcha-integration-4.png?alt=media" alt=""><figcaption></figcaption></figure>

4\. Select language of the reCaptcha on front store

5\. Click **Save** and save the app **Settings**

### Enable **Google reCaptcha** on the form

1\. Open the app > click **Forms** > open the form you want to edit

2\. Click **Integration** icon on the left side > enable **Google reCaptcha**

3\. Click **Save** to update the changes

<figure><img src="https://2907469752-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FehM2rz7MmKkWcJmgvJOe%2Fuploads%2Fgit-blob-b9f37a57a5392b1016c3bac9d9821ec4aad88a43%2Fscreenshot-integration-google-recaptcha-integration-5.png?alt=media" alt=""><figcaption></figcaption></figure>

## How it works

Google reCAPTCHA helps protect your form from bots and spam submissions. Powerful Contact Form Builder supports **reCAPTCHA v2** and **reCAPTCHA v3**, and each works differently.

<figure><img src="https://2907469752-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FehM2rz7MmKkWcJmgvJOe%2Fuploads%2Fgit-blob-58f21fef37f73e7093fffd10c048f8aa4c6e02d6%2Fscreenshot-integration-google-recaptcha-integration-6.png?alt=media" alt=""><figcaption></figcaption></figure>

#### reCAPTCHA v2 — “I’m not a robot” Checkbox

**How it works:**

* Your form displays a small **“I’m not a robot”** checkbox.
* When a user clicks it, Google analyzes their behavior:
  * mouse movement
  * click pattern
  * browsing history (anonymized)
* If Google is confident the user is human → the checkbox is enough.
* If Google is unsure → it may show a small image challenge (e.g., *“Select all traffic lights”*).

**What the user sees:**

✔ A simple checkbox\
✔ Sometimes an image test\
✔ Clear confirmation when verified

**Best for:**\
Forms with high traffic or potential spam, stores wanting visible verification.

#### reCAPTCHA v3 — Invisible Background Scoring

*(Google has begun limiting support for new v3 keys. Some users may only be able to create v2 keys.)*

**How it works (simple explanation):**

* There is no checkbox and no challenge.
* Google silently monitors user behavior in the background.
* It assigns a **score from 0.0 to 1.0**:
  * **1.0 = very likely human**
  * **0.0 = very likely a bot**
* The app uses this score to decide whether to allow or block the submission.

**What the user sees:**

✔ Nothing (fully invisible)\
✔ No clicking\
✔ No challenge screens

**Best for:**\
Stores wanting **zero friction** for customers and fewer visible checks.

#### **Quick Comparison**

| Feature                   | reCAPTCHA v2                  | reCAPTCHA v3                           |
| ------------------------- | ----------------------------- | -------------------------------------- |
| Visible to users          | ✔ Yes                         | ✖ No                                   |
| User interaction required | Checkbox / Image test         | None                                   |
| Bot detection method      | Click behavior + challenge    | Behavior scoring                       |
| Best for                  | General forms, high spam risk | Customer-facing forms where UX matters |

## Troubleshooting

<details>

<summary>1- reCAPTCHA is not appearing on the form</summary>

To make sure the data is updated on the form, please try

* go to the app > open the form > save the form again
* refresh the page on the online store

See if the recaptcha show on up on the page/form now.

</details>

<details>

<summary>2. “Invalid key type” or “Key mismatch” error</summary>

This happens when:

* You generated **reCAPTCHA v3** keys but selected **v2**
* Your keys are for the wrong domain
* Keys were copied with extra spaces

Fix: Recreate the keys in Google and paste them again.

</details>

<details>

<summary>3- ERROR for site owner: Invalid key type in the app preview</summary>

As you can see in the screenshot, you may see a red notification in captcha box: ERROR for site owner: Invalid domain for site key.

There is no need to worry about this because it is the preview which will be displayed properly in the front-end store as it works with your store domain.

You might want to display captcha box properly in the preview area, please add one more domain: **app.powerfulform.com** or **dnhcnb9q6pxc3.cloudfront.net** to the Recaptcha configuration.

<figure><img src="https://2907469752-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FehM2rz7MmKkWcJmgvJOe%2Fuploads%2Fgit-blob-97a7fb5b2d84a57b4e28d730c873539bd867ec32%2Fscreenshot-integration-google-recaptcha-integration-7.png?alt=media" alt=""><figcaption></figcaption></figure>

</details>

<details>

<summary>3- recaptcha box does not show correctly on the form on the online store</summary>

Please check your recaptcha config and make sure the store domain is added.

* For example:

Store URL: `abcstore.myshopify.com`\
Custom domain: `mycoolbrand.com`

On reCAPTCHA setup, enter: `mycoolbrand.com`

<figure><img src="https://2907469752-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FehM2rz7MmKkWcJmgvJOe%2Fuploads%2Fgit-blob-54a7973fa365b665ac964cd8d7c82aab720e7ee3%2Fscreenshot-integration-google-recaptcha-integration-8.png?alt=media" alt=""><figcaption></figcaption></figure>

</details>

<br>

## Next steps

* [hCaptcha](/integrations/hcaptcha.md) — the alternative challenge.
* [Prevent spam submissions](/troubleshooting/prevent-spam.md) — every anti-spam option in one place.
* [Contact support](/help/contact-support.md) — if the connection still does not work.
