Last updated on August 12, 2026 by Ryan Cordoni

How to Create a Dynamic Form in WordPress [Step-by-Step!]

Tired of long, static forms that ask every visitor the same questions whether they apply or not? A dynamic form reacts, populates, and calculates live based on what the user does, which means shorter forms and cleaner data. In this guide, you'll learn how to build dynamic forms in WordPress step by step with Formidable Forms.

How to create a dynamic form in WordPress

Approximate read time: 8 minutes

What is a dynamic form?

A dynamic form changes while the user fills it out. The change can happen in three ways:

  • Fields react. Conditional logic shows, hides, or requires fields based on earlier answers. Someone who picks "Business" sees a company name field; someone who picks "Personal" never does.
  • Fields populate. Options and values load from somewhere else: a previous submission, a saved pricing table, a user profile, or another form entirely.
  • Fields calculate. Totals, scores, and estimates update instantly as the user types or selects options.
Form showing dynamic Client dropdown populated from another form's entries.

Most real-world dynamic forms in WordPress combine all three. Take a booking form, for example: it reacts by showing extra fields for group bookings, populates the location dropdown based on the city someone picks, and calculates a running price as they choose options.

Any site can benefit, but dynamic forms do the heaviest lifting for service businesses quoting variable work, eCommerce sites with configurable products, directories and community sites built on user submissions, and membership sites reusing profile data instead of asking for it twice.

Formidable Forms makes advanced site building simple. Launch forms, directories, dashboards, and custom WordPress apps faster than ever before.

What to look for in a dynamic form builder for WordPress

Plenty of plugins call themselves a dynamic form builder, but basic conditional logic is only one piece of it. Make sure yours handles all four features below; most dynamic forms eventually need every one.

1. Conditional fields

This is the baseline. A real dynamic form builder shows, hides, and requires fields based on any earlier answer, and lets you stack conditions, like showing a field only when A is "Yes" and B is over 100. In Formidable Forms, you set this per field under Field Options with no code, and conditional logic is included on every paid plan.

2. Dynamic field population

Look for a builder that fills fields automatically from existing data: entries from another form, WordPress user profile data, taxonomies and categories, or values passed in the URL. This is what saves your users from typing the same information twice.

Dependent dropdowns are the classic dynamic form pattern: pick a country, and the state list updates; pick a state, and the city list updates. Formidable Forms handles this with Lookup fields, which chain together as many levels deep as you need and pull their options from data you've already saved.

Form demonstrating cascading dropdown menus where city options update based on selected state.

4. Live calculations

A dynamic form that quotes a price or scores a result needs math that runs as the user works, not after submission. Look for field-to-field calculations, conditional pricing (a value that changes based on selections), and the ability to display the result inside the form.

Formidable Forms covers all four in one plugin, which is why it's our pick for the best dynamic form builder for WordPress. The free version gives you the drag and drop builder and responsive, mobile-ready forms; the dynamic field types come with the paid plans.

Formidable Forms pro plans

How to create a dynamic form in WordPress (step by step)

Here's the full build, from install to a working dynamic form on a published page. The example below is an "Instant Project Quote" form for a service business, but the same steps apply to registrations, bookings, surveys, and applications.

Step 1: Install Formidable Forms

Install the free Formidable Forms plugin from your WordPress dashboard under PluginsAdd New, then activate your paid license to unlock the dynamic field types. Any paid plan includes conditional logic, calculations, Dynamic fields, and Lookup fields.

Formidable Forms WordPress plugin search result with Install Now button and 5-star rating.

Step 2: Create your base form

Go to FormidableFormsAdd New. Start from a blank form and drag in your standard fields first: a Name field (First and Last), an Email field, and any other fields your form needs.

Instant Project Quote form with fields for name, email, account type, and company name.

Step 3: Add conditional logic

Add an Account Type radio field with two options, Business and Personal, then drag in a Company Name text field below it.

Click the Company Name field, open Conditional Logic in its Field Options, and click Enable Conditional Logic. Set the rule to Hide this field if Account Type equals Personal.

Business accounts still see it; Personal accounts skip straight past it.

Formidable Forms form builder showing conditional logic setup to hide Company Name field when Account Type equals Personal.

Repeat the pattern for any other field that only applies to some visitors. Your form instantly gets shorter for most people, without needing to maintain a second version.

Two "Instant Project Quote" forms side-by-side demonstrating conditional logic: Business account type hides Company Name; Personal account type shows State and Service Package fields.

Step 4: Add cascading Lookup fields

Drag in a State dropdown, then a City Lookup field right below it.

Open the City field's settings, set Get Options From to your city data source, and set Filter by Lookup Fields to the State field above it.

City lookup field configuration showing dropdown display type filtered by state in form builder interface.

Now the City dropdown only shows cities in whichever state the visitor just picked. Choose Texas, for example, and City narrows to Austin, Dallas, and Houston instead of every city in your list.

The same Lookup pattern works for any parent-child data: category then subcategory, country then region, or a product line then its specific models.

Step 5: Add live calculations

Add a Product field for Service Package, set to radio buttons, with a price on each option. Add a second Product field for Add Rush Delivery, set to checkbox, with its own price. Then add a Quantity field so visitors can adjust how many they need.

Last, add a Total field. It automatically calculates based on the Product and Quantity fields already in the form, no formula required. The total updates the moment the visitor changes any input, no page reload required.

Live updating total estimate calculator showing service packages, rush delivery option, quantity selector, and real-time price calculation.

For deeper math, including conditional pricing and rounding, see our guide to building a WordPress calculator.

Step 6: Publish and test

Add the form to any page with the Formidable Forms block or shortcode, then run through it as a visitor. Leave a required field blank to confirm validation, switch Account Type and State a few times to make sure the conditional and cascading fields reset cleanly, and adjust Service Package and Quantity to check the total.

Formidable Forms block

Every Formidable form is responsive out of the box, so test on a phone too; the dynamic behavior works the same on every screen size.

Formidable Forms Dynamic field: how it works

Alongside Lookup fields, Formidable Forms has a field type called the Dynamic field, and it's worth understanding on its own because it does something most form plugins can't.

A Dynamic field creates dropdowns, checkboxes, or radio buttons whose options are populated from submitted entries in another form, or from your site's categories and taxonomies. The key difference from a Lookup field is the live link: the value a user selects stays connected to the original entry. Update the source entry, and every form that references it updates too.

That link is what makes Dynamic fields the backbone of real applications built on forms:

  • Client and project trackers. A "Client" form feeds a Dynamic dropdown in the "Project" form. Rename the client once, and every project reflects it.
  • User-generated directories. Submissions populate categories and listings automatically, no admin re-entry.
  • Front-end data displays. Combine Dynamic fields with Formidable Views to show data from a selected entry anywhere on your site.

Dynamic fields and Lookup fields are premium field types included with every paid Formidable Forms plan. If you want to display the connected data in front-end tables, directories, or dashboards, Formidable Views is included on the Plus plan and above.

If you're deciding between the two: use a Lookup field when you need cascading options or to copy a value from saved data, and use a Dynamic field when the relationship between entries needs to stay live after submission.

For a closer look at when to use each, see our Dynamic vs. Lookup fields comparison.

More ways to make WordPress forms dynamic

The four core features above cover most builds, but Formidable Forms includes a few more dynamic behaviors worth knowing:

  • Automatically populated fields. Autofill fields with logged-in user data such as name and email, capture data like the user's IP behind the scenes, or pass values between forms through the URL and entry key.
  • Repeater fields. Let users add rows on demand: travelers in a group, line items in an order, employees in an application. The form grows exactly as much as each user needs.
  • Multi-page forms with conditional pages. Break long forms into steps and skip entire pages that don't apply, so a 40-field form feels like 12.

Each one follows the same principle: collect exactly what you need from each user, and never make anyone type what your site already knows.

Build your first dynamic form today

Dynamic forms come down to three behaviors: fields that react with conditional logic, fields that populate from data you already have, and fields that calculate as the user works. Formidable Forms gives you all three in one plugin, so your forms get shorter, your data gets cleaner, and your visitors never type something you already know.

Stop asking visitors to fill out forms that don't know who they are. Get Formidable Forms and build a form that reacts, populates, and calculates on its own.

What is a dynamic form in WordPress?

A dynamic form changes while the user fills it out. Fields appear or hide based on earlier answers, dropdowns populate from saved data or other submissions, and totals recalculate live. Static forms show every user the same fields; dynamic forms adapt to each person.

Can I create dynamic forms in WordPress without coding?

Yes. Formidable Forms handles conditional logic, cascading Lookup fields, Dynamic fields, and live calculations from the visual builder, with no PHP or JavaScript. You configure rules in each field's settings and the plugin generates the behavior on the front end.

What is the difference between a Dynamic field and a Lookup field?

A Lookup field populates options from saved data and is best for cascading dropdowns and auto-filling values, like pulling a price from a pricing table. A Dynamic field also populates from other entries, but it keeps a live link to the source entry, so if the original data changes, the connected value updates everywhere it's used.

Does the free version of Formidable Forms include dynamic fields?

The free version includes the drag and drop builder and responsive forms, which adapt to any screen size. Conditional logic, calculations, Dynamic fields, and Lookup fields are premium features included with the paid plans, and Formidable Views for displaying the connected data starts on the Plus plan.



This article may contain affiliate links. Once in a while, we earn commissions from those links. But we only recommend products we like, with or without commissions.

Complete your purchase
Don't forget your purchase!
Complete Purchase
Join 400,000+ using Formidable Forms to create form-focused solutions fast. Get Formidable Forms