WordPress Plugin

Build WordPress forms without the bloat

A lean, developer-friendly form builder that stores submissions in its own clean database tables — no post meta, no 30-step wizard, no monthly subscription.

15+
Field types
$0
Core form builder
WP 6.2+
Compatibility
0 post meta rows
Contact Us
Save Form
Basic
T
Text
@
Email
Textarea
Select
Layout
H
Heading
Divider
email
Your email
text
Subject
textarea
Message
+ Add field
Field settings
Label
Your email
Placeholder
you@example.com
Required
Half width
Works with
The Problem

A contact form shouldn't cost $99 per year

Popular form plugins bloat your database with post meta rows, slow down your site with jQuery spaghetti, and put basic features like conditional logic behind expensive yearly subscriptions. Luxa Forms gives you a fast, clean builder with custom DB tables — and makes the advanced stuff available as one-time-purchase add-ons.

Gravity Forms charges $59–$259 per year for a form builder
WPForms Pro hides conditional logic behind an $99/yr paywall
Most plugins dump entries into wp_posts and wp_postmeta — no structure, painful to query
Hooks and filters buried or missing, making custom work painful
Luxa Forms is free on WordPress.org with clean custom DB tables
Pro add-ons are one-time purchases — pay once, keep forever

Everything a form builder needs. Nothing it doesn't.

A fully functional free form builder, plus Pro add-ons for teams who need conditional logic, reCAPTCHA, and more.

Click-to-Add Builder

Click any field type to add it to your form, then drag to reorder. No coding, no shortcode memorisation, no setup wizard.

15+ Field Types

Text, email, phone, number, textarea, select, radio, checkbox, date, file upload, heading, divider, HTML block, and more.

AJAX Submission

Forms submit without a page reload, with a live loading state, real-time inline validation, and smooth success/error messages.

Email Notifications

HTML email notifications with merge tags like {email}, {all_fields}, and {form_title} — works on any host.

Entry Manager

Every submission lands in a dedicated entries table. Browse, read, and export to CSV right from wp-admin — no third-party tools needed.

Spam Protection

Honeypot field + nonce verification + rate limiting work silently on every submission. No third-party CAPTCHA keys required for the free tier.

Shortcode Anywhere

Drop into any page, post, widget, or template. Works in Gutenberg, Elementor, Divi, and every classic editor.

Pages Posts Widgets Templates
Embed anywhere
📄
Contact page
🧩
Page builder widget
📦
Theme template file

Clean DB Tables

Entries live in lxf_forms, lxf_entries, and lxf_entry_meta — custom tables, not postmeta. Fast to query, clean to remove.

Translation Ready

Every user-facing string goes through __(). Full .pot file included, compatible with Loco Translate and Poedit out of the box.

Start free. Add what you need.

The free plugin is a fully working form builder. Pro add-ons are one-time purchases — no subscriptions, no annual lock-in.

Feature Free Pro Add-ons
Form builder with 15+ field types
AJAX submission + validation
Email notifications with merge tags
Entry manager + CSV export
Honeypot + rate-limit spam protection
Conditional logic (show/hide fields)
reCAPTCHA / Cloudflare Turnstile
Multi-step forms
Gutenberg block
Built for developers

Hook into every step of every submission

Luxa Forms exposes actions and filters at every meaningful point — before validation, after submission, when entries are created, when fields are registered. Build on top of it without touching core files.

  • PSR-4-style namespaces, repository pattern, no global state
  • Register custom field types in one filter
  • All queries use $wpdb->prepare() with %i identifiers
  • Every output is escaped at the point of output, not before
Developer hooks
// Validate before saving
add_filter('lxf_submission_errors',
  function($errors, $form_id, $data) {
    return $errors;
}, 10, 3);
// Run code after submission
add_action('lxf_form_submitted',
  function($entry_id, $form_id, $data) {
    // sync to CRM, send Slack…
}, 10, 3);
// Register a custom field type
add_action('lxf_register_fields',
  function($registry) {
    $registry->add_field('rating', new RatingField());
});
Built-in Entry Manager

Every submission, right where you need it

Submissions land in their own database tables — not wp_postmeta — so they're fast to list, easy to export, and trivial to clean up when you uninstall. Browse and read entries in wp-admin, or pull the data into your own views.

  • Click any row to open the full entry detail panel
  • One-click CSV export for any form
  • Data removed cleanly when you uninstall the plugin
Contact Us — Entries
Export CSV
#248
Alex Johnson
alex@startup.io
👁
🗑
#247
Maria Chen
maria@agency.co
👁
🗑
#246
Sam Rivera
sam@freelance.dev
👁
🗑
#245
Priya Nair
priya@studio.design
👁
🗑

Free forever. Pro add-ons, one-time price.

The core plugin is free on WordPress.org. Pro add-ons are sold separately as one-time purchases — buy only what you actually need.

Free
$0
Core form builder, forever
  • 15+ field types
  • AJAX submit + validation
  • Email notifications
  • Entry manager + CSV
  • Unlimited forms & entries
Install Free
reCAPTCHA / Turnstile
$9
Targeted spam protection
  • Google reCAPTCHA v3
  • Cloudflare Turnstile
  • Per-form settings
  • Lifetime updates
Buy Add-on
Gutenberg Block
$9
Embed forms in the block editor
  • Native block — no shortcode
  • Form picker in the editor
  • Preview in block editor
  • Lifetime updates
Buy Add-on

All add-ons are one-time purchases, valid for unlimited sites. No subscriptions. No renewals unless you want continued updates after year one.

Common questions

Is the free version genuinely usable?

Yes. You can build unlimited forms with 15+ field types, receive email notifications, and manage all entries including CSV export. The free plugin handles everything a typical contact or newsletter form needs.

Why custom database tables instead of post meta?

Post meta is convenient but inefficient for form data. Custom tables let you query entries by any field without joining wp_posts, keep your database tidy, and make uninstall truly clean — no orphaned rows left behind.

How do add-ons work?

Each add-on is a separate plugin you install alongside Luxa Forms. Once active, it extends the builder with new capabilities — conditional logic adds a "Logic" tab to every field, for example. No core files are modified.

Can I use this on client sites?

Yes. The free plugin is GPLv2 and may be used on unlimited sites. Add-ons are also sold for unlimited sites — you buy once and deploy everywhere.

Does it conflict with other form plugins?

No. Luxa Forms uses a strict LuxaForms PHP namespace and lxf_ prefix on all hooks, options, and table names — nothing bleeds into global scope.

What happens to my data if I uninstall?

The plugin ships with a proper uninstall.php that removes all four custom tables and every plugin option when you delete it from the Plugins screen. Deactivating alone leaves everything intact.

Stop paying $99/yr for a contact form.

Install the free plugin today, and add conditional logic, reCAPTCHA, or a Gutenberg block only if and when you actually need them.

WordPress 6.2+ PHP 7.4+ Free core plugin GPLv2 license