An input mask automatically formats what a user types as they type it. Masks make data entry faster and more consistent. For example formatting a phone number as (555) 123-4567 while the user types 5551234567.
Masks are available on Text, Telephone, and Number fields. Find the Input Mask option in the field's settings panel in the form builder.
Using a Preset
Click the button next to the Input Mask field to switch to preset mode. Two presets are available:
- Telephone — formats numbers as
(999) 999-9999(US-style). - Money — formats values as currency (e.g.
$1,234.56) and is the recommended choice for Number fields that collect dollar amounts.
Writing a Custom Mask
Type a mask pattern directly into the Input Mask field. Use these tokens:
| Token | Matches |
|---|---|
9 |
Any digit (0–9) |
a |
Any letter (A–Z, a–z) |
* |
Any digit or letter |
\ |
Escapes the next character so it is treated as a literal |
Anything else in the pattern (parentheses, dashes, spaces, slashes, etc.) is shown to the user as-is.
Examples
| Field | Mask |
|---|---|
| US phone number | (999) 999-9999 |
| Social Security Number | 999-99-9999 |
| ZIP+4 | 99999-9999 |
| Canadian postal code | a9a 9a9 |
| Date (US) | 99/99/9999 |
| License plate | aaa-9999 |
| Credit card | 9999 9999 9999 9999 |
Tips
- Masks change how data is displayed as the user types — they do not validate the value. Pair a mask with Input Rules when you need to enforce a specific format on submission.
- For phone fields, the Telephone preset already wires up matching validation behind the scenes.
- If users frequently paste data into a masked field, test that the paste behavior produces the format you want.
Related
- Input Rules — server-side validation for field values
- Form Validation — overview of all validation options
- Field Types — which fields support masks