Title: Khushal Forms
Author: Khushal Tank
Published: <strong>September 23, 2026</strong>
Last modified: September 23, 2026

---

Search plugins

![](https://ps.w.org/khushal-forms/assets/banner-772x250.png?rev=3709936)

![](https://ps.w.org/khushal-forms/assets/icon-256x256.png?rev=3709936)

# Khushal Forms

 By [Khushal Tank](https://profiles.wordpress.org/khushal1995/)

[Download](https://downloads.wordpress.org/plugin/khushal-forms.0.1.0.zip)

 * [Details](https://wordpress.org/plugins/khushal-forms/#description)
 * [Reviews](https://wordpress.org/plugins/khushal-forms/#reviews)
 *  [Installation](https://wordpress.org/plugins/khushal-forms/#installation)
 * [Development](https://wordpress.org/plugins/khushal-forms/#developers)

 [Support](https://wordpress.org/support/plugin/khushal-forms/)

## Description

Khushal Forms is a form builder for WordPress. You create the form, visitors fill
it in, and the answers stay in your own database.

Start from a ready-made form, or build one field by field. Each starter form shows
a preview of what visitors will see, including a multi-step enquiry with Next and
Previous. Publish the form, then place it on a page with the shortcode `[khushal_form
id="123"]` or the Khushal Forms block.

**Build the form**

 * Add text, email, phone, number, URL, dropdown, checkbox, radio, file, consent,
   and hidden fields.
 * Set a field to full, half, or one-third width.
 * Split a long form into steps.
 * Show or hide a field based on an earlier answer.
 * Save the form as a draft, then publish it when it is ready.
 * Duplicate a form, or export and import it as JSON.

**Read the answers**

 * Open Entries to see each submission, mark it read or unread, and move it to trash.
 * Search entries and export them to CSV.
 * Uploaded files stay in your uploads folder and are not added to the Media Library.

**Send email**

 * Send an admin notification when someone submits the form.
 * Send an automatic reply to the visitor.
 * Send one extra email if you need a third copy.
 * Browse sample email layouts, preview one, then use it on the form.
 * Attach a file the visitor uploaded.
 * Use your site’s normal WordPress mail, or save an SMTP mailbox under Settings.

A successful send means the mail server accepted the message. It does not prove 
that the inbox received it.

**What stays on your site**

Forms, entries, and files are stored on this WordPress site. Khushal Forms does 
not send submissions to its own server, and it does not include usage tracking. 
Analytics are daily totals for views and submissions, not a profile of each visitor.
Entry rows do not store IP addresses.

Spam checks that run without an outside service are a honeypot, a minimum time to
fill the form, and a limit on how often the same visitor can submit. Cloudflare 
Turnstile is optional and off until you add your own keys. If you turn it on, the
form loads Cloudflare’s widget script (`https://challenges.cloudflare.com/turnstile/
v0/api.js`) and the server checks the token with Cloudflare.

A webhook is also optional. If you add a public http or https address, the plugin
can send one JSON request after an entry is saved. Private and loopback addresses
are blocked. A failed webhook does not delete the entry.

You do not need Elementor, WooCommerce, or another form plugin.

### Privacy

Submitted field values are stored in custom tables on this site. File uploads go
under `wp-content/uploads/khushal-forms/`. Notification logs store status, not message
bodies. Analytics tables store daily aggregates without IP addresses or fingerprints.

WordPress **Export Personal Data** and **Erase Personal Data** include entries that
match the request email (logged-in user or an email field). Guest entries without
an email field cannot be matched automatically.

Optional Turnstile sends a token to Cloudflare for verification. Optional webhooks
send a payload to the URL you enter.

See `docs/privacy.md` in the plugin folder for a full data map.

## Screenshots

[⌊The forms list, with the shortcode, status, and entry count for each form.⌉⌊The
forms list, with the shortcode, status, and entry count for each form.⌉[

The forms list, with the shortcode, status, and entry count for each form.

[⌊Starter form templates, with a preview of the form visitors will see.⌉⌊Starter
form templates, with a preview of the form visitors will see.⌉[

Starter form templates, with a preview of the form visitors will see.

[⌊Submitted entries, with search, read status, and CSV export.⌉⌊Submitted entries,
with search, read status, and CSV export.⌉[

Submitted entries, with search, read status, and CSV export.

[⌊The form builder. Add a field, set its width, and edit the selected field.⌉⌊The
form builder. Add a field, set its width, and edit the selected field.⌉[

The form builder. Add a field, set its width, and edit the selected field.

[⌊Email templates for the admin notification, the customer auto-reply, and an additional
email.⌉⌊Email templates for the admin notification, the customer auto-reply, and
an additional email.⌉[

Email templates for the admin notification, the customer auto-reply, and an additional
email.

[⌊Tools for entry retention, trash, notification logs, and analytics.⌉⌊Tools for
entry retention, trash, notification logs, and analytics.⌉[

Tools for entry retention, trash, notification logs, and analytics.

[⌊Settings for uninstall, how long entries are kept, and the public form style.⌉⌊
Settings for uninstall, how long entries are kept, and the public form style.⌉[

Settings for uninstall, how long entries are kept, and the public form style.

## Installation

 1. Upload the `khushal-forms` folder to `/wp-content/plugins/`, or install it from
    the Plugins screen.
 2. Activate Khushal Forms.
 3. Open **Khushal Forms** in the admin menu.
 4. Use **Form templates** to start from a ready-made form, or choose **Add New Form**
    and add fields yourself.
 5. Publish the form. Copy its shortcode from the forms list, or add the Khushal Forms
    block to a page.
 6. Optional: open **Email templates** to preview a notification, then apply it while
    editing the form. SMTP, Turnstile, and how long entries are kept are under Settings.

## FAQ

### Does this plugin send submissions to an external service?

No, not by default. Entries stay in your WordPress database. Email uses `wp_mail()`.
A webhook runs only if you add a destination URL. Turnstile talks to Cloudflare 
only if you enable it.

### Does email “delivery” mean the inbox received it?

No. Logs record whether WordPress accepted the mail through `wp_mail()`, not mailbox
delivery.

### Does deactivating the plugin delete forms or entries?

No. Deactivation never deletes forms or entries. The retention cron is unscheduled
while the plugin is inactive.

### What happens on uninstall?

Data is removed only if you enable **Delete all Khushal Forms data when the plugin
is uninstalled** (off by default). Otherwise only the retention cron is cleared.

### Is there telemetry?

No. There is no usage tracking, no phone-home, and no Khushal Forms analytics endpoint.

### Which PHP and WordPress versions are required?

WordPress 6.5 or later and PHP 8.1 or later.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Khushal Forms” is open source software. The following people have contributed to
this plugin.

Contributors

 *   [ Khushal Tank ](https://profiles.wordpress.org/khushal1995/)

[Translate “Khushal Forms” into your language.](https://translate.wordpress.org/projects/wp-plugins/khushal-forms)

### Interested in development?

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

## Changelog

#### 0.1.0

 * First public release. Build a form or start from a template, including a multi-
   step form. Collect entries on your site, export CSV, and send admin and visitor
   emails from included layouts. Optional SMTP, webhooks, and Cloudflare Turnstile.
   Privacy export and erase, entry retention, and an uninstall option that is off
   by default.

## Meta

 *  Version **0.1.0**
 *  Last updated **16 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.5 or higher **
 *  Tested up to **7.1.2**
 *  PHP version ** 8.1 or higher **
 * Tags
 * [contact form](https://wordpress.org/plugins/tags/contact-form/)[email](https://wordpress.org/plugins/tags/email/)
   [entries](https://wordpress.org/plugins/tags/entries/)[form builder](https://wordpress.org/plugins/tags/form-builder/)
   [forms](https://wordpress.org/plugins/tags/forms/)
 *  [Advanced View](https://wordpress.org/plugins/khushal-forms/advanced/)

## Ratings

 5 out of 5 stars.

 *  [  1 5-star review     ](https://wordpress.org/support/plugin/khushal-forms/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/khushal-forms/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/khushal-forms/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/khushal-forms/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/khushal-forms/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/khushal-forms/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/khushal-forms/reviews/)

## Contributors

 *   [ Khushal Tank ](https://profiles.wordpress.org/khushal1995/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/khushal-forms/)