Signs You May Have Outgrown Your Forms Plugin

Filed Under:

WordPress Management

Plugins like Ninja Forms and Gravity Forms are among the most versatile tools in the WordPress ecosystem. They can provide everything from a basic contact form, to a full-blown miniature e-commerce solution that is just the right size for your website.

However, I have also seen websites that seriously overextend the functionality of their forms plugin. These forms reach a critical mass, where they becomes unstable, unreliable, and a real time-suck. This happens when a form has become too large, and the problem the form intends to solve is too complex.

Editing Your Form is Painful

I’ve seen clients who have a form with literally hundreds of conditional logic sets baked into their form. Forms plugins don’t do a very good job of setting limits on how much conditional logic you can put on a form. Many of them allow you to add so much logic that it crashes the form when you try to load it. The worst part? This usually slows down the form editor as well, so when you need to make a change, you get to play the “click and pray” game:

  1. Click the edit button, wait 10 seconds
  2. Click the field you want to edit, wait 10 seconds
  3. Click the conditional logic tab, wait 10 seconds
  4. Click on the logic you want to change, wait 10 seconds
  5. (Form crashes, and you start over)

This game sucks, and if you have a form that is doing it, that form is probably a good use-case for a more robust solution. This is usually a custom plugin that can take the bulk of the logic in the form, re-imagine it in a way that will run much, much faster.

Your Form Breaks, Frequently

This is especially noticeable when using multipart forms. We once worked with a customer who sold cars, and they used a forms plugin to create a “build your own car” tool on their website. This worked for a while, but since it was a large, complex form, it was unstable, and would frequently behave in unexpected ways. It seemed like the customer was constantly going in and re-fixing things that would arbitrarily break.

You can go for a long time without noticing it’s not working as-expected, too. It’s often very hard to do the exact set of steps that will cause the form to work improperly. This can result in lost sales simply because the site visitor couldn’t finish filling out the form. The worst part, however, is that this creates a bad experience for your customers.

Your Form’s Zapier Zap Breaks Constantly

Zapier is an amazing tool that allows you to connect your forms plugin to an external system without writing any code. This tool allows you to do just about anything you can imagine – from silly things like turning on a light when your football team scores a touchdown, to more practical things like adding a customer’s contact info to a Google Sheet when they submit a contact form.

Zapier has a ton of power baked-in. You can add all kinds of conditional logic, and a complete workflow to turn your form into an entry point to a complete business automation system, customized to your needs, without writing a single line of code.

The problem is, these Zapier zaps have rely on a lot of external apis, each with their own set of problems. Each time you integrate another system into Zapier, you introduce a new layer of complexity, and a new place for your Zap to fail. This makes your Zapier zap unstable.

This isn’t always the case – I’ve had many zaps work without a hitch for years, but I’ve also worked with Zapier zaps that would stop working for no apparent reason whatsoever.

What To Do

When you start to notice these symptoms with your form, it’s time to take a step back and think about what you’re trying to get your form to-do. Odds are that your “problem form” needs a more robust solution. Some questions that I like to ask are:

  • Is it possible that a completely different solution would work better?
  • What exactly are you trying to-do with your form?
  • Which forms are causing the most problems? What’s different about them?
  • If you’re using Zapier, is it causing the problem?

This reflection will allow you to make sense of what kind of solution you may need. For example, if you have a form that has too much conditional logic, and that conditional logic is because you have 20 different products you’re trying to sell with your form, maybe it’s time to upgrade to a true e-commerce solution like WooCommerce or Easy Digital Downloads.

When you come into E-Commerce from this angle, it is rare that you only need what the core E-Commerce functionality offers. Heck, that may be why you went with a form in the first place. Make sure you take a look at the official extensions for the plugins you’re researching – that’s usually where you will find the functionality to-do exactly what you want. If you struggle with finding an adequate solution using their tool, you can always send a pre-sales question directly to the company that makes the plugin. They’ll point you in the right direction.

If you still aren’t sure where to go, you can always join our free mastermind group. It’s likely someone in there will be able to point you in the right direction. Our maintenance plans help with these types of problems, as well. When someone signs up for a maintenance plan with us, we promptly do a site audit. This audit, combined with conversations with you, usually help us uncover how we can resolve your form plugin woes.

A portrait of this article's author.

About Alex Standiford

Alex Standiford is the founder of DesignFrame Solutions. Alex has been tinkering with computers and technology his entire life, and started his career as a freelance WordPress developer in 2015. When Alex is not writing code, he can usually be found outdoors, playing disc golf, hiking, or tinkering with a campfire. He's a bit of a foodie, and is often found cooking over the fire with one of his many cast iron skillets.

Join others growing their business with WordPress

Get a steady stream of tips, how-tos, and advice from leading WordPress professionals.
  • This field is for validation purposes and should be left unchanged.