Skip to main content

Migration from Express Forms

If you wish to migrate from Express Forms to Freeform 5, please follow the special instructions below.

Important Notice - May 16, 2024


The Express Forms plugin has been discontinued.

It was originally created as a free and reliable form-building plugin for Craft CMS when other options were limited. It allowed for experimentation and trying different approaches, which was challenging to do with Freeform due to legacy constraints.

Over time, we incorporated new features and improved approaches from Express Forms into Freeform. With the significant rewrite of Freeform 5, we addressed many limitations related to extending and custom module development.

Now, Freeform 5 includes three editions: Express, Lite, and Pro. The Express edition of Freeform is free and suitable for most small sites that only require a simple contact form while offering many additional features and benefits.


What does this mean?

  • Express Forms will not have a Craft 5-compatible version.
  • Freeform 5 works on both Craft 4 and 5 and includes a migration utility from Express Forms.
  • There will be no further updates for Express Forms 2.x, but support and critical bug fixes will continue.
  • Customers with a Pro license of Express Forms will receive a free license to Freeform Pro for the transition. If we were unable to reach you, please get in touch with us.

Due to the nature of this update we recommend anyone migrating from Express Forms 2.x to do so carefully in a development environment and follow the special instructions below.

Key Differences

Compared to Express Forms, Freeform 5 offers significantly more features and options. Here are the key differences between the two:

Topic

Express Forms

Freeform 5.x

Required Action

Plugin EditionsAffects: All
Express Forms offered the following editions:
  • Lite: offers all features except integrations.
  • Pro: offers all features including integrations.
Freeform offers the following editions:
  • Express (Free): very similar offerings as Lite, but has a limit of 1 form and up to 20 fields.
  • Lite ($99): offers the features that are necessary for most sites.
  • Pro ($149): enables integrations, Stripe payments, additional advanced field types, conditional rules logic, additional export options, mapping submission data to Craft elements and more.
To choose the edition that is right for you, check out the Compare table for a complete breakdown of features for each edition. Please note that a fresh install of Freeform will likely automatically install the free Express edition. You will need to switch editions to enable Lite or Pro.
Form BuilderAffects: All
The Express Forms form builder was intentionally simple. It offered just enough controls to build and configure your forms.Everything is at your fingertips in our elegant and intuitive form builder. The Freeform form builder is an all-in-one interface that lets you take control of almost every aspect of your forms.Be sure to explore and take advantage of all the new options available in Freeform. Check out the Form Builder documentation for a tour of the form builder.
Field TypesAffects: All
Express Forms offers a very basic set of field types. It's up to you if you want to expand on how those fields look and behave in your template.Freeform offers an extensive set of field types and the ability to configure them more in-depth directly inside the form builder.Your fields will be migrated to the same or similar field type in Freeform. If you wish to change any of those fields, you can simply change the field type of these directly inside the form builder. Specifically, the Options field type will be converted to Freeform's Checkboxes field type. If it should be a Dropdown or Radios, you can change it after the migration. Check out the Fields documentation for a complete list of all field types.
Formatting TemplatesAffects: All
In Express Forms, each form needs to be coded directly into the template page it is being displayed on.In Freeform you can use sample formatting templates or create your own. The advantage of these are that they can automatically render forms based on how you have layed out the fields and configured them inside the form builder. This also keeps your template code clean since it allows you to create a template once and reuse it for as many forms as you like.It's possible to manually hard code your forms the way you have been in Express Forms, but we highly encourage you to check out the formatting template feature. Check out the Formatting Templates documentation for more information.
Spam ProtectionAffects: All
Express Forms only offers a honeypot and reCAPTCHA v2 Checkbox for spam protection.Freeform offers a wide variety of spam protection features including reCAPTCHA, hCaptcha, Honeypot, Javascript Test and Blocked Keywords, most of which can be configured per form as well. There is also a built-in Spam Folder that allows you to review and retrieve any submissions that were flagged as spam by Freeform.All spam protection controls and captchas need to be set up again in Freeform. We encourage you to consider upgrading any spam protection as well, e.g. use reCAPTCHA v3 instead of reCAPTCHA v2 Checkbox, add blocked keywords, etc. Check out the Spam Protection documentation for more information.
IntegrationsAffects: Most
Express Forms offered a small set of common integrations.Freeform offers a wide variety of integrations, and these are handled a bit differently than Express Forms. Because of this, no integrations are migrated, and will need to be recreated.The migration from Express Forms will NOT import any integrations. They will need to be set up again in Freeform. This includes CRM, Email Marketing, Captchas, etc. Check out the Integrations documentation for a complete list of all integrations.
Dynamic RecipientsAffects: Some
To allow users to dynamically choose which admin should receive the email notification, a Dynamic Recipients feature was offered at the template level.Freeform allows users to select which recipient(s) the form submission should be emailed to using any regular option-based field type that is configured as a User Select field inside the form builder. This allows for much greater power and flexibility, and allows values to be stored correctly in the database. There is also the ability to create Conditional Notifications inside the form builder as well.The migration from Express Forms will be unable to detect any Dynamic Recipient setups due to them being based directly inside the template, so this will NOT be migrated. Please take advantage of reconfiguring these in Freeform's User Select or Conditional notification options in the form builder. Check out the Email Notifications documentation for more information.
GraphQLAffects: Few
No support for GraphQL.Freeform supports querying form layouts and using mutations to create submissions via GraphQL.Check out the Headless documentation for more information.

Feature Comparison

Check out the feature comparison table below to help you determine which edition of Freeform is best for your needs.

Express Forms

FF Express

FF Lite

FF Pro

PriceFree / $49 (Pro)Free$99$149
Compatibility
The same 5.x version works on both Craft 5.x and 4.x.
Craft 4.xCraft 5+, Craft 4+Craft 5+, Craft 4+Craft 5+, Craft 4+
Works on Craft Cloud
Popular Framework Examples
Automated Templating
Intuitive Drag & Drop Form Builder(Simplified)
Customize the display of Field types
Multi-page Forms
Save & Continue Form Later
Conditional Rules Logic
Built-in AJAX
Store, View and Edit Submissions
Field Encryption
Edit Submissions on Front End
GDPR Compliant
Site Filtering for Forms and Submissions
Automatically Purge Submission Data
Automatically Purge Spam Submission Data
Email NotificationsAdmin, Email Field, User Select, Template-basedAdmin, Email Field, User-Defined, Template-basedAdmin, User Select, Email Field, User-Defined, Template-basedAdmin, Conditional, User Select, Email Field, User-Defined, Template-based
Email Alert of Failed Email Notifications
Weekly/Daily Digest Emails
Exporting of DataBasic CSVBasic CSVBasic CSVExcel, CSV, XML, JSON, Text
Export Profiles (pre-configured)
Export Email Notifications
Attach Forms to Entries
Attach Submissions to Entries
Number of FormsUnlimited1UnlimitedUnlimited
Number of FieldsUnlimitedUp to 20UnlimitedUnlimited
Custom Statuses
Basic Field Types
Includes an Options field instead of Dropdown, Checkboxes, Radios
Premium Field Types
Build Custom Field Types
Populate Fields with Element Data or Predefined Options
Surveys & Polls Reporting
Limited Users (form builder permissions.mdx)
Set Defaults and/or Lock Form Builder Settings
Limit Form to 1 Submission per User
Limit Number of Submissions per Form
Set a Close Date per Form
Automatically Store Logged In User ID on Submissions
Map Submission Data to Craft Elements
Edit Other Craft Elements
Relate Submissions to Craft Elements
Honeypot Test (Spam)
Javascript Test (Spam)
Spam Folder
Spam Blocking
CaptchasreCAPTCHA v2 CheckboxreCAPTCHA v2 CheckboxreCAPTCHA v2 Checkbox or Invisible, reCAPTCHA v3, hCaptcha Checkbox or InvisiblereCAPTCHA v2 Checkbox or Invisible, reCAPTCHA v3, hCaptcha Checkbox or Invisible
Email Marketing IntegrationsMailchimp, Campaign Monitor, Constant Contact (Pro)Mailchimp, Campaign Monitor, Constant Contact, ActiveCampaign, Dotdigital, Campaign plugin
CRM IntegrationsSalesforce, HubSpot (Pro)Salesforce, Pardot, HubSpot, ActiveCampaign, Pipedrive, Zoho CRM, Keap, Insightly, SharpSpring, Freshdesk
Webhooks IntegrationsSlack, Zapier, generic
Other IntegrationsGoogle Sheets
POST Forwarding
GraphQL Support
Stripe Payments
Dashboard Widgets
Important Update Warnings & Notices
Translatable
Rename Plugin✓ (Pro)

Running the Migration

Be sure to back up your site files and database before proceeding.

1

Install Freeform 5

Install Freeform 5 while on Craft 4 if you haven't already done so.

If you plan to upgrade from Craft 4 to Craft 5, we strongly recommend running this migration while still on Craft 4, as there is no Craft 5-compatible version of Express Forms. Freeform 5 is compatible with both Craft 4 and Craft 5.

2

Go to the Migration utility

  1. Go to the Import / Export section in the Freeform control panel.
  2. In the left column, click on Migrate from Express Forms. It will appear as long as Express Forms is currently installed.
3

Run the Migration utility

  1. Go to the Import / Export section in the Freeform control panel.
  2. In the left column, click on Migrate from Express Forms. It will appear as long as Express Forms is currently installed.
  3. Select which forms, notification templates and submission sets you'd like to import.
  4. Choose the behavior the import should observe if it runs into forms and notification templates with the same name in Freeform.
    • There currently is no duplicate submission detection options at this point.
4

Cleanup

There will almost certainly be some amount of cleanup required for every site.

  • Review the key differences table above and make any necessary or recommended changes.
  • Review and update all Freeform settings, submission data and forms in the form builder.
  • Review and update your templates and formatting templates (if you have any custom ones) and ensure that everything works correctly and any necessary updates are made.
Finished!