We're doing a rebrand and web overhaul for a Christian camp, retreat, and conference center. A big part of the site is a registration system where people can register for an event, fill out a detailed form with 30+ fields, then pay for registration. The forms will be pretty complex... people can do partial payments (via stripe), and each of the forms (10 or more) will be unique with conditional fields. We're also hoping to hand off the form creation process to the client afterwards.

The only plugin I know that can handle something like this easily is GravityForms for WordPress, but I don't want to go the WP route. Is there anything like it out there for Craft? Or is Craft still too much in its infancy? Maybe a 3rd party form builder that will integrate nicely w/Craft?

Any help or guidance is appreciated!

4 Answers 4


Commerce is definitely Craft's achilles' heel right now.

Like you, I'd love to switch over completely off WP but picking the best tool for the job means either rolling up your sleeves and writing your own or picking the best available solution and unfortunately that could be WP/Gravity... at least right now.

We're also hoping to hand off the form creation process to the client afterwards.

Not to go too far off the Craft path here, but from a client services perspective, this part scares the hell of me.

Forms tend to be tricky beasts to begin with—especially so when you add in the commerce part of it.
I don't know what your registration forms look like but I'm guessing a lot of them are going to be very similar. Do you actually need a form builder to put in name, address, etc. Or is the only thing that changes on the form the retreat date, lodging location, etc.

You can do a lot with Craft's custom fields and instead of building up a form like in Gravity or Ninja (like you might do in WP), bake in those fields that won't change in your template and just let the client change a few pieces from the back end—like the date, price, etc.—and compose the rest of the form with Twig and an action handler.

Regardless of whatever technology you pick, this kind of project tends to need ongoing support as well so if you can do it, get the client on some kind of monthly retainer; that'll remove a lot of the uncertainty as you move forward. Sometimes what clients say they need and what they actually end up needing is completely different. Craft is going to grow as a platform too, so basically you're buying some time as the client grows with it. It's a nice sentiment to think you just "hand it off" but in my experience, it rarely works like that.

  • Appreciate the insight, and I agree, it's not going to be simple to hand it off. With GF though, you can easily duplicate forms, change a few fields, and have a brand new registration form for new events. We'd essentially create templates and give them specific, step by step, foolproof instructions and training on how to do it, but you're right, I'm sure we'll encounter problems. Think I may have to go with WP for now, maybe switch over sometime down the road. How nice would it be if P&T recreated GravityForms for Craft :)
    – Philip L
    Jan 27, 2015 at 17:44
  • Maybe Craft 3?! I'd love conditional fields myself (a bit like how ACF does it). I'm sure this will all be moot in less than a year when Cellar, Dukt, and Sprout fill in the e-commerce/forms void! Jan 27, 2015 at 17:51

Until the plugin store becomes an official thing, Straight Up Craft has the most comprehensive list of plugins available for Craft.

Glancing through there, there are several form building possibilities that might do what you need.

  • Thanks Brad for the quick response. I checked Straightupcraft prior to posting and didn't see anything that compared to GravityForms in terms of ease of use and functionality. I did check out that plugin, and it seems like it could work if our team was doing everything internally, but not if we're trying to hand this off to the client.
    – Philip L
    Jan 27, 2015 at 16:58

Sprout Forms (currently 0.8.5) can build Forms with hundreds of fields, tabs, allows you to give your client control over the forms (using the same Field Layout editor as Craft), and can output forms dynamically on the front-end (so your client never needs to touch the templates).

We support several common fields right out of the box, and are working on a way to allow you to add support for additional fields for dynamic output on the front-end based on your project needs. Sprout Forms integrates with Sprout Email if you have needs for lots of control over notifications and Sprout Reports if you need to get your data out of Craft.

We don't support conditional fields yet (hoping to piggy back on Craft on that one!), but you could create a custom field and add support to have it output dynamically on the front-end with whatever behavior you want.

We don't support payments yet!, but do have an expertise around e-commerce and interest in adding an e-commerce integration to Sprout Forms at some point.

I'd agree with most other posts here at this time. You're use case is definitely pushing the boundaries of available features right now and need to consider all your options. Conditional fields, more advanced fields, and commerce functionality all may require some degree of custom development to meet your needs.


For the couple projects where I absolutely needed the client to be able to create complex forms like you describe, I ended up just using Wufoo. There's just nothing else available for Craft (that I know of) that is anywhere close to its feature-set. I ended up writing a very simple fieldtype that authenticates with the Wufoo API and allows you to select one of the forms from a drop-down, and then output the embed code into your template with a single tag. You can get it here: https://github.com/elivz/VzWoofer-Craft

There are a couple big downsides, though:

  1. Wufoo gives you very limited control over the form styling, so it will probably not look entirely "in place" in your design.

  2. The client still needs to go log into Wufoo to create or edit the forms. I should probably add a shortcut link to the field to make that a little easier....

  3. My plugin is definitely beta, but if you decide to use it and run into any problems I will do my best to help, or pull-requests are always welcome!

  • Cool, this is very helpful. Thought about using a 3rd party system like this (also checked out Google Forms), but 100% control over styling is a must. Also hate for them to have to log in to 2 different systems, would much prefer to have a single CP for everything.
    – Philip L
    Jan 27, 2015 at 18:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.