Every field in your form has settings that control how it looks, what data it collects, and how it validates user input. Getting these settings right is the difference between a form that frustrates visitors and one that converts well. This section walks you through every setting, explains what it does, and shows you how to configure a real contact form field by field.
When you click any field in the builder, the right panel opens with all available settings for that field type. Some settings are universal (like Label and Required), while others are specific to certain field types (like Min Value for Number fields or File Types for File Upload fields).
General Settings
These settings are exposed in the right-side panel when you click a field in the builder. The current shipping panel exposes the following general settings on every field type, plus type-specific sections such as Options for select/radio/checkbox, Validation for fields that support min/max/pattern/file rules, Availability for calendar_picker, and Calculation for calculated totals:
| Setting | What it does | Example | When to use it |
|---|---|---|---|
| Label | The text shown above the field | “Your Email Address” | Always — every field needs a clear label |
| Placeholder | Gray hint text inside the field that disappears when the user types | “[email protected]” | When the expected format is not obvious |
| Required | Whether the user must fill in this field to submit | Toggle on for Email | For essential fields only |
| Description | Extra helper text shown below the field | “We will never share your email with third parties” | When the field needs extra explanation |
Calculation fields have their own settings block in the same panel: Formula, Prefix, Suffix, and Decimal places. Add your input fields first, then click the Calculation field and use the available token chips such as {price} or {quantity} to avoid typos. The Live preview runs the same calculation logic as the published form, so you can test the formula before saving.
Walk-Through: Configuring a Contact Form Field by Field
You are building a contact form for your law firm. Here is how to configure each field with the right settings.
Step 1 — Name Field- Drag a Name field into the center area.
- Click it to open settings. The label defaults to “Name” — change it to “Full Name” for clarity.
- Toggle Required on. You need to know who is contacting you.
- Leave Placeholder empty — “Full Name” is self-explanatory.
- Drag an Email field below the Name field.
- Set the label to “Email Address.”
- Set the placeholder to “[email protected]” so visitors see the expected format.
- Toggle Required on. Without email, you cannot reply.
- Add help text: “We will respond to this address within one business day.”
- Drag a Phone field below Email.
- Set the label to “Phone Number (Optional).”
- Leave Required off. Not everyone wants a phone call. Including “Optional” in the label signals this clearly.
- Set the placeholder to “(555) 123-4567.”
- Drag a Select field and set the label to “How Can We Help?”
- Add options: “General Inquiry,” “Schedule a Consultation,” “Existing Case Question,” “Billing Question.”
- Toggle Required on.
- Drag a Textarea field and set the label to “Your Message.”
- Set the placeholder to “Please describe your situation briefly…”
- Toggle Required on.
- In the Validation tab, set Min Length to 10 characters. This prevents one-word submissions like “hi.”
Validation Rules
Validation ensures the data users enter meets your requirements. The shipping rule set today is:
| Rule | Works with | What it does | Where it’s configured |
|---|---|---|---|
| Required | All fields | Field cannot be left empty | Builder per-field panel (Required toggle) |
| HTML5 input type | Email, URL, Number, Phone, Date, Time, etc. | Browser-native format validation (e.g. invalid email shows browser tooltip) | Automatic — driven by the field type you pick |
| File size cap | File Upload | 10 MB hard limit per file (override per field with max_size_mb, capped at 100 MB) | Builder per-field panel (Validation tab) |
| File MIME allowlist | File Upload | Only image/jpeg, image/png, image/gif, image/webp, application/pdf, application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document, text/plain, text/csv are accepted (or the accept allowlist you configure) | Builder per-field panel (Validation tab) |
| Min/Max value | Number | Browser blocks out-of-range entry; server re-checks on submit | Builder per-field panel (Validation tab) |
| Step (increment) | Number | Browser increments by step and rejects fractional values; server enforces (value - min) % step == 0 so external clients can’t bypass | Builder per-field panel (Validation tab) |
| Min/Max length | Text, Email, Textarea, Password, URL | Browser counts characters and blocks short/long values; server re-validates | Builder per-field panel (Validation tab) |
| Custom regex pattern | Text, Password, URL | Browser tests against the pattern; server uses preg_match with the same regex | Builder per-field panel (Validation tab) |
File Upload submissions are stored in a private formforge-private folder under WordPress uploads. Visitors and integrations see the original filename, but not a public download URL. Site admins download files from Form Forge > Submissions through a nonce-protected admin link.
> How inline validation works. The form is rendered with the novalidate attribute so the browser doesn’t intercept submit out from under the AJAX handler. Form Forge then runs checkValidity() on the fields the visitor can see (skipping hidden multi-step pages and conditional fields), and if anything fails it focuses the offending field and lets the browser show its native error tooltip. Submit / Next is blocked until the visible fields pass. The PHP server re-validates every rule on submission, so even non-browser clients can’t bypass the constraints.
> Tip: Do not make every field required. Only mark fields as required when you truly need that data. Every required field adds friction and reduces the number of people who complete your form. A good rule of thumb: if you would not ask for it in a face-to-face conversation, do not require it on the form.
> Good to know: Validation messages appear instantly as the visitor fills out the form. If someone types an invalid email format, they see a helpful error message right away — they do not have to submit the form first and then scroll back to find the problem.
Common Mistakes to Avoid
- Setting every field to required. This is the number one cause of form abandonment. Be selective.
- Writing vague labels like “Field 1” or “Info.” Use clear, specific labels that tell the visitor exactly what to enter.
- Forgetting to add help text for sensitive fields. If you ask for a phone number, a brief note like “For scheduling callbacks only” reduces hesitation.
[Screenshot: The right panel showing field settings for an Email field — Label, Placeholder, Required toggle, Help Text, and Validation tab]
—