Title: LocalForm Form Builder for Surveys and Registrations
Author: thexerox
Published: <strong>August 12, 2026</strong>
Last modified: August 13, 2026

---

Search plugins

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

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

# LocalForm Form Builder for Surveys and Registrations

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

[Download](https://downloads.wordpress.org/plugin/localform.2.0.0.zip)

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

 [Support](https://wordpress.org/support/plugin/localform/)

## Description

LocalForm is a form builder for WordPress. Add your questions, drag them into order,
pick your colors, and hit publish. Your form gets its own page and a link you can
share right away – no page building, no shortcode wrangling, no fighting your theme’s
CSS.

The name says what it does: every response stays local, on your own site, under 
your own domain and branding. Nothing is sent to a third-party form service, so 
you stay in control of your visitors’ data. And there is nothing to set up before
your first form is live – install, activate, and start building.

If you have been collecting answers with a cloud form service such as Google Forms
or Microsoft Forms, LocalForm covers the same ground – write your questions, share
a link, read the results back as a summary – except the form lives on your own domain
and the answers never leave your site.

#### What you can build

 * **Surveys and feedback forms.** Ask your questions and read the results back 
   as a summary with counts and charts, right in the admin.
 * **Sign-ups and intake forms.** Collect the details you need and get an email 
   every time someone submits.
 * **Event registrations.** Set the event date, time, location, organizer and price,
   cap the number of registrations, open and close the form on a schedule, and send
   every registrant a confirmation email.

#### Why LocalForm?

 * **Simple to use.** A distraction-free builder: add questions, drag to reorder,
   pick your colors, publish.
 * **Share a link.** Every form gets its own page with a URL you choose – or drop
   it into an existing page with a shortcode or block.
 * **Your data stays yours.** Responses are stored on your own site and can be downloaded
   as an Excel file whenever you like.
 * **No surprises.** No account, no license key, no trial period, and no limit on
   the number of forms or submissions.
 * **Nothing calls home.** No analytics, no telemetry, and fonts are served from
   your own domain – so building a form never sends your visitors anywhere else.
 * **Works with AI assistants.** Built-in MCP support lets an assistant like Claude
   build and edit your forms for you, on your own site – see below.

#### Features

**Building forms**

 * Drag-and-drop builder in the WordPress admin – no code, no page builder needed.
 * Question types: text, long text, email, phone, number, dropdown, single choice,
   checkboxes, date, date range and rating.
 * Add section titles, text and images between questions to explain or break up 
   a long form.
 * Choose the colors and the font; pick from seven bundled font families.
 * Organize your forms with tags and filter the forms list by them.

**Sharing your form**

 * Every form gets its own page at a web address you choose.
 * Place a form inside an existing page or post with the `[localform id="123"]` 
   shortcode or the LocalForm block.
 * Share dialog in the builder: copy the link, copy the embed code, or download 
   a QR code for print and posters.
 * Forms are shown full-screen by default, or in your theme’s normal page layout
   if you prefer.

**Collecting responses**

 * Visitors get instant validation and a thank-you message you can write yourself,
   without the page reloading.
 * Get an email whenever someone submits, and send the person who submitted a confirmation
   email you can customize with their answers.
 * Cap the number of registrations and set an opening and closing date and time,
   with your own message shown when the form is full or closed.
 * Built-in spam protection: a hidden trap field, rate limiting and duplicate-submission
   checks.

**Reading and keeping your results**

 * Browse every submission per form in the admin.
 * Summary view per question: counts and bar charts for choice questions, lowest/
   average/highest for numbers, per-day counts for dates, and the most recent answers
   for open questions.
 * Download all responses as an Excel (XLSX) file.
 * Back up every form, submission and setting to a single file, and restore it here
   or on another site.

**Connecting to other tools**

 * Send each submission to a web address of your choice (a webhook), to plug LocalForm
   into your own system or an automation tool like Zapier, Make or Power Automate.
 * Requests are signed and retried automatically if the receiving end is down, with
   a log of the last 30 days so you can see what went out.
 * Optionally skip saving submissions entirely and only send them onward.

**Building forms with an AI assistant (MCP)**

LocalForm speaks MCP – the Model Context Protocol – so an AI assistant such as Claude
can build your forms for you. Ask for “a registration form for the summer school
on 12 and 13 August, with a student rate”, and the form is created on your site,
with its page, ready for you to review.

 * Three WordPress Abilities are registered – list forms, read a form, and create
   or update one – and become MCP tools as soon as the MCP Adapter plugin is installed.
 * It is your site doing the work. The assistant connects _to_ WordPress; LocalForm
   sends nothing out, and no form or response is uploaded anywhere.
 * Everything goes through the same validation as the builder, so an assistant cannot
   save something you could not have built by hand, and reconfiguring a form never
   touches the responses already collected.
 * Sign in with an Application Password and the usual WordPress permissions apply:
   only an administrator can read or change a form.

LocalForm is fully translatable, with translations contributed through translate.
wordpress.org.

### External services

This plugin does not connect to any external service on its own. It contains no 
analytics, telemetry, license checks or remotely hosted assets.

The MCP support described above adds no outbound request either: it registers WordPress
Abilities, which an AI client calls by connecting _to_ this site over the REST API,
authenticated as a WordPress user. The plugin never contacts an AI provider, and
holds no API key for one.

The one outbound request it can make is entirely under your control: if you enter
a webhook URL on a form (or as the site-wide default under Forms > Settings > Webhooks),
each submission is POSTed as JSON to that URL, signed with HMAC-SHA256. That destination
is chosen and operated by you – the plugin has no default endpoint and sends nothing
anywhere if no webhook URL is configured. The payload contains the submitted answers,
the form title and slug, the event details you set on the form, and any custom fields
you added. Consult the privacy policy and terms of the service you point the webhook
at, since they are the party receiving the data.

## Screenshots

[⌊Form builder in the WordPress admin.⌉⌊Form builder in the WordPress admin.⌉[

Form builder in the WordPress admin.

[⌊Frontend fullscreen form page.⌉⌊Frontend fullscreen form page.⌉[

Frontend fullscreen form page.

[⌊Responses summary with per-question charts and XLSX export.⌉⌊Responses summary
with per-question charts and XLSX export.⌉[

Responses summary with per-question charts and XLSX export.

[⌊Webhook log viewer.⌉⌊Webhook log viewer.⌉[

Webhook log viewer.

## Blocks

This plugin provides 1 block.

 *   LocalForm

## Installation

 1. In your WordPress admin, go to Plugins > Add New, search for “LocalForm”, and click
    Install Now. Or upload the plugin files to `/wp-content/plugins/localform/`.
 2. Activate the plugin through the ‘Plugins’ screen in WordPress.
 3. Go to ‘Forms’ in the admin menu and click ‘Add form’ to build your first one.
 4. Publish the form and use the Share button to copy its link.

## FAQ

### Do I need an account or a license key?

No. There is no sign-up, no license key and no trial. Install the plugin and everything
described here works straight away, with no limit on the number of forms or submissions.

### Can I use this instead of a cloud form service?

That is what it is built for. If you are used to Google Forms, Microsoft Forms or
a similar service, you will recognise the way LocalForm works: add your questions,
publish, share the link, and read the answers back as a summary. The differences
are that the form sits on your own domain and carries your own branding, the responses
are stored on your site rather than in someone else’s account, and your visitors
are not sent to a third-party page to answer. LocalForm is not affiliated with, 
or endorsed by, any of those services.

### Where do my responses go?

They are saved on your own site, in your own WordPress database, and only you can
see them. LocalForm does not send them to any form service, and there is no dashboard
elsewhere holding a copy.

### How do people find my form?

Every form gets its own page with a web address you choose – just share that link,
by email, on social media, or as the QR code you can download from the Share button.
You can also place the form inside a page or post you already have.

### Can I put a form in an existing page?

Yes. Add the LocalForm block in the block editor, or paste the `[localform id="123"]`
shortcode. The form’s own page keeps working at the same time.

### Do I get an email when someone fills in my form?

Yes. Each form can email you on every submission, and can also send the person who
submitted a confirmation email. You can write that message yourself and drop their
answers into it – for example the form title, the event date, or any question you
asked.

### Can I stop taking registrations after a certain number, or on a certain date?

Yes. Set a maximum number of registrations and/or an opening and closing date and
time per form. Once the form is full or closed, visitors see a message you write
instead of the form. The maximum requires responses to be saved in WordPress.

### Will the form match my site’s design?

You choose the colors and font for each form, and forms are shown on a clean full-
screen page by default so nothing in your theme gets in the way. If you would rather
the form sit in your theme’s normal page layout, there is a per-form setting for
that.

### How do you stop spam submissions?

LocalForm uses a hidden trap field that real visitors never see, limits how often
the same visitor can submit, and blocks accidental duplicate submissions. You can
adjust all three under Forms > Settings > Security.

### Can I get my responses into Excel?

Yes. The submissions screen for each form has a download button that gives you an
XLSX file of every response.

### Can I move my forms to another site?

Yes. Under Forms > Settings > Data, “Download backup” gives you a single file with
every form, its submissions and your settings. Upload that file on any other site
running LocalForm to bring everything across. If a form already exists there, you
choose whether to keep it or replace it with the backed-up one – so restoring the
same file twice never duplicates your responses. Webhook logs are not included in
the backup.

### What happens to my forms if I delete the plugin?

Deactivating LocalForm never touches your data. Deleting it removes everything by
default – your forms, responses and settings. If you want them to survive, turn 
on “Keep my data when the plugin is deleted” under Forms > Settings > Data before
you delete, or download a backup first.

### Can I send submissions to another tool?

Yes. Enter a web address (a webhook) on the form, or as a site-wide default under
Forms > Settings > Webhooks, and each submission is sent there as it comes in – 
handy for connecting to a CRM, a spreadsheet, or an automation tool. Requests are
signed with a secret key so the receiving end can confirm they came from you, are
retried if the other side is temporarily down, and the last 30 days of deliveries
are logged so you can check what was sent. If you would rather not store responses
in WordPress at all, you can switch a form to send them onward only.

### Can an AI assistant build my forms?

Yes, and it is built in. LocalForm registers three WordPress Abilities – list forms,
read a form, create or update a form – which become MCP tools once you install the
[MCP Adapter](https://github.com/WordPress/mcp-adapter) plugin. Point an assistant
such as Claude at your site with an Application Password and you can ask for a form
in plain language; it is built here, on your own domain, with its page created for
you. The assistant signs in with an administrator’s Application Password, and everything
it saves goes through the same validation as the builder – so it cannot create something
you could not have built by hand. Reconfiguring a form never deletes the responses
it has already collected.

The premium add-on, LocalForm Pro, adds the other half of this: a “Build with AI”
panel inside the WordPress admin that does the same thing without an outside assistant,
using whichever AI provider your site is already connected to.

### Does the AI support send my forms to an AI company?

Not by itself. The free plugin makes no outbound request of any kind – an MCP assistant
connects _to_ your site, the way your browser does, and the abilities only read 
and write your own database. Whatever you type into that assistant goes to whoever
you are using it with, exactly as it does when you chat with it about anything else;
that is between you and them, and LocalForm is not in the middle of it.

### Does LocalForm send any data to an external service?

No. The plugin makes no outbound requests of its own: no analytics, no license checks,
no telemetry, and no remotely hosted fonts or scripts. The only request it can ever
make is to a webhook address you enter yourself.

### Where do the fonts come from?

The seven font families (Inter, Roboto, Open Sans, Lato, Montserrat, Poppins and
Nunito) are included with the plugin and served from your own site, not from Google
Fonts or any other network. Picking one never reveals a visitor’s IP address to 
a third party. All seven are licensed under the SIL Open Font License 1.1; the license
text is included at `assets/fonts/OFL.txt`.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“LocalForm Form Builder for Surveys and Registrations” is open source software. 
The following people have contributed to this plugin.

Contributors

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

[Translate “LocalForm Form Builder for Surveys and Registrations” into your language.](https://translate.wordpress.org/projects/wp-plugins/localform)

### Interested in development?

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

## Changelog

#### 1.4.0

 * Renamed the plugin to LocalForm. Existing forms, submissions, webhook logs and
   settings are migrated automatically on upgrade.
 * Event details (date, time, location, organizer, price) are now part of the free
   plugin, with their own settings card in the form builder.
 * Fonts are bundled with the plugin and served from your own domain; the form page
   no longer requests anything from Google Fonts.
 * All request data is sanitized at the point it is received, before it is shaped,
   stored or passed to any filter.
 * Per-form colors and fonts are attached to the enqueued stylesheets instead of
   being printed as inline `<style>` tags.
 * Translations are now delivered through translate.wordpress.org rather than bundled
   with the plugin.
 * New “Keep my data when the plugin is deleted” setting under Settings > Data, 
   for sites that want their forms and submissions to survive an uninstall.
 * Backup & Restore under Settings > Data: download every form, submission and setting
   as one JSON file, and restore it here or on another site.

#### 0.6.0

 * Email notifications: per-form admin notification and registrant confirmation 
   emails with placeholder support.
 * Registration limits: maximum registrations plus open/close date-times, with a
   configurable closed message.
 * Embedding: `[localform]` shortcode and a LocalForm Gutenberg block to place forms
   on any page or post.
 * New field types: single choice (radio) and date.

#### 0.5.0

 * Tag management for organizing forms, with tag filtering in the forms list.
 * Slug field enhancements in the form editor.

#### 0.4.0

 * Text and image blocks for adding static content to forms.
 * Performance improvements to form resolution and template loading.

#### 0.3.0

 * Per-form event date and payment price, included in the webhook payload and shown
   on the form page.
 * Semantic-release based build and packaging pipeline.

#### 0.2.0

 * Initial public release.

## Meta

 *  Version **2.0.0**
 *  Last updated **9 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.9 or higher **
 *  Tested up to **7.0.4**
 *  PHP version ** 8.1 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/localform/)
 * Tags
 * [form builder](https://zgh.wordpress.org/plugins/tags/form-builder/)[forms](https://zgh.wordpress.org/plugins/tags/forms/)
   [registration](https://zgh.wordpress.org/plugins/tags/registration/)[surveys](https://zgh.wordpress.org/plugins/tags/surveys/)
   [webhooks](https://zgh.wordpress.org/plugins/tags/webhooks/)
 *  [Advanced View](https://zgh.wordpress.org/plugins/localform/advanced/)

## Ratings

No reviews have been submitted yet.

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

[See all reviews](https://wordpress.org/support/plugin/localform/reviews/)

## Contributors

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

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/localform/)