Collect a single line of text from the visitor — names, email addresses, phone numbers, or URLs. The value is exposed as a variable (by Name) for use in formulas and actions.
In the builder: Elements → Form Widgets → Text
Widget Settings
Select the widget on the canvas, then open the Element tab in the right sidebar.
Variable
| UI field | Description |
|---|---|
| Name | Variable name for formulas (required). Use snake_case, e.g. contact_email, full_name. |
| Value | Default text when the form loads. If it starts with =, it is a formula. |
Type
| Option | Use for |
|---|---|
| text | General single-line text |
| Email addresses | |
| tel | Phone numbers |
| url | Web addresses (use full https://... URLs) |
value and placeholder must be plain text — no markdown links or mailto: prefixes in email fields.
Field Option
| UI field | Description |
|---|---|
| Label | Text shown above the field. Supports [icon] shortcodes. |
| Placeholder | Hint when the field is empty. |
| Status | See Status below. |
| Prefix | Text or icon before the input. |
| Suffix | Text or unit after the input. |
Status
| Value | Behavior |
|---|---|
| Editable | Visitor can type and change the value (default). |
| Readonly | Value is visible and included in formulas, but the visitor cannot edit it. |
| Disabled | Field is greyed out and inactive. The visitor cannot interact with it; use when the field should not apply in the current context. |
Validation
| UI field | Options | Purpose |
|---|---|---|
| Required | Required / Optional |
Visitor must enter a value. |
| Type | Any text / Valid email / Valid phone number / Valid URL | Format check matching Type. |
On Change
Attach actions that run when the visitor changes the value — e.g. Calculate, Toggle View Mode. Click Add action.
Visibility
Expand Visibility to show or hide the widget based on an active View Mode or a formula. See Show and Hide Fields with Conditional Logic.
| UI field | Description |
|---|---|
| Show | Always or Conditionally |
| Active mode is | Name of the View Mode that must be active for this widget to appear (when Show is Conditionally). |
| Formula result is positive | Optional formula; evaluated on Calculate |
Design
Expand Design to style individual parts of the widget. Prefer project themes for a consistent look; per-widget styling is optional.
| Part | What it represents |
|---|---|
| Label | Text above the field. |
| Control Area | Region around the input — padding and layout. |
| Input | The editable text field. |
Custom CSS — useful selectors and classes:
| Selector / class | Targets |
|---|---|
#cp-{ID} |
Entire widget (ID from the Element panel header). |
| Custom CSS Classes | Classes you add in Design; applied to the outer widget container. |
.text-widget |
Outer widget type class. |
input[name="{Name}"] |
Input for a given variable Name. |
Using the value in formulas
Reference the Name in formulas or in Custom Text with {{ variable_name }}.
Text vs Number
| Text | Number | |
|---|---|---|
| Input | Letters, email, phone, URL | Numeric values only |
| Validation | Type (email, URL, …) | Min, Max, decimal places |
| Best for | Names, contact details | Amounts, quantities, rates |
Use Text for contact and identity fields. Use Number when the value must be numeric.