I am building a form with Freeform Pro that has 80 fields and am wondering the best way to go. The form is contains 4 parts, so my question is:

Should I create 1 form with 80 fields or 4 forms with 20 fields each?

I have been looking into database normalization and am wondering if this concept mostly pertains mainly to really, really large databases with way more than 100 columns. Also, this form probably won't get more than 20100 submissions per year.



With as few as 80 columns I wouldn't split things into 4 forms. Freeform sets everything as a TEXT type field when it builds a form table because then the content is stored separately from the row itself and it allows for more columns.


Field counts on forms have been a historically higher complaint to us than performance of TEXT type DB columns, so we made our decision for that reason.

20100 Form submissions isn't a lot in the scheme of things. You will have some performance issues if you are going to be filtering a lot with Freeform:Entries on the front end. It wont be a big hit, but to get the absolute best performance in that situation, pick the fields that will be filtered on the most and if they are small (like an email address or a selection field choice, not a textarea style input) then convert those to varchar fields and put table indexes on them.

  • You are welcome. Remember that if you feel this correctly answers your question to mark it as the answer so it will be marked as resolved.
    – Solspace
    Mar 2 '15 at 18:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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