Coming soon: Blockly Checkout Customizer — validation rules, upsells & checkout analytics.Get early access
Tutorial

Add Custom Fields to Shopify Checkout (Gift Messages, Delivery Notes and More)

Gift messages, delivery instructions, tax IDs and preferred delivery dates all start as a custom checkout field. Learn where the data goes, how to validate it, and how to keep it useful for fulfillment.

Add Custom Fields to Shopify Checkout (Gift Messages, Delivery Notes and More)

Sometimes the standard checkout form is not enough. A customer wants to add a gift message. A business buyer needs to enter a company tax ID. A courier needs a gate code. A bakery needs to know which day to deliver the cake.

Each of these is a custom field, and each one creates the same set of questions: where does the data go, how do you make sure it is valid, who on your team sees it, and should you be collecting it at all?

This tutorial walks through the use cases, the storage options, validation, fulfillment workflow, and the privacy side of adding fields to Shopify checkout.

Why custom fields belong in checkout

You can collect extra information on the product or cart page, but checkout has advantages:

  • Every order passes through it, including orders from express or direct checkout links that skip the cart.
  • The shopper is already in "fill in details" mode, so an extra field feels natural.
  • Data captured at checkout attaches directly to the order, which keeps fulfillment simple.

The tradeoff is friction. Every field you add is one more thing between the shopper and the Pay button. That is why the rest of this guide leans hard on asking only for what you need.

Common use cases

Use caseTypical fieldRequired?
Gift ordersGift message, "this is a gift" checkboxOptional
Delivery instructionsGate code, leave-at-door noteOptional
B2B ordersCompany name, VAT or tax ID, PO numberOften required for B2B
Scheduled deliveryPreferred delivery dateRequired for perishable or event orders
PersonalizationEngraving text, name on itemRequired for that product
Marketing attribution"How did you hear about us?"Optional

If you sell to EU businesses, a tax ID field ties directly into how you handle VAT. Our EU VAT and IOSS guide explains why that number matters.

Where the data is stored

This is the part that decides how useful your field will be later. Checkout UI extensions can write data in a few places, and each behaves differently.

StorageWhat it isGood for
Order noteThe single free-text note on the orderOne simple message, such as a delivery note
Cart / order attributesKey-value pairs carried from the cart onto the orderGift messages, delivery dates, PO numbers
MetafieldsStructured custom data with a defined typeData you want to query, filter, or use in other apps and automations

A few practical points:

  • The order note is a single field. If two apps or two fields both write to it, they can overwrite each other. Use it for one purpose only.
  • Attributes show up on the order in the admin and can be included in order notifications and packing slips with template edits. They are the most common choice for simple fields.
  • Metafields are the better choice when the data has a clear type (a date, a number, a tax ID) and needs to be used downstream, for example by a fulfillment app or a Shopify Flow automation.

Pick the storage based on who needs to read the data and how, not on what is easiest to set up.

Required vs optional fields

Make a field required only if you genuinely cannot fulfill the order without it.

  • Required: engraving text for an engraved product, a delivery date for a perishable order, a tax ID if you only sell B2B with reverse charge.
  • Optional: gift message, delivery instructions, attribution survey.

Required fields block checkout until they are filled, so they need validation that is clear and forgiving. Checkout UI extensions can block progress when a required field is empty or invalid, and show an error on the field itself. If you also need a rule that can never be bypassed, enforce it server-side with a cart and checkout validation Shopify Function as well.

A useful pattern is the conditional field: show the gift message box only after the shopper ticks "This is a gift", or show the engraving field only when the cart contains an engravable product. This keeps the form short for everyone else.

Validation that does not annoy people

  • Set length limits that match reality. If your card printer fits 200 characters, limit the gift message to 200 and show a counter.
  • Validate format, not truth. You can check that a tax ID matches the expected pattern for a country; you usually cannot confirm it is real at checkout.
  • Write errors that tell the shopper what to do: "Please choose a delivery date at least two days from today" beats "Invalid date".
  • Do not block on optional fields. If an optional field is malformed, accept it or quietly trim it rather than stopping the purchase.

Step-by-step setup

  1. Write down the exact information you need and who will use it (packing team, courier, accounting).
  2. Decide required or optional, and whether it should be conditional.
  3. Choose storage: order note, attribute, or metafield, based on how the data will be read.
  4. Choose placement. On Shopify Plus, fields can go in the Information, Shipping or Payment steps. On other plans, checkout UI extensions inside checkout steps are not available, so consider the cart page, or the Thank you and Order status pages for post-purchase questions like surveys.
  5. Configure the field with an app or a custom checkout UI extension.
  6. Update your packing slip, order notification and any fulfillment integration so the data actually reaches the people who need it.
  7. Place a test order on mobile and desktop and confirm the value appears where expected.

Making the data useful for fulfillment

A field that nobody reads is worse than no field, because the customer thinks they have told you something.

  • Gift messages should print on the packing slip or gift card, not sit unseen in the admin.
  • Delivery instructions need to reach the courier, which may require mapping the attribute into your shipping app.
  • Delivery dates should drive picking order. A metafield or attribute can be used in Shopify Flow to tag orders by date.
  • PO numbers should land on the invoice.

Privacy and GDPR

Every field you add is personal data you are now responsible for. Under GDPR and similar laws, data minimization is a core principle.

  • Do not collect what you do not need. A birthday field "for marketing" on every order is hard to justify.
  • Say why you ask if it is not obvious. "We use your phone number only for courier delivery updates."
  • Avoid sensitive data. Do not ask for health information, ID numbers, or anything similar unless you have a clear legal reason and appropriate safeguards.
  • Make sure custom data is covered by your privacy policy and your data deletion process.

Every field adds friction, so after launching one, watch your step-level drop-off. The checkout funnel analytics guide shows how to spot whether a new field is costing you conversions.

Doing it with Blockly Checkout Customizer

Blockly Checkout Customizer, launching soon on the Shopify App Store, includes custom field blocks for text, checkboxes, dropdowns and dates. You choose whether each field is required, set length and format rules, show it only for certain products or markets, and pick where the value is saved. It is designed to keep the form short by making conditional fields the default rather than the exception.

The takeaway

Custom fields are simple to add and easy to get wrong. Ask only for what you need, store it where your team can actually use it, validate kindly, and follow the data all the way to the packing table. A well-placed gift message field can make an order memorable; an unread one makes a customer feel ignored.

Up nextThank You and Order Status Page Upsells on Shopify

Related articles

More tutorial articles →
Free forever plan

Ready to protect
your store?

Join 5,000+ Shopify merchants. Install in 30 seconds and block your first bad actor today.

  • No credit card
  • 5-minute setup
  • Cancel anytime