Skip to main content
Checkout template

Address Form template

Collect a deliverable postal address without stuffing city or unit into the wrong line. Copy the accessible markup, adjust the fields, and publish it with Core Forms.

Rendered

What your visitor sees

Plain semantic HTML rendered through the same default form theme Core Forms applies on the front-end. Try it — this demo confirms inline and sends nothing.

Demo only. On your site, the same markup wires into the normal Core Forms action loop — email, Slack, Google Sheets, webhook, whatever you configure.

Source

The HTML behind it

Copy this block, paste into Core Forms → Add New Form → Fields tab, save. Field names map to merge tags automatically in your action templates.

<p><label for="addr-name">Full name</label><input id="addr-name" name="NAME" type="text" autocomplete="name" required aria-required="true"></p>
<p><label for="addr-line1">Address line 1</label><input id="addr-line1" name="ADDRESS_LINE_1" type="text" autocomplete="address-line1" required aria-required="true"></p>
<p><label for="addr-line2">Address line 2 <span>(optional)</span></label><input id="addr-line2" name="ADDRESS_LINE_2" type="text" autocomplete="address-line2"></p>
<p><label for="addr-city">City</label><input id="addr-city" name="CITY" type="text" autocomplete="address-level2" required aria-required="true"></p>
<p><label for="addr-state">State / region</label><input id="addr-state" name="STATE" type="text" autocomplete="address-level1" required aria-required="true"></p>
<p><label for="addr-postal">Postal code</label><input id="addr-postal" name="POSTAL_CODE" type="text" autocomplete="postal-code" required aria-required="true"></p>
<p><label for="addr-country">Country</label><input id="addr-country" name="COUNTRY" type="text" autocomplete="country-name" required aria-required="true"></p>
<p><button type="submit">Save address</button></p>

When to use it

What this address form template is for

Use this for shipping, billing, or a change-of-address request. Line 1 finds the building. Line 2 finds the unit, and it stays optional.

This version asks only for information needed to complete that job. Do not put the city in line 2, and do not require line 2. A house with no unit should submit with that field blank.

The markup uses explicit labels, useful autocomplete values, and fieldsets for grouped choices. You can edit every line instead of working around a locked template schema.

Every field, and why it's there

FieldTypeRequiredWhy it's there
Full name text Yes Who the delivery or billing record belongs to.
Address line 1 text Yes Street number and name. This is the building-level destination.
Address line 2 text Optional Apartment, suite, unit, floor, or room. Leave blank when there is none.
City text Yes Locality. Never mix this into line 1 or line 2.
State / region text Yes State, province, or region as the carrier expects it.
Postal code text Yes ZIP or postal code. Autocomplete maps this to postal-code.
Country text Yes Required for international shipping and tax. Default it when the audience is one country.
Setup

From this HTML to a working form

  1. 1

    Create the form from a template

    In Core Forms, add a new form and choose the Address Form starting point, or paste the HTML below into code mode.

  2. 2

    Remove what you will not use

    Delete unnecessary fields, update the labels and choices, then set the success message to explain what happens next.

  3. 3

    Test the whole path

    Submit the form with realistic data. Verify validation, the saved submission, notification email, autoresponder, and any integration action.

Make it yours

Three upgrades worth considering

Show fields only when needed

Keep the first view short and reveal follow-up questions from an earlier answer.

Use conditional logic →

Route the submitted data

Send the result to email, a CRM, a spreadsheet, or a signed webhook after validation.

Explore integrations →

Check the funnel

Measure starts, successful submissions, and field drop-off after the form has real traffic.

Use form analytics →
FAQ

Address Form template questions

Is this address form template free to copy?

Yes. The HTML on this page is free to copy and adapt. Core Forms is required only if you want its WordPress submission handling, inbox, actions, analytics, and other plugin features.

Can I change or remove fields?

Yes. The form is plain HTML. Remove any field you cannot justify, rename fields before collecting data, and keep every label associated with its control.

Does the template save submissions in WordPress?

Core Forms can save successful submissions in its WordPress inbox. Storage is a per-form setting, so you can disable it for forms whose data should not be retained.

Can the form send a confirmation email?

Yes. Add an autoresponder action, map its recipient to the submitted email field, and state what the person should expect next.

How should I test it?

Use realistic valid data, missing required data, a malformed email address, keyboard-only navigation, and a narrow mobile viewport. Also verify every configured action and redirect.

The template is free. The plumbing is the product.

Core Forms turns this HTML into stored submissions, spam-filtered email, and 70+ integrations.