> ## Documentation Index
> Fetch the complete documentation index at: https://docs.digifist.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Contact page

> Customize the layout and features of your contact page.

The contact page provides customers with a way to reach you for inquiries, support, or feedback. It includes a customizable contact form with flexible field types, customer data binding, and optional map display for your store location.

<img src="https://mintcdn.com/digifist/dgUL6t3SIKQyfdCS/images/theme/release/sections/form-contact/form-overview.png?fit=max&auto=format&n=dgUL6t3SIKQyfdCS&q=85&s=5b9adc6b5792d515131f0773e021cd0b" alt="Contact page overview" width="3280" height="2186" data-path="images/theme/release/sections/form-contact/form-overview.png" />

## What this section controls

This section manages:

* **Contact form fields** - Customizable text, email, phone, checkbox, and radio fields
* **Field layout** - Control field width (full or half) and column spanning
* **Customer data binding** - Auto-fill fields for logged-in customers
* **Required field validation** - Enforce mandatory field completion
* **Form submission** - Handle form submissions and success messaging
* **Map display** - Optional Google Maps integration for store location
* **Section layout** - Adjust section width, color scheme, and spacing

## Getting started

<Steps>
  <Step title="Open Theme Customizer">
    From Shopify admin, access the Theme Customizer
  </Step>

  <Step title="Navigate to Contact page">
    In the left sidebar, click **Pages** > **Contact**
  </Step>

  <Step title="Add form fields">
    Click **Add block** > **Field** to add form input fields
  </Step>

  <Step title="Configure field settings">
    Set field type, label, width, and whether it's required
  </Step>

  <Step title="Add map (optional)">
    Configure Google Maps API key and address to display store location
  </Step>

  <Step title="Adjust layout">
    Set section width, color scheme, and spacing in the Layout tab
  </Step>
</Steps>

## Section Settings

<Tabs>
  <Tab title="Layout">
    Control the overall form layout, width, and spacing.

    <img src="https://mintcdn.com/digifist/yuggJPUIy_CDeMJf/images/theme/release/sections/form-contact/layout-settings.png?fit=max&auto=format&n=yuggJPUIy_CDeMJf&q=85&s=0a856901099d53ce97c55a7e86561a83" alt="Form layout settings" width="3280" height="2186" data-path="images/theme/release/sections/form-contact/layout-settings.png" />

    <AccordionGroup>
      <Accordion title="Section width">
        **Type:** Dropdown\
        **Options:** max-w-page, max-w-narrower, max-w-fluid\
        **Default:** max-w-narrower

        Control the maximum width of the contact form:

        * **max-w-page** - Standard container matching theme width
        * **max-w-narrower** - Narrow focused layout for better readability
        * **max-w-fluid** - Wider container utilizing more screen space

        <Tip>
          Narrower width improves form readability and completion rates by reducing visual noise and focusing attention on the form.
        </Tip>
      </Accordion>

      <Accordion title="Color scheme">
        **Type:** Dropdown\
        **Default:** scheme-1

        Select the color scheme for the form section. Available schemes are defined in **Theme settings > Colors**.

        <Note>Color scheme affects background, text, input borders, and button colors throughout the form.</Note>
      </Accordion>

      <Accordion title="Spacing top">
        **Type:** Dropdown\
        **Options:** No (0), S (1), M (2), L (4), XL (6)\
        **Default:** M (2)

        Adjust padding above the form section, controlling vertical space from the header.
      </Accordion>

      <Accordion title="Spacing bottom">
        **Type:** Dropdown\
        **Options:** No (0), S (1), M (2), L (4), XL (6)\
        **Default:** M (2)

        Adjust padding below the form section, controlling vertical space to the footer.
      </Accordion>
    </AccordionGroup>
  </Tab>

  <Tab title="Map">
    Optional Google Maps integration to display your store location.

    <AccordionGroup>
      <Accordion title="Google Maps API key">
        **Type:** Text field\
        **Required:** Yes (to enable map)

        Your Google Maps API key required to display the map. Get your API key from [Google Cloud Console](https://console.cloud.google.com/).

        <Warning>Without a valid API key, the map will not display on the contact page.</Warning>
      </Accordion>

      <Accordion title="Address">
        **Type:** Text field\
        **Default:** Shop address from store settings

        The address to display on the map. Uses your shop address by default but can be manually overridden.

        **Format:** `street, city, country/state`\
        **Example:** `123 Main Street, New York, NY`

        <Tip>Use your full store address for accurate map positioning.</Tip>
      </Accordion>

      <Accordion title="Zoom">
        **Type:** Range slider\
        **Range:** 1-20\
        **Default:** 14

        Controls the initial zoom level of the map. Higher values show more detail, lower values show broader area.

        <Note>Zoom level 14 provides a good balance between showing surrounding area and store detail.</Note>
      </Accordion>
    </AccordionGroup>
  </Tab>
</Tabs>

## Block Settings

### Field Block

Add customizable form fields to build your contact form. Each field can span full or half width and supports various input types.

<Tabs>
  <Tab title="Basic Settings">
    Configure the fundamental properties of each form field.

    <img src="https://mintcdn.com/digifist/yuggJPUIy_CDeMJf/images/theme/release/sections/form-contact/field-basic.png?fit=max&auto=format&n=yuggJPUIy_CDeMJf&q=85&s=2b7fa481dd1a2c7596284ec173913246" alt="Basic field settings" width="3280" height="2186" data-path="images/theme/release/sections/form-contact/field-basic.png" />

    <AccordionGroup>
      <Accordion title="Block width / Column factor">
        **Type:** Dropdown\
        **Options:** Full width (6), Half width (3)\
        **Default:** Full width

        Control the width of the field:

        * **Full width (6)** - Spans entire form width
        * **Half width (3)** - Takes up half the row, allowing two fields side-by-side

        <Tip>Use half-width for related pairs like first name/last name or city/zip code to save vertical space.</Tip>
      </Accordion>

      <Accordion title="Label / Heading">
        **Type:** Text field\
        **Default:** "Label"\
        **Required:** Yes

        The label text displayed above the field. This will also be used to generate the field name in form submissions.

        <Tip>Use clear, descriptive labels like "Full Name", "Email Address", "Phone Number" to help users understand what information to provide.</Tip>
      </Accordion>

      <Accordion title="Type">
        **Type:** Dropdown\
        **Default:** Text

        Choose the field input type:

        **Input fields:**

        * **Text** - Single line text input for names, subjects, etc.
        * **Email** - Email address input with validation
        * **Tel** - Telephone number input

        **Selection fields:**

        * **Checkbox** - Multiple choice checkboxes (allows multiple selections)
        * **Radio** - Single choice radio buttons (allows one selection)

        <Note>
          Checkbox fields allow multiple selections, while radio fields allow only one selection at a time.
        </Note>
      </Accordion>

      <Accordion title="Required field / Required">
        **Type:** Toggle\
        **Default:** Disabled

        Mark the field as required for form submission. Customers cannot submit the form without filling required fields.

        <Tip>Mark name, email, and message fields as required minimum to ensure you can respond to inquiries.</Tip>
      </Accordion>
    </AccordionGroup>
  </Tab>

  <Tab title="Input Fields">
    Additional settings available for Text, Email, and Tel field types.

    <img src="https://mintcdn.com/digifist/yuggJPUIy_CDeMJf/images/theme/release/sections/form-contact/input-fields.png?fit=max&auto=format&n=yuggJPUIy_CDeMJf&q=85&s=365e5882eb5a69bae8ca20932dc522fb" alt="Input field settings" width="3280" height="2186" data-path="images/theme/release/sections/form-contact/input-fields.png" />

    <AccordionGroup>
      <Accordion title="Placeholder">
        **Type:** Text field\
        **Optional:** Yes

        Placeholder text shown inside the field when empty. Provides hints about expected input format.

        **Examples:**

        * Email field: `john@example.com`
        * Phone field: `+1 (555) 123-4567`
        * Text field: `Enter your full name`

        <Tip>Use placeholders to provide format hints without cluttering the form with extra instructions.</Tip>
      </Accordion>

      <Accordion title="Binding">
        **Type:** Dropdown\
        **Default:** Custom\
        **Availability:** Text, Email, and Tel fields only

        Bind field to customer data for logged-in users. Auto-fills the field with customer information.

        **Available options:**

        * **Custom** - No binding, manual input
        * **Email** - Customer email address
        * **Name** - Full name
        * **First name** - First name only
        * **Last name** - Last name only
        * **ID** - Customer ID
        * **Phone** - Phone number
        * **Last order** - Last order number

        <Tip>
          Use email binding for email fields to auto-fill for logged-in customers, improving form completion rates by 30-40%.
        </Tip>

        <Note>Binding only works for logged-in customers. Guest visitors must manually fill all fields.</Note>
      </Accordion>
    </AccordionGroup>
  </Tab>

  <Tab title="Selection Fields">
    Settings for Checkbox and Radio field types.

    <img src="https://mintcdn.com/digifist/yuggJPUIy_CDeMJf/images/theme/release/sections/form-contact/selection-fields.png?fit=max&auto=format&n=yuggJPUIy_CDeMJf&q=85&s=30d555332c404fc3df8546cca999e814" alt="Selection field options" width="3280" height="2186" data-path="images/theme/release/sections/form-contact/selection-fields.png" />

    <AccordionGroup>
      <Accordion title="Checked field / Checked">
        **Type:** Toggle\
        **Default:** Unchecked

        Set default checked state for the first checkbox/radio option.

        <Tip>Enable for consent checkboxes or default selections to streamline form completion.</Tip>
      </Accordion>

      <Accordion title="Label description">
        **Type:** Text field\
        **Optional:** Yes

        Additional descriptive text displayed below the field label. Use to provide context or instructions.

        <Tip>Add descriptions like "Select all that apply" for checkboxes or "Choose one option" for radio buttons.</Tip>
      </Accordion>

      <Accordion title="Form options / Options 1-4">
        **Type:** Text fields (4 options)\
        **Availability:** Checkbox and Radio fields only

        Define up to 4 options for checkbox or radio selection:

        * **Option 1** - First selectable choice
        * **Option 2** - Second selectable choice
        * **Option 3** - Third selectable choice
        * **Option 4** - Fourth selectable choice

        Leave blank to hide unused options.

        <Tip>For inquiry types, use options like "General Question", "Technical Support", "Billing Issue", "Partnership Inquiry".</Tip>
      </Accordion>
    </AccordionGroup>
  </Tab>
</Tabs>

## Common use cases

<Tabs>
  <Tab title="Basic contact">
    Standard contact form for general inquiries.

    **Configuration:**

    * Name (Text, Full width, Required)
    * Email (Email, Full width, Required, Binding: Email)
    * Subject (Text, Full width)
    * Message (Text, Full width, Required)
  </Tab>

  <Tab title="Support inquiry">
    Detailed form for customer support requests.

    **Configuration:**

    * Name (Text, Full width, Required)
    * Email (Email, Full width, Required, Binding: Email)
    * Order ID (Text, Full width, Binding: Last order)
    * Issue type (Radio: Technical/Billing/General/Other)
    * Description (Text, Full width, Required)
  </Tab>

  <Tab title="Newsletter signup">
    Simple form focused on email collection.

    **Configuration:**

    * Email (Email, Full width, Required, Binding: Email)
    * Consent checkbox (Checkbox, Required, "I agree to receive newsletters")
  </Tab>

  <Tab title="Quote request">
    Professional quote request form with detailed fields.

    **Configuration:**

    * First name + Last name (Text, Half width each, Required)
    * Email (Email, Full width, Required, Binding: Email)
    * Phone (Tel, Full width, Binding: Phone)
    * Service type (Checkbox: Consulting/Development/Design/Marketing)
    * Budget range (Radio: \<$5k/$5k-$10k/$10k-$25k/$25k+)
    * Project details (Text, Full width, Required)
  </Tab>

  <Tab title="Partnership inquiry">
    Form for business partnership opportunities.

    **Configuration:**

    * Company name (Text, Full width, Required)
    * Contact name (Text, Full width, Required)
    * Email (Email, Full width, Required, Binding: Email)
    * Phone (Tel, Full width, Binding: Phone)
    * Partnership type (Radio: Affiliate/Wholesale/Collaboration/Distribution)
    * Message (Text, Full width, Required)
  </Tab>

  <Tab title="Product inquiry">
    Form for specific product questions.

    **Configuration:**

    * Name (Text, Full width, Required)
    * Email (Email, Full width, Required, Binding: Email)
    * Product interest (Radio: Product A/Product B/Product C/Other)
    * Quantity needed (Text, Half width)
    * Timeline (Radio: Immediate/1-2 weeks/1 month/Flexible, Half width)
    * Additional information (Text, Full width)
  </Tab>
</Tabs>

## Best practices

<CardGroup cols={2}>
  <Card title="Form width optimization" icon="arrows-left-right">
    Use max-w-narrower (default) for better readability and completion rates. Narrower forms reduce visual noise and focus attention on form fields.
  </Card>

  <Card title="Required fields strategy" icon="asterisk">
    Mark name, email, and message as required minimum. Too many required fields (>5) can reduce completion rates by 30-40%.
  </Card>

  <Card title="Half-width pairing" icon="columns">
    Use half-width fields for related pairs like first name/last name or city/zip code to save vertical space and improve form flow.
  </Card>

  <Card title="Full-width priority" icon="window-maximize">
    Use full-width fields for message/textarea and single important fields like email to emphasize their importance.
  </Card>

  <Card title="Email binding" icon="at">
    Always bind email field to customer email for convenience. This improves form completion rates by 30-40% for logged-in users.
  </Card>

  <Card title="Field order logic" icon="list-ol">
    Follow standard flow: Name → Email → Subject/Reason → Message. Users expect this pattern and complete forms faster when it's followed.
  </Card>

  <Card title="Placeholder hints" icon="input-text">
    Use placeholders to provide format hints like "[john@example.com](mailto:john@example.com)" or "+1 (555) 123-4567" without cluttering the form.
  </Card>

  <Card title="Consent checkbox" icon="square-check">
    Add required checkbox for terms/privacy acceptance if legally required. Place at the end, before submit button.
  </Card>

  <Card title="Radio for categories" icon="circle-dot">
    Use radio buttons for predefined options like inquiry type or department. This standardizes responses and improves support routing.
  </Card>

  <Card title="Form length" icon="ruler">
    Keep it short: 4-6 fields maximum for higher completion rates. Each additional field can reduce completion by 5-10%.
  </Card>
</CardGroup>

## Related guides

<CardGroup cols={2}>
  <Card title="Newsletter Popup" icon="envelope" href="/themes/release/sections/newsletter-popup">
    Configure newsletter signup popup for email collection
  </Card>

  <Card title="Page Settings" icon="file" href="/themes/release/pages-templates/page">
    Create and customize additional pages
  </Card>
</CardGroup>
