Contact Form 7 Image CAPTCHA, WPForms Image CAPTCHA, Contact Form 7 Spam Image CAPTCHA, WPForms Spam Image CAPTCHA, GDPR


Add an SVG image captcha and honeypot to your Contact Form 7 or WPForms form. This CAPTCHA is GDPR compliant and becuase the images are inline SVG’s, this plugin will not slow down your site with additional header requests like Google’s ReCAPTCHA and respects your users privacy.

Directions [PLEASE READ]

Contact Form 7:
Add the shortcode [cf7ic] to the form editor where you want the CAPTCHA to appear.

You can hide the CAPTCHA until a user interacts with the form, by adding « toggle » to the shortcode: [cf7ic « toggle »]

Like the plugin?
Please consider leaving a review.

As of version 3.2.0, Contact Form 7 Conditional Fields is now fully supported! You no longer need to add [hidden kc_captcha "kc_human"] to forms that do not include the [cf7ic] shortcode.

Passer à la version Pro !

Get even better spam protection with the All-in-one Image CAPTCHA Pro version of this plugin which includes additional options to improve spam protection, options to control the look and style of the CAPTCHA and messages, additional forms support including login screens, gravity forms, WooCommerce and more.

PRO Demo
See the Pro version in action on my Contact page. You can also check out my YouTube channel for instructional videos and demos.

Check out our pro version for more details.

PRO Features:

  • GDPR compliant
  • ADA/a11y/WCAG compliant
  • Gravity Forms support
  • WooCommerce support for login, registration and checkout forms (optional)
  • WordPress login/registration form support (optional)
  • Default WordPress comment support
  • Customize the look of the WordPress login/registration screen and form
  • CAPTCHA refreshes on submit to make it harder for automated spammers
  • Reverse honeypot which checks if you are human through form engagement
  • Stronger security with hashed answers to make it harder for automated spammers to read the answers
  • Add additional icons to increase the chances of a random guess getting through. You can increase it from a 1 and 3 chance all the way up to a 1 in 10 chance!
  • Select which icons you wish to use
  • Add additional icons from Font Awesome 4.7
  • Add your own custom SVG icons
  • Customize the icon titles
  • Change the captcha message
  • Change the captcha errors
  • Change the box color and border
  • Change font and icon color and size independently
  • Change the selected icon appearance
  • Change where the icons appear
  • Change the box from full width to content width
  • jQuery free on the front end

Passer à la version Pro !

Captures d’écran

  • screenshot-1.png
  • screenshot-2.png
  • Pro version settings page


  1. Upload contents to the /wp-content/plugins/ directory
  2. Activez-la via le menu Extensions dans l’admin WordPress
  3. Place [cf7ic] to your contact form 7 forms


Why is the image CAPTCHA showing the wrong language?

Please be informed that only our Pro version supports other languages than English.

Contact Form 7 sets your form language based upon your sites language settings. If you created your form when it was set to English, then the CAPTCHA will appear in English, this can be corrected by re-creating the form while your primary language is set in your sites settings, or you can try using a plugin like Contact Form 7 Multilingual or Contact Form 7 Polylang extension.

How do you add the image CAPTCHA to the Contact Form 7 forms?

Simply add this shortcode [cf7ic] to your contact form.

How do you use the toggle feature for Contact Form 7?

To make it so the CAPTCHA only shows when the form is being filled out, add « toggle » to the shortcode [cf7ic "toggle"] in your contact form.

Toggle for Contact Form 7 is not working

The most likely reason the toggle is not working is because the double quotes around the word toggle has been changed to « smart quotes », meaning that they are opening and closing quotation marks and not the verticle lines.

To fix, simply delete the quotes and re-add them with your keyboard – do not copy and paste.

Why does the image CAPTCHA not appear?

If the Image CAPTCHA does not appear, please confirm that you are running PHP version 7 or higher.

Why does the styling of the image CAPTCHA look wrong?

If the styling does not look right, you may need to clear your browser cache. If you have any caching plugins or speed optimization plugins installed, you may need to clear your site cache as well.


18 septembre 2023
Easy to configure, lot of options (for the pro version). The best thing is, it really works, we had a lot of spam with another honeypot and we did not want to add any Google things again or buy the expensive Akismet, so we found this neat plugin. English and german support with very good reaction time surprised in addition.
4 janvier 2023 1 réponse
I don't know why, it works well on CF7 Version 5.6. BUT It cannot switch languages automatically on CF7 Version 5.7.2. I already update it to Version 3.3.3 but still no working.
17 novembre 2022 3 réponses
A simple captcha plugin for Contact Form 7, translated into several languages.
Lire les 35 avis

Contributeurs/contributrices & développeurs/développeuses

« Contact Form 7 Image CAPTCHA, WPForms Image CAPTCHA, Contact Form 7 Spam Image CAPTCHA, WPForms Spam Image CAPTCHA, GDPR » est un logiciel libre. Les personnes suivantes ont contribué à cette extension.


“Contact Form 7 Image CAPTCHA, WPForms Image CAPTCHA, Contact Form 7 Spam Image CAPTCHA, WPForms Spam Image CAPTCHA, GDPR” a été traduit dans 21 locales. Remerciez l’équipe de traduction pour ses contributions.

Traduisez « Contact Form 7 Image CAPTCHA, WPForms Image CAPTCHA, Contact Form 7 Spam Image CAPTCHA, WPForms Spam Image CAPTCHA, GDPR » dans votre langue.

Le développement vous intéresse ?

Parcourir le code, consulter le SVN dépôt, ou s’inscrire au journal de développement par RSS.


3.3.7 [09/22/2023]

  • Display WP Admin menu, add WPForms functionality, update languages

3.3.6 [09/04/2023]

  • Change URLs to new plugin website and change author etc.

3.3.5 [01/26/2023]

  • Added additional changes to the plugin’s internationalization settings to fix issues with translations not working correctly on some sites.

3.3.4 [01/26/2023]

  • Fixed bug introduced by Contact Form 7 version 5.7.3 which prevented the CAPTCHA from rendering. Thanks @patrick1994 for providing the fix.

3.3.3 [12/27/2022]

  • Updated the name of the languages folder to correct issues with translations not working on some sites.

3.3.2 [11/23/2022]

  • Added Finnish translation

3.3.1 [11/16/2022]

  • Fixed SVG validation error
  • Fixed an issue with the toggle only working on one form on a page

3.3.0 [11/15/2022]

  • No more jQuery! Changed jQuery toggle function to JavaScript
  • Re-added localized language files due to issues with working correctly

3.2.6 [09/01/2022]

  • Fixed issue where validation errors were not showing due to the Contact Form 7 version 5.6 update
  • Removed localized language files in favor of using

3.2.5 [03/08/2022]

  • Fixed iPhone bug where icon would not show focus state when touched
  • Removed some unused styling to help reduce the stylesheet file size

3.2.4 [09/20/2021]

  • Minor update to styling to force icons to align horizontally, to fix an issue where the styling of some themes was causing the icons to stack vertically.

3.2.3 [06/08/2021]

  • Changed all http links to https
  • Compressed SVG’s to help improve load time

3.2.2 [04/15/2021]

  • Fixed double tap and partial border iPhone bug

3.2.1 [08/11/2020]

  • Added Croatian translation

3.2.0 [08/11/2020]

  • NEW: Full compatability for “Contact Form 7 Conditional Fields” by Jules Colle. Conditional Fields had been an ongoing issue for this plugin for a while now due to how the Conditional Fields plugin performed form validations, however I was finally able to come up with a solution that will allow this plugin to function normally with Conditional Fields installed. You no longer need to include [hidden kc_captcha « kc_human »] to your forms if the [cf7ic] shortcode is not included.


  • Updated German (de) translation


  • Updated Spanish (es) MO file


  • Updated toggle so only the CAPTCHA on the form focused on will show. Previously if multiple forms with toggle were on a page, all of the CAPTCHA’s would show.
  • Updated toggle to hide CAPTCHA again once form has been successfully submitted.
  • Added Dutch translation
  • Added Portuguese (Portugal) translation


  • Added additional css to prevent themes from changing the layout of the icons in the CAPTCHA


  • Fixed issue where you needed to add [hidden kc_captcha "kc_human"] to forms you Did NOT want the CAPTCHA to be on. You now ONLY need to add the hidden field to your forms with no CAPTCHA, IF you have Contact Form 7 Conditional Fields installed.


  • Fixed use of depricated WPCF7_Shortcode in favor or WPCF7_FormTag function
  • Updated readme file to bring more attention to adding the hidden field to forms you DO NOT want the CAPTCHA on.


  • Added width and height to inline SVG to account for sizing issues some users have experienced


  • Updated stylesheet version number to help clear old stylesheet from cache


  • Icons have been changed to SVG’s to help fix font loading issues on some sites
  • Italian language file has been updated to fix « heart » entry – thanks valesilve
  • Improved inclusion of JavaScript when toggle is active using wp_footer
  • Made CAPTCHA keyboard accessible


  • Added Russian translation


  • Now compatible with « Smart Grid-Layout Design for Contact Form 7 » by Aurovrata V.


  • Added fallback styling in the event a theme or plugin changes the icons from a webfont to SVG’s


  • Now compatible with « Contact Form 7 Conditional Fields » by Jules Colle


  • Made additional fix to spacing issue with German language


  • Fixed spacing issue with German language


  • Fixed PHP notice « Undefined offset: 0 »
  • Fixed PHP notice for another deprecated tag


  • Added the ability to hide the CAPTCHA until the user interacts with the form, simply add « toggle » to the shortcode: [cf7ic « toggle »]
  • Fixed deprecation notice “wpcf7_add_shortcode is deprecated since Contact Form 7 version 4.6! Use wpcf7_add_form_tag instead.”


  • Updated FontAwesome library to version 4.7
  • Fixed use of depricated wpcf7_add_shortcode in favor or wpcf7_add_form_tag function
  • Added new toggle attribute (optional) [cf7ic « toggle »] which hides CAPTCHA until user interacts with the form


  • Added code that allows me to add custom update messages in preparation for a future release that will make this plugin require Contact Form 7 version 4.6 to run due to CF7 making WPCF7_Shortcode and wpcf7_add_shortcode() deprecated, the replacement function and class are not supported by older versions of CF7.
  • Updated text domain to meet new requirements for internationalization


  • Removed unnecessary code that checked if image captcha existed in the Form
  • Added Italian translation (Thanks Mauro Giuliani)
  • Added Persian translation (Thanks Ava Darabi)
  • Added Spanish (ES) translation (Thanks Erick Carbo)


  • Added a tag generator button to the contact form 7 form controls so you do not have to manually type in the shortcode into the form. The pro version will eventually include the image captcha styling options.


  • Refactorisation du code
  • Improved method to include style sheet so its only included when plugin is in use.
  • Fixed validation message, you will now see « Please select an icon. » when icon is not selected on submit and « Please select the correct icon. » when the wrong icon was selected on submit.


  • Added Spanish (MX) translation


  • Updated German translation (Thanks bkmh)
  • Added pro plugin details and link


  • Added Bulgarian translation (Thanks Plamen Petkov)


  • Improved German translation (Thanks Te-Punkt)


  • Updated files and folder name
  • Added German translation
  • Added French translation (Thanks deuns26)


  • Version initiale