> For the complete documentation index, see [llms.txt](https://docs.dapta.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.dapta.ai/dapta-forms/builder/question-types/contact-fields.md).

# Contact fields: Name, Email, Phone

The three contact question types in Dapta Forms: Name (first and last name on one screen), Email (with Require work email) and Phone (country picker, minimum digits, international format).

Contact fields are how a form identifies the person answering it. They are marked with a **Contact** badge in the question list, they never count toward the score, and they are the fields HubSpot and webhooks use to recognise a lead. This page covers every setting the three types offer.

***

## Name

**Step 1:** Click **Add question** and pick **Name** (Full name field). Type the question text on the canvas, for example *What's your name?*

The Name question is the only step that collects two inputs on one screen: a first name and a last name, side by side.

<figure><img src="https://3835013762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCy5rSNtQmtqYCGzJlNEB%2Fuploads%2Fgit-blob-067cf1097e4c1eedad4c51bbe0f7da07440a259a%2Fforms-contact-fields-01-name-question.png?alt=media" alt="A Name question on the canvas with First name and Last name inputs, and the Name fields section in Question settings"><figcaption><p>Two inputs on one screen. The <strong>Name fields</strong> section controls each one.</p></figcaption></figure>

**Step 2:** In **Question settings**, open the **Name fields** section ("The two inputs this question collects on one screen."). Each input has its own row:

<figure><img src="https://3835013762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCy5rSNtQmtqYCGzJlNEB%2Fuploads%2Fgit-blob-be75825822261d1a5c1440ad71bdb4cc07ea133a%2Fforms-contact-fields-02-name-fields.png?alt=media" alt="The Name fields section with First field and Second field, each with a Field key and a Placeholder"><figcaption><p>Field keys default to <code>firstname</code> and <code>lastname</code>; placeholders default to <strong>First name</strong> and <strong>Last name</strong>.</p></figcaption></figure>

| Setting                        | Default     | What it does                                                                                                                                                  |
| ------------------------------ | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **First field → Field key**    | `firstname` | The name the first input is stored under. Also the URL parameter that prefills it (`?firstname=Ada`) and the reference that recalls it later (`[firstname]`). |
| **First field → Placeholder**  | First name  | Ghost text inside the first input while it is empty.                                                                                                          |
| **Second field → Field key**   | `lastname`  | Same as above for the second input (`?lastname=Lovelace`, `[lastname]`).                                                                                      |
| **Second field → Placeholder** | Last name   | Ghost text inside the second input.                                                                                                                           |
| **Required**                   | On          | Both inputs must be filled to continue.                                                                                                                       |

Because the two keys are independent, a Name question produces two values in every submission, two columns in the CSV export and two fields you can map separately in HubSpot (typically *First name* and *Last name*). Keys accept letters, numbers and underscores, up to 64 characters, and must be unique in the form.

> **💡 Tip:** The Name question has no **Placeholder** or **Default answer** at the question level; use the per-field placeholders above. Renaming a key updates every place that refers to it (logic, `[key]` references, HubSpot mapping).

***

## Email

**Step 1:** Click **Add question** and pick **Email** (Validated email). Type the question text, for example *What's your work email?*

Respondents must enter a syntactically valid address; otherwise they see **Enter a valid email address.** and cannot continue.

**Step 2:** In **Question settings**, set the **Placeholder** if you want ghost text (for example `name@company.com`) and decide whether to turn on **Require work email**.

<figure><img src="https://3835013762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCy5rSNtQmtqYCGzJlNEB%2Fuploads%2Fgit-blob-e20d6311dc98c2663ab0556a2dc78446a4f12733%2Fforms-contact-fields-03-email-settings.png?alt=media" alt="Email question settings with Placeholder filled and the Require work email switch turned on"><figcaption><p><strong>Require work email</strong> blocks Gmail, Hotmail, Yahoo and other personal domains.</p></figcaption></figure>

| Setting                | Default                        | What it does                                                                                                                                    |
| ---------------------- | ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| **Placeholder**        | empty                          | Ghost text shown inside the input while it is empty. Leave empty for none.                                                                      |
| **Require work email** | Off                            | Blocks Gmail, Hotmail, Yahoo and other personal domains. A respondent who types a personal address sees **Please use your work email address.** |
| **Required**           | On                             | The step cannot be skipped.                                                                                                                     |
| **Default answer**     | empty                          | Under **Advanced settings**. Used when the link carries no value; anything in the URL wins over this.                                           |
| **Field key**          | `email` (first email question) | Under **Advanced settings**. Prefill with `?email=ana%40acme.com`; recall with `[email]`.                                                       |

An email question unlocks several things elsewhere in the editor:

* The question list shows the **Capture after the email question** nudge: one click places the **Partial submit point** right after this step so the lead is saved even if they never finish. See [Partial submissions](/dapta-forms/builder/partial-submissions.md).
* HubSpot sync needs an email (or a booking) to identify the contact; with an email question in the form, the **HubSpot** block in the settings pane lets you map answers to properties. See [HubSpot](/dapta-forms/connect/hubspot.md).
* Later questions gain a **Personal email only** switch in their **Logic** section: "Show this question only when the respondent entered a personal (non-work) email." Use it, for example, to ask for a company name only when the email domain does not reveal it.

***

## Phone

**Step 1:** Click **Add question** and pick **Phone** (Number with country). Type the question text, for example *What's your phone number?*

**Step 2:** In **Question settings**, review **Minimum digits** and **Default country**.

<figure><img src="https://3835013762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCy5rSNtQmtqYCGzJlNEB%2Fuploads%2Fgit-blob-cf566f9e52ee615457a2791719d023d2aa7ce9f2%2Fforms-contact-fields-04-phone-settings.png?alt=media" alt="Phone question settings showing Minimum digits set to 7 and Default country set to Automatic (based on visitor language)"><figcaption><p>The canvas shows the input with a sample number in international format.</p></figcaption></figure>

| Setting                            | Default                               | What it does                                                                                                                                                                                                        |
| ---------------------------------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Minimum digits**                 | 7                                     | The shortest number accepted, not counting the country code. Phone lengths vary by country, so this is the floor that catches an obviously incomplete number. A shorter entry shows **Enter a valid phone number.** |
| **Default country**                | Automatic (based on visitor language) | Which country code the picker starts on. **Automatic** reads the visitor's browser language; or pin one country so the code is right for most of your audience.                                                     |
| **Required**                       | On                                    | The step cannot be skipped.                                                                                                                                                                                         |
| **Default answer** / **Field key** | empty / `phone`                       | Under **Advanced settings**. Prefill with the number URL-encoded, for example `?phone=%2B15555550123`.                                                                                                              |

**Step 3:** To pin a country, click **Default country**, type in the **Search…** box and pick a row. Every country is listed with its flag and dial code.

<figure><img src="https://3835013762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCy5rSNtQmtqYCGzJlNEB%2Fuploads%2Fgit-blob-70acf0bcd6b60e8abf10d50eb1ff33c8cedc73b4%2Fforms-contact-fields-05-phone-country-picker.png?alt=media" alt="The Default country picker open with united typed in the search box and United Arab Emirates, United Kingdom and United States listed"><figcaption><p>Search by country name. The first row, <strong>Automatic (based on visitor language)</strong>, restores the default.</p></figcaption></figure>

What respondents see: a country-code picker next to the number input, with its own search box (**Search country or code**, and **No countries found** when nothing matches). Whatever country they pick, the answer is stored in international E.164 format (for example `+15555550123`), so it arrives clean in submissions, CSV exports, HubSpot and webhooks. The phone input does not steal focus when the screen opens, so the picker stays reachable on mobile.

***

## Good to know

* All three types carry the **Contact** badge in the question list and are excluded from scoring: the settings pane says **Contact field: doesn't affect the score.**
* Contact answers can be recalled in later questions with `@` (for example *Thanks, \[firstname]! Which plan fits you?*). See [Recall answers with @](/dapta-forms/builder/recall-answers.md).
* Any of them can be prefilled from the link (`?email=…&firstname=…`). See [Hidden fields & URL prefill](/dapta-forms/builder/hidden-fields-and-url-prefill.md).

## What's next

* [Choice fields: Single, Multiple, Dropdown](/dapta-forms/builder/question-types/choice-fields.md)
* [Partial submissions (lead capture point)](/dapta-forms/builder/partial-submissions.md)
* [Map questions to contact properties](/dapta-forms/connect/hubspot/map-questions.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.dapta.ai/dapta-forms/builder/question-types/contact-fields.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
