PHPackages                             pixelopen/magento-cloudflare-turnstile - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Security](/categories/security)
4. /
5. pixelopen/magento-cloudflare-turnstile

ActiveMagento2-module[Security](/categories/security)

pixelopen/magento-cloudflare-turnstile
======================================

Protect your store from spam messages and spam user accounts with Cloudflare Turnstile

100.3.0(7mo ago)5325.4k↓23.5%9[4 issues](https://github.com/Pixel-Open/magento-cloudflare-turnstile/issues)[1 PRs](https://github.com/Pixel-Open/magento-cloudflare-turnstile/pulls)1PHPPHP ^8

Since Nov 4Pushed 4mo ago4 watchersCompare

[ Source](https://github.com/Pixel-Open/magento-cloudflare-turnstile)[ Packagist](https://packagist.org/packages/pixelopen/magento-cloudflare-turnstile)[ RSS](/packages/pixelopen-magento-cloudflare-turnstile/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (2)Versions (15)Used By (1)

Magento Cloudflare Turnstile
============================

[](#magento-cloudflare-turnstile)

[![Minimum PHP Version](https://camo.githubusercontent.com/ce4853f487ac82c0ad9f925ebf93810c21278dccb05579d177d9df4a154c9be8/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d253345253344253230382e302d677265656e)](https://php.net/)[![Minimum Magento Version](https://camo.githubusercontent.com/4f1152f6fd3edddf6002af0689740bada090d1933458860034c72b8c32ba05a0/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6d6167656e746f2d253345253344253230322e342e342d677265656e)](https://business.adobe.com/products/magento/magento-commerce.html)[![GitHub release](https://camo.githubusercontent.com/0e5b456e3dba81c3e708dd2a022862d61f565c00017cf3c9ccc9fe4aff9bd73d/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f506978656c2d4f70656e2f6d6167656e746f2d636c6f7564666c6172652d7475726e7374696c65)](https://github.com/Pixel-Open/magento-cloudflare-turnstile/releases)

Presentation
------------

[](#presentation)

[Turnstile](https://developers.cloudflare.com/turnstile/) is Cloudflare's smart CAPTCHA alternative. The module allows Turnstile to protect your Magento OpenSource or Adobe Commerce forms.

[![Cloudflare Turnstile](screenshot.png)](screenshot.png)

### Frontend Forms

[](#frontend-forms)

- Contact
- Login
- Register
- Reset password
- Review
- Send product to friend
- Newsletter

### Admin Forms

[](#admin-forms)

- Login
- Reset password

Requirements
------------

[](#requirements)

- Magento &gt;= 2.4.4
- PHP &gt;= 8.0

Installation
------------

[](#installation)

```
composer require pixelopen/magento-cloudflare-turnstile

```

Configuration
-------------

[](#configuration)

### Disable all Magento Captcha

[](#disable-all-magento-captcha)

*Stores &gt; Configuration &gt; Customers &gt; Customer Configuration &gt; CAPTCHA*

- **Enable CAPTCHA on Storefront**: no

*Stores &gt; Configuration &gt; Security &gt; Google reCAPTCHA Storefront &gt; Storefront*

- **Enable for Customer Login**: no
- **Enable for Forgot Password**: no
- **Enable for Create New Customer Account**: no
- **Enable for Contact Us**: no
- **Enable for Product Review**: no

*Stores &gt; Configuration &gt; Security &gt; Google reCAPTCHA Admin Panel &gt; Admin Panel*

- **Enable for Login**: no
- **Enable for Forgot Password**: no

### Enable Cloudflare Turnstile

[](#enable-cloudflare-turnstile)

*Stores &gt; Configuration &gt; Services &gt; Cloudflare Turnstile*

**Settings**

- **Sitekey**: the sitekey given for the site in your Cloudflare dashboard
- **Secret key**: the secret key given for the site in your Cloudflare dashboard

**Storefront**

- **Enabled**: enable Cloudflare Turnstile
- **Theme**: the Turnstile theme (auto, light or dark)
- **Size**: the widget size (compact, normal, or flexible)
- **Forms to validate**: the frontend forms where a Turnstile validation is required

**Admin Panel**

- **Enabled**: enable Cloudflare Turnstile
- **Theme**: the Turnstile theme (auto, light or dark)
- **Size**: the widget size (compact, normal, or flexible)
- **Forms to validate**: the admin forms where a Turnstile validation is required

### Override default config

[](#override-default-config)

You can specifically change theme and size values for a form in the layout:

```

                    compact

                    dark

```

### Command line configuration

[](#command-line-configuration)

#### Settings

[](#settings)

```
bin/magento config:set pixel_open_cloudflare_turnstile/settings/secret_key {secret_key}
bin/magento config:set pixel_open_cloudflare_turnstile/settings/sitekey {sitekey}
```

#### Frontend

[](#frontend)

```
bin/magento config:set pixel_open_cloudflare_turnstile/frontend/enabled {1|0}
bin/magento config:set pixel_open_cloudflare_turnstile/frontend/theme {auto|light|dark}
bin/magento config:set pixel_open_cloudflare_turnstile/frontend/size {normal|compact|flexible}
bin/magento config:set pixel_open_cloudflare_turnstile/frontend/forms contact,register,login,login-ajax,password
```

#### Admin

[](#admin)

```
bin/magento config:set pixel_open_cloudflare_turnstile/adminhtml/enabled {1|0}
bin/magento config:set pixel_open_cloudflare_turnstile/adminhtml/theme {auto|light|dark}
bin/magento config:set pixel_open_cloudflare_turnstile/adminhtml/size {normal|compact|flexible}
bin/magento config:set pixel_open_cloudflare_turnstile/adminhtml/forms login,password
```

### Testing

[](#testing)

Use the following sitekeys and secret keys for testing purposes:

**Sitekey**

SitekeyDescription1x00000000000000000000AAAlways passes2x00000000000000000000ABAlways blocks3x00000000000000000000FFForces an interactive challenge**Secret key**

Secret keyDescription1x0000000000000000000000000000000AAAlways passes2x0000000000000000000000000000000AAAlways fails3x0000000000000000000000000000000AAYields a "token already spent" error### Definitely remove re-captcha

[](#definitely-remove-re-captcha)

To remove all native re-captcha modules, add all modules in the "replace" node of the `composer.json`.

```
{
  "replace": {
    "magento/module-re-captcha-admin-ui": "*",
    "magento/module-re-captcha-checkout": "*",
    "magento/module-re-captcha-checkout-sales-rule": "*",
    "magento/module-re-captcha-contact": "*",
    "magento/module-re-captcha-customer": "*",
    "magento/module-re-captcha-frontend-ui": "*",
    "magento/module-re-captcha-gift-card": "*",
    "magento/module-re-captcha-invitation": "*",
    "magento/module-re-captcha-migration": "*",
    "magento/module-re-captcha-multiple-wishlist": "*",
    "magento/module-re-captcha-newsletter": "*",
    "magento/module-re-captcha-paypal": "*",
    "magento/module-re-captcha-review": "*",
    "magento/module-re-captcha-send-friend": "*",
    "magento/module-re-captcha-store-pickup": "*",
    "magento/module-re-captcha-ui": "*",
    "magento/module-re-captcha-user": "*",
    "magento/module-re-captcha-validation": "*",
    "magento/module-re-captcha-validation-api": "*",
    "magento/module-re-captcha-version-2-checkbox": "*",
    "magento/module-re-captcha-version-2-invisible": "*",
    "magento/module-re-captcha-version-3-invisible": "*",
    "magento/module-re-captcha-webapi-api": "*",
    "magento/module-re-captcha-webapi-graph-ql": "*",
    "magento/module-re-captcha-webapi-rest": "*",
    "magento/module-re-captcha-webapi-ui": "*"
  }
}
```

###  Health Score

48

—

FairBetter than 95% of packages

Maintenance69

Regular maintenance activity

Popularity41

Moderate usage in the ecosystem

Community17

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 98.1% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~88 days

Recently: every ~139 days

Total

13

Last Release

227d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/d2b87043ea111a9f5d76ffa990f48eea6e80576483c7bf33f0dcdd5a899c15c8?d=identicon)[pixeldev](/maintainers/pixeldev)

---

Top Contributors

[![magentix](https://avatars.githubusercontent.com/u/346889?v=4)](https://github.com/magentix "magentix (52 commits)")[![MikeWilkie](https://avatars.githubusercontent.com/u/1428307?v=4)](https://github.com/MikeWilkie "MikeWilkie (1 commits)")

---

Tags

adobe-commercecaptchacloudflareformmagentomagento-2magento-modulesecurityturnstile

### Embed Badge

![Health badge](/badges/pixelopen-magento-cloudflare-turnstile/health.svg)

```
[![Health](https://phpackages.com/badges/pixelopen-magento-cloudflare-turnstile/health.svg)](https://phpackages.com/packages/pixelopen-magento-cloudflare-turnstile)
```

###  Alternatives

[fastly/magento2

Fastly CDN Module for Magento 2.4.x

1564.2M1](/packages/fastly-magento2)[basecom/magento2-csp-split-header

Magento 2 module to split oversized CSP headers into multiple headers.

5256.6k](/packages/basecom-magento2-csp-split-header)[dotdigital/dotdigital-magento2-extension

Dotdigital for Magento 2

50374.2k18](/packages/dotdigital-dotdigital-magento2-extension)[imi/magento2-friendly-captcha

Friendly Captcha integration for Magento2

18116.2k](/packages/imi-magento2-friendly-captcha)[yireo/magento2-csp-whitelist-inline-js

Magento module to automatically add inline JS script to CSP whitelist

2974.7k](/packages/yireo-magento2-csp-whitelist-inline-js)[sansec/magento2-module-shield

14111.8k](/packages/sansec-magento2-module-shield)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
