Field types
AmazingForms supports 18 field types. When you describe your form in plain English, the AI builder automatically picks the right types — but you can add, remove, or change any field in the visual editor at any time.
Field type reference
Section titled “Field type reference”| Field type | Use case | Key options |
|---|---|---|
| Text | Single-line text input | Min/max length, regex pattern validation |
| Textarea | Multi-line text (paragraphs, messages) | Min/max characters, rows, placeholder |
| Email address | Built-in format validation, optional MX record check | |
| Phone | Phone number | E.164 format validation, country-code selector |
| Number | Numeric input | Min/max range, decimal places, currency formatting |
| Select | Choose one from a dropdown list | ”Other” option with free-text fallback, searchable |
| Radio buttons | Choose one — all options visible at once | Supports images as option labels, inline or stacked layout |
| Checkboxes | Choose one or more | Select-all toggle, min/max selections |
| Date | Date picker | Min/max date range, disable weekends, locale format |
| Time | Time picker | 12h or 24h format, step intervals (e.g. every 15 min) |
| File upload | Attach files | Max file size (default 10 MB), allowed MIME types, multi-file |
| Signature | Drawn signature | Captured as SVG, stored base64 in submission |
| Rating | Star or numeric rating | 1–5 or 1–10 scale, custom icons |
| Hidden | Stores a value invisibly | Static value or dynamic merge tag (e.g. {utm_source}) |
| Section break | Visual divider between field groups | Optional label and description, no data collected |
| HTML | Custom HTML block | For notices, rich copy, or embedded media |
| CAPTCHA | Spam protection | reCAPTCHA v3 (default, invisible) or hCaptcha |
| Payment | Collect payment at submission | Fixed or user-entered amount, links to Stripe/Square/PayPal |
How to configure common field types
Section titled “How to configure common field types”Text and Textarea
Section titled “Text and Textarea”Open the field editor (click a field on the canvas) and use the Validation tab to set:
- Min/max length — shows a live character counter below the field
- Pattern — a regular expression the value must match, with a custom error message
// Example: UK postcode pattern{ "pattern": "^[A-Z]{1,2}[0-9][0-9A-Z]?\\s?[0-9][A-Z]{2}$", "patternMessage": "Please enter a valid UK postcode"}Email — MX record check
Section titled “Email — MX record check”Enable Verify MX record in the field’s Validation tab. AmazingForms will reject addresses whose domain has no valid mail exchanger. This catches typos like @gmial.com that pass format checks.
File upload
Section titled “File upload”| Setting | Default | Notes |
|---|---|---|
| Max file size | 10 MB | Bounded by your server’s upload_max_filesize |
| Allowed types | All | Comma-separated MIME types, e.g. image/jpeg, application/pdf |
| Multi-file | Off | When on, allows multiple files in one upload field |
| Storage | WordPress media library | Files are private by default (not publicly linked) |
Signature
Section titled “Signature”The signature field renders a draw-pad. On submission, the signature is:
- Captured as an SVG path
- Converted to a base64-encoded PNG
- Stored in the submission record and displayed in the CRM timeline
Payment field
Section titled “Payment field”The Payment field must be configured with an active payment gateway (Stripe, Square, or PayPal). See Stripe payments for setup instructions.
- Fixed amount — you set the price (e.g. £49.00)
- User-entered amount — the submitter types an amount (optionally with a minimum)
- Recurring — monthly or yearly subscription (Stripe only for recurring billing)
Merge tags for hidden fields
Section titled “Merge tags for hidden fields”Hidden fields are powerful for capturing context that the user doesn’t type themselves. Set the Default value to a merge tag:
| Merge tag | What it captures |
|---|---|
{page_url} | Full URL of the page the form is embedded on |
{utm_source} | UTM source parameter from the URL |
{utm_medium} | UTM medium parameter |
{utm_campaign} | UTM campaign parameter |
{utm_term} | UTM term parameter |
{utm_content} | UTM content parameter |
{user_email} | Logged-in WordPress user’s email (blank if not logged in) |
{user_id} | Logged-in WordPress user ID |
{user_display_name} | Logged-in WordPress user’s display name |
{referrer_url} | HTTP referrer — where the visitor came from |
{submission_date} | Date the form was submitted (server time) |
{form_id} | Numeric ID of this form |
Field IDs and referencing fields
Section titled “Field IDs and referencing fields”Every field has a unique Field ID — a short slug you set in the field editor (Advanced tab). Field IDs are used in:
- Conditional logic — “show this field when
[field_id]equals …” - Merge tags —
{field:my_field_id}in email templates and workflow prompts - Webhook/API output — field values are keyed by field ID in JSON payloads
// Example submission payload snippet{ "submission_id": 1042, "form_id": 7, "fields": { "first_name": "Sarah", "email": "sarah@example.com", "project_budget": "5000", "utm_source": "google" }}