Forms module

Forms your clients can actually fill in.

A drag-and-drop builder for simple forms and branching multi-step flows — with conditional logic, file uploads, a searchable entries inbox and spam protection built in. No add-ons, no per-form fees.

Included in every plan Simple forms or flows
Website intake
Full name
Which services do you need?
Send message
Entry saved
Spam blocked
Included in every planNo add-on or per-form fee
Simple forms or flowsOne builder, two modes
Spam protection built inHoneypot, rate-limit & IP blocking
Everything a form needs

From a contact box to a branching intake

One builder handles the quick contact form and the multi-step quote flow — with the logic, entries and spam protection that usually take three plugins.

Drag-and-drop builder

Add text, email, phone, dropdowns, radios, checkboxes, dates, file uploads and more. Set labels, an optional placeholder, width and required — no code, live preview.

Flexible column layouts

Give any field a width from 10% to 100% and drag its edge to resize — the builder tiles fields live, so you can lay out tidy multi-column forms without a line of CSS.

Branching flows

Flip to Flow mode for multi-step forms that branch on the visitor’s answers — a visual node canvas of choices and groups that only asks what’s relevant.

Conditional logic

Show or hide any field based on another answer. Build “if they pick X, ask Y” forms with simple, per-field rules — no plugins, no snippets.

Entries inbox

Every submission is stored, searchable and filterable by form, with read/unread state, source intelligence (UTM, referrer, device) and CSV export.

Emails that arrive

A branded notification to your team and an optional confirmation to the submitter — with a success message or redirect after submit.

Spam protection

A silent honeypot plus per-IP rate limiting auto-block visitors who flood the form — with a Blocked IPs panel to review and release.

Shortcode & Elementor

Drop a form anywhere with [stack_form id="…"] or the native Elementor widget. It inherits your theme’s styling.

How it works

Live in minutes

Build the form, drop it on a page, and watch the entries roll in — no external service and no per-submission cost.

01

Build it

Drag in fields, or switch to Flow mode for a branching multi-step form. Set conditional logic, notifications and a success message.

02

Place it

Paste the shortcode on any page or drop the Elementor widget. The form matches your theme out of the box.

03

Collect

Submissions land in the Entries inbox and your email. Export to CSV, and let spam protection keep the junk out.

The builder

Drag, drop, done

Add a field, set its type, width and label, and reorder by dragging. Click a field to edit it in a floating popover that never disturbs the layout — and drag a field’s edge to resize it while the others reflow live. Every field can carry conditional-logic rules.

  • Text, email, phone, dropdown, file upload & more
  • Any width from 10% to 100% — drag to resize
  • Edit in a popover; duplicate or delete in a click
  • Per-field show / hide conditional logic
WPStackFields2
NameText50%
EmailEmail50%
ServiceDropdown100%
Do you need hosting?Checkboxes100%Conditional
Flow mode

Multi-step forms that branch

Switch to Flow mode and build on a visual canvas: choice nodes branch the path, group nodes hold the questions. The visitor answers a step, and the form follows the branch — asking only what matters.

  • Visual choice / group node canvas
  • Each answer follows its own branch
  • Only the visited path is submitted
  • Progress bar and back / next built in
WPStackFlow3
Type — branchIndividual · Business
2
Business details — groupCompany · Team size · VAT
3
Personal details — groupName · Email · Budget
3
Entries & spam

Every lead captured, the junk kept out

Submissions land in a searchable inbox with read/unread state, source details and CSV export. A silent honeypot and per-IP rate limiting block spammers automatically — and list them so you stay in control.

  • Filter by form; read / unread state
  • Source intelligence — UTM, referrer, device
  • One-click CSV export
  • Auto-block flooders; review under Blocked IPs

Or skip the inbox entirely — with the Connect module every submission can be posted straight to Make, Zapier or your own CRM by webhook, UTM and referrer included, so a lead is attributed the moment it arrives.

WPStackEntriesIN
Priya N. · Get a quote14:16
Jordan L. · Website intake14:05
Sam C. · Website intake13:58

198.51.100.66 blocked — 15+ submissions/min.

Place it anywhere

One shortcode, or the Elementor widget

Every form gets an id you can drop on any page or post — or add the native Elementor widget. Forms inherit your theme’s styling.

Embed a form

Render any form — simple or flow — on a page, post or widget. Each form has its own id, shown in the builder.

[stack_form id="2"]

Embed a flow

The same shortcode renders a branching multi-step flow; the visitor only sees the path their answers lead to.

[stack_form id="3"]
Simple or FlowToggle between a flat form and a branching multi-step flow.
Elementor widgetDrop the WPStack form widget straight into your layout.
Entries inboxForms, Entries and Blocked IPs — all under WPStack → Forms.
Works with the stack

Better with the rest of WPStack

Forms plugs into the modules you already run, so every lead is captured, delivered and compliant.

GDPRThird-party form scripts wait for consent; the banner respects your visitors.
SMTPRoute form notifications through your SMTP server for reliable delivery.
ConnectEvery entry lands in the mobile app with a push notification, and can be posted straight to Make, Zapier or your CRM — UTM data included.
ChatTurn a conversation into a captured lead with a form in the same stack.
WordPress6.0+ (6.5+ recommended)
PHP7.4+ (8.1+ recommended)
BuilderShortcode + Elementor widget
EntriesStored, filterable, CSV export

Optional: Elementor for the drag-in widget · SMTP for reliable notification delivery. No external form service required.

FAQ

Forms, answered

Text, email, phone, textarea, number, dropdown, radio, checkboxes, single checkbox, date, file upload, hidden and section breaks — each with a label, an optional placeholder, a width from 10% to 100%, a required flag and conditional-logic rules.

Yes — every field has a width from 10% to 100%. In the builder you drag the edge of a field to resize it and the others reflow live, so two 50% fields sit side by side, three 33% fields share a row, and a full-width field takes its own line. No CSS, and it stacks to full width on mobile.

Flow turns a form into a branching, multi-step experience. On a visual canvas you connect choice nodes (branches) and group nodes (steps), so the visitor only ever sees the questions their answers lead to — ideal for quote requests and intake forms. It’s the same [stack_form] shortcode.

Every submission is saved to the Entries inbox — searchable, filterable by form, with read/unread state and one-click CSV export — and emailed to the address you set. You can also send a confirmation to the person who submitted.

Each form includes a silent honeypot field and per-IP rate limiting. A visitor who exceeds 15 submissions a minute is blocked automatically and listed under Blocked IPs, where you can review or release them. No CAPTCHA required.

Yes. Every field has conditional-logic rules — show or hide it when another field equals, contains or is empty, matching all or any of your conditions. Rules are enforced on the front end and validated again on submit.

Yes. Place a form with the [stack_form id="…"] shortcode anywhere, or use the native WPStack Booking-style Elementor widget. Forms inherit your theme’s styling and work with page caching.

Yes — like every WPStack module, Forms is included in every plan. Switch it on per project from the modules panel whenever you need it.

Stop juggling plugins. Start with WPStack.

One system for forms, bookings, consent, logins and everything in between. Activate what you need today.

No credit card to explore the demo · Cancel anytime