Title: Clean Form Mail
Author: andrewjbruce
Published: <strong>June 1, 2026</strong>
Last modified: June 1, 2026

---

Search plugins

![](https://ps.w.org/ajb-clean-form-mail/assets/banner-772x250.png?rev=3558314)

![](https://ps.w.org/ajb-clean-form-mail/assets/icon-256x256.png?rev=3556967)

# Clean Form Mail

 By [andrewjbruce](https://profiles.wordpress.org/andrewjbruce/)

[Download](https://downloads.wordpress.org/plugin/ajb-clean-form-mail.3.3.0.zip)

 * [Details](https://wordpress.org/plugins/ajb-clean-form-mail/#description)
 * [Reviews](https://wordpress.org/plugins/ajb-clean-form-mail/#reviews)
 *  [Installation](https://wordpress.org/plugins/ajb-clean-form-mail/#installation)
 * [Development](https://wordpress.org/plugins/ajb-clean-form-mail/#developers)

 [Support](https://wordpress.org/support/plugin/ajb-clean-form-mail/)

## Description

Clean Form Mail is a lightweight, easy-to-use contact form plugin for WordPress 
that makes sending email from your site simple and reliable. It allows you to create
adaptable forms directly from the admin panel, with built-in spam protection using
honeypot fields and IP rate limiting to prevent abuse. Auto reply functionality 
ensures your users receive instant confirmation, while flexible email delivery keeps
your communications dependable without any unnecessary bloat. Perfect for anyone
who wants a straightforward, secure, and efficient way to handle form submissions
on their site.

**Key Features**

 * **Lightweight & Efficient:** Minimal code footprint ensures fast performance 
   without slowing down your site.
 * **Adaptable Forms:** Easily create multiple forms with configurable fields, recipients,
   and attachments — each with its own independent settings.
 * **Spam Protection:** Built-in honeypot fields and IP rate limiting prevent spam
   submissions and repeated abuse attempts.
 * **Auto Replies:** Automatically send personalised confirmation emails to users
   after submission, using {placeholders} to include their own details.
 * **Reliable Email Delivery:** Leverages the WordPress mail system to ensure messages
   are delivered consistently. Works with any SMTP plugin for enhanced reliability.
 * **File Upload Support:** Optional file uploads directly through your forms, with
   configurable file types and size limits.
 * **Easy Administration:** Manage all forms and settings through the WordPress 
   admin panel with an intuitive, clutter-free interface that follows your chosen
   WordPress colour scheme.
 * **3 After-Submit Options:** Show an inline success message, redirect to a personalised
   thank-you page using `[cfm_thankyou]`, or redirect visitors to any page on your
   site.
 * **Click-to-Copy Shortcodes:** Click any shortcode in the admin panel to copy 
   it to your clipboard instantly.

**Why Choose Clean Form Mail?**

Many form plugins are bloated or complicated for simple sites. Clean Form Mail focuses
on simplicity, reliability, and security. Whether you are running a personal blog,
small business site, or portfolio, this plugin gives you everything you need for
contact forms — without overwhelming settings or unnecessary features.

When you are ready to grow, the multi-form system means you can run different forms
for different purposes — a general contact form, a quote request form, a support
form — all from one plugin, each completely independent.

**Shortcodes**

Place a form on any page or post:

    ```
    `[clean_form_mail]```
    ```

Use a specific form by its ID:

    ```
    [clean_form_mail id="quote"]
    ```

Override the recipient or subject for one specific page:

    ```
    [clean_form_mail id="contact" recipient="sales@yoursite.com" subject="Sales Enquiry"]
    ```

Personalised thank-you page (place on a dedicated page):

    ```
    [cfm_thankyou id="contact"]
    ```

### Support

For support, please use the WordPress.org support forum for Clean Form Mail, or 
visit the plugin page at https://ajb.co/wp-plugins/cfm/

## Screenshots

 * [[
 * The forms list — manage all your contact forms from one screen, with shortcode
   reference and click-to-copy
 * [[
 * Form editor — General tab with recipient settings, spam protection, rate limiting,
   and font options
 * [[
 * Form Fields tab — add, reorder, and configure fields with drag-and-drop; nine
   field types supported
 * [[
 * After Submit tab — choose inline message, personalised thank-you page, or redirect
   to any page
 * [[
 * Auto-Reply tab — write a personalised confirmation email with clickable placeholder
   chips
 * [[
 * Shortcode tab — click any shortcode or field placeholder to copy it to your clipboard
 * [[
 * Front-end contact form as rendered on a page, inheriting the theme’s design

## Installation

 1. Download and install Clean Form Mail from the WordPress plugin directory.
 2. Activate the plugin via the **Plugins** menu in WordPress.
 3. Navigate to the **Clean Form Mail** menu in your admin panel to create and configure
    your forms.
 4. Customise form fields, recipients, and optional features like auto reply or file
    upload.
 5. Save your settings and embed your form using the shortcode `[clean_form_mail]` 
    anywhere on your site.

For reliable email delivery, install a free SMTP plugin such as WP Mail SMTP or 
FluentSMTP alongside Clean Form Mail.

## FAQ

### Can I have different forms on different pages?

Yes. Each form has its own unique shortcode ID — for example `[clean_form_mail id
="contact"]` and `[clean_form_mail id="quote"]`. Each form has completely independent
fields, recipient address, auto reply, and after-submit settings.

### How do I use placeholders in the auto reply?

Use the field ID in curly braces — for example `{name}`, `{email}`, `{message}`.
System placeholders `{site_name}`, `{site_url}`, and `{date}` are also available.
If a visitor leaves an optional field blank, any line referencing that placeholder
is automatically removed so the email always reads cleanly.

### How does the spam protection work?

Clean Form Mail uses two layers. An invisible honeypot field is embedded in every
form — real visitors never see or fill it in, but bots do and are instantly blocked.
IP rate limiting allows you to set a maximum number of submissions per IP address
per time window, preventing repeated abuse. No CAPTCHA puzzles are needed.

### What happens if I delete a form that is still on a page?

The shortcode renders nothing and leaves an invisible HTML comment in the source
code noting the form ID was not found, so you can easily locate and remove or update
the shortcode.

### How do I use the select dropdown field?

In the Form Fields tab, set the field type to Select. A dedicated Options input 
appears in that field’s row — enter your options comma-separated, for example `General
Enquiry,Sales,Support,Other`.

### Does it work with any theme?

Yes. The form inherits your theme’s font by default so it blends in naturally. All
CSS class names are prefixed with `cfm-` to avoid conflicts. You can also set a 
custom Google Font from the admin panel.

### Do I need to set up a database?

No. Clean Form Mail stores all settings in standard WordPress options. There are
no custom database tables.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Clean Form Mail” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ andrewjbruce ](https://profiles.wordpress.org/andrewjbruce/)

[Translate “Clean Form Mail” into your language.](https://translate.wordpress.org/projects/wp-plugins/ajb-clean-form-mail)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/ajb-clean-form-mail/),
check out the [SVN repository](https://plugins.svn.wordpress.org/ajb-clean-form-mail/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/ajb-clean-form-mail/)
by [RSS](https://plugins.trac.wordpress.org/log/ajb-clean-form-mail/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 3.3.0

 * New: Button style settings — colour, size, corner radius, alignment
 * New: Label alignment setting — left, centre, or right
 * Fixed: [cfm_thankyou] shortcode copy button was copying old shortcode name
 * Fixed: Add New Form now works correctly from the forms list
 * Improved: Button text colour chosen automatically for readability against chosen
   background

#### 3.2.1

 * Renamed to Clean Form Mail
 * All CSS prefixes updated to cfm-
 * Shortcodes updated to `[clean_form_mail]` and `[cfm_thankyou]`
 * readme.txt updated with full documentation

#### 3.2.0

 * All output correctly escaped per WordPress coding standards
 * wp_safe_redirect() used throughout
 * wp_unslash() applied to all $_POST, $_GET, and $_SERVER input
 * $_FILES validated before use
 * Google Font enqueue version fixed
 * Click-to-copy shortcodes added to admin

#### 3.1.1

 * Fixed deleted forms still rendering via shortcode
 * Fixed backslashes accumulating in saved text on each save

#### 3.1.0

 * Admin panel now follows WordPress admin colour scheme automatically
 * Button hover states corrected throughout

#### 3.0.0

 * Multiple independent forms — unlimited forms each with unique shortcode ID
 * Per-form settings: fields, recipient, auto reply, after-submit, font
 * Duplicate form feature

#### 2.0.0

 * After Submit options: inline message, thank-you page, or redirect
 * File upload field type with drag-and-drop interface
 * Honeypot spam protection
 * IP rate limiting
 * Font control: theme font or custom Google Font
 * Placeholder hint text on fields

#### 1.0.0

 * Initial release

## Meta

 *  Version **3.3.0**
 *  Last updated **3 days ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 5.6 or higher **
 *  Tested up to **7.0**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [auto-reply](https://wordpress.org/plugins/tags/auto-reply/)[contact form](https://wordpress.org/plugins/tags/contact-form/)
   [email](https://wordpress.org/plugins/tags/email/)[spam protection](https://wordpress.org/plugins/tags/spam-protection/)
 *  [Advanced View](https://wordpress.org/plugins/ajb-clean-form-mail/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/ajb-clean-form-mail/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/ajb-clean-form-mail/reviews/)

## Contributors

 *   [ andrewjbruce ](https://profiles.wordpress.org/andrewjbruce/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/ajb-clean-form-mail/)