The de facto form builder for Drupal: everything from a contact form to a multi-step application with conditional logic and handlers. When you need it, and when core is enough.
Webform is the form builder most Drupal sites end up using, and for good reason: it does everything from a contact form to a multi-step application with conditional logic, file uploads, and dozens of handlers. It is free, GPL, and maintained by Jacob Rockowitz, who has kept it the de facto standard for years.
The honest question is whether you need it. For a single contact form, Drupal core’s own Contact module is often enough, and adding Webform is reaching for a Swiss Army knife to open one envelope. Webform earns its place the moment you need conditional fields, multiple submission handlers, saved drafts, or a form that feeds another system.
The element library is the strongest part. You build forms from a long list of field types with drag-and-drop, set conditional logic without code, and attach handlers that email submissions, post them to a remote API, or write them to other entities. For anything past a basic form, that flexibility is hard to match without custom development.
Two things catch teams out. First, a busy Webform with lots of submissions stored in the database needs a cleanup and archiving plan, or the submissions table grows without limit. Second, spam: an open Webform will get hit, so honeypot or CAPTCHA protection is not optional, it is setup. Neither is a flaw, but both are configuration you have to do on purpose.
We install and configure Webform on most Drupal sites we build, because the alternative is rebuilding half of it by hand. What we charge for is the setup that actually matters: spam protection, GDPR-compliant data handling, the right handlers, and a retention plan for submissions. The module is free; doing it properly is the part worth paying for.
Dozens of field types built with drag-and-drop, from simple text to file uploads, ratings, signatures, and address fields, with no code to add a new field.
Show, hide, or require fields based on earlier answers. Build multi-step wizards and branching forms from the admin UI instead of custom modules.
Email a submission, post it to a remote API, or write it to other Drupal entities. One form can trigger several actions when it is submitted.
Users save and resume long forms, and admins view, filter, and export every submission. Useful for applications and surveys, not just contact forms.
We use this in real client projects β here's what we've learned.
The right tool past a basic contact form. Webform is the form builder we install on most Drupal sites because rebuilding its capability by hand makes no sense. For a single contact form, core’s Contact module is lighter and we will recommend it. The moment you need conditional logic, multiple handlers, or saved drafts, Webform is the standard, and the work worth paying for is configuring spam protection, data handling, and a submission retention plan correctly.
Yes. It is open source under the GPL with no license fee. You pay only for hosting and for the work to configure it properly: spam protection, data handling, and the handlers your forms need.
For a single contact form, Drupal core’s Contact module is often enough. Webform is worth installing once you need conditional fields, multi-step forms, saved drafts, file uploads, or a form that feeds another system. We will tell you which side of that line you are on.
The current releases target Drupal 10 and 11 and need PHP 8.1 or newer. If you are still on Drupal 7, the path is a migration first, which is a separate piece of work we handle.
Yes. Its handler system can post submissions to a remote API or email them, and with a bit of configuration it integrates with most CRMs. We scope that integration as part of the setup rather than leaving you to wire it up.
With honeypot and CAPTCHA protection configured at setup, plus rate limiting where it makes sense. An open form will get spammed, so this is part of doing the job, not an optional extra.
Installation and basic configuration start around $40. A complex form with conditional logic, integrations, and a retention plan is scoped per project. The module is free; the configuration is where the value is.
We can install, configure, or customize it for you.
Don't want to install yourself? Our developer connects via FTP, installs, configures, tests with a real transaction. Usually takes one business day.