Summarize
this blog
Add as a preferred
source on Google

How to Add a Custom Text Field on a Shopify Product Page: 3 Ways, With and Without an App

How to Add a Custom Text Field on a Shopify Product Page: 3 Ways, With and Without an App

how to add a custom text field on a Shopify product page in 2026

Shopify has no native setting for a custom text field, so you add one yourself. Here is how to add a custom text field on a Shopify product page and how to check it works before you sell. The box your buyer types in is a line item property. Shopify carries that note with the item into your cart, your checkout, and your order. The fastest route takes four steps: back up your theme, open the theme editor, add the right block for your theme, then test it in your cart. You do not have to open a theme file unless you want to. This guide sticks to the setups that survive a theme update. Pick the route that fits your store.


Key Takeaways

Here is the short version before the steps:

  • Shopify has no native setting for a custom text field. You add one as a line item property.
  • Fastest way: add a block in the theme editor. Horizon themes have a Special instructions block ready to go, and Dawn takes a few pasted lines in a Custom Liquid block.
  • The input your buyer types into must sit inside the product form.
  • Test before you sell: add to cart and check the cart page. That costs nothing and catches most problems.
  • An app earns its cost when you need live preview, conditional fields, extra charges per option, or more personalization data.

A Shopify Custom Text Field Is a Line Item Property

The text box you are adding is a note your buyer types while ordering, and it rides along with that item into your order. Shopify calls it a line item property. The mechanism is one piece of code: an input named properties[Custom Text]. That name is the whole trick. Shopify captures any input inside the product form whose name starts with properties. Shopify carries that value into the cart, the cart drawer, the checkout, your admin order page, and the confirmation email.

Sellers confuse two other Shopify features with this one, and neither will do the job.

Feature

Who fills it in

Use it when

Line item property

Your customer, while ordering

You want a name, a monogram, a gift note, or an engraving

Metafield

You, in your admin

You want to display fixed information like material or care instructions

Variant

You, in advance

You want fixed choices your buyer picks from, like size or color

How to Add a Custom Text Field on a Shopify Product Page: Theme Editor, Theme Code, or an App?

Most Shopify stores use the theme editor for fast creation, and the field is live in about ten minutes. On a Horizon theme you add a Special instructions block and fill in its settings. On Dawn and other Online Store 2.0 themes you add a Custom Liquid block and paste a short input. Edit the theme code only on a vintage theme, or when the field has to sit somewhere unusual. Choose an app when you need live preview, conditional fields, many custom fields, or other needs. Pick once, then read only that section.

Method

Do you touch code?

What you need first

Best for

  1. Theme editor block (Special instructions or custom liquid block)

On Horizon, no. On Dawn, you paste a few lines. Either way you never open a theme file.

A Horizon or Online Store 2.0 theme

Almost everyone

  1. Theme code

Yes, you edit a theme file.

Comfort with Liquid, or a developer

Vintage themes, unusual placement

  1. An app

No.

A budget, and a reason beyond one text box

Live preview, conditional fields, print-on-demand, etc.

Method 1: How to Add a Custom Text Field on a Shopify Product Page in the Theme Editor

The theme editor is the quickest way to add a text field to a Shopify product page. Which block you use depends on your theme. Shopify's newer Horizon themes ship a block built for this job, while Dawn and other Online Store 2.0 themes take a short snippet in a Custom Liquid block. The first three steps are the same either way.

Step 0: Back up your theme.

Go to Online Store > Themes, open the actions menu on your theme, and click Duplicate. Shopify recommends this before any customization, and Shopify names the copy Copy of plus your theme name. If anything goes wrong, publish the copy and you are back where you started.

Step 1: Open the theme editor.

Go to Online Store > Themes, then click Edit theme.

Step 2: Switch to a product page.

At the top of the editor, there is a dropdown that reads Home page. Click it, then choose Products > Default product. The editor now shows a real product page.

Default product template selected in the Shopify theme editor to add a custom text box

Step 3: Open the block list and see which route you are on.

In the left sidebar, under Product information, click Add block. If the list contains a block called Special instructions, take route A. If it does not, take route B.

Route A: Add the Special Instructions Block on a Horizon Theme

Shopify's Horizon themes ship a block built for exactly this job, so you paste no code at all. Choose Special instructions. The settings panel opens in the order below, and the ones that matter most sit under the Buyer input group:

  • Heading is the line above the box, and it arrives reading "Customize your product". Description sits under it and is optional.

  • Property name is the label that shows in your cart, your checkout, and your order details. It cannot be blank, and each block needs its own.

  • Input type switches the field between Text and Checkbox.

  • Max characters caps the text at what fits your print area.

  • Input required to add item to cart stops a buyer checking out with the field empty.

  • Placeholder text is the grey hint inside the box, and it arrives reading "Enter your special instructions".

Drag the block above Buy buttons, click Save, then run the test below.

Special instructions block settings for a Shopify custom text field on a Horizon theme

Route B: Add a Custom Liquid Block on Dawn and Other Online Store 2.0 Themes

Choose Custom Liquid from the Add block list, then paste this into the box:

For a longer message, such as a gift note, swap the input for a text area:

Change only two things: the label your customer reads, and the words inside the square brackets. Never change the word properties, and never delete the square brackets. Changing properties[Custom Text] to properties[Engraving] is correct. Changing it to engraving sends nothing to your order.

Then click and hold the drag handle on your new block, move it above Buy buttons, and click Save.

Test the Field Without Placing an Order

Both routes end the same way. Open the product on your live store, type something in the box, and click Add to cart. Go to the cart page. You should see your label and the text you typed underneath the product name. That is the whole test, and it costs nothing.

Shopify custom text box showing in the cart as a line item property

If You See Neither Block

Your Add block list comes from your theme, not from Shopify. Special instructions ships with Horizon themes and custom_liquid ships with Dawn, but another theme can leave both out. If neither is in your list, your theme is almost certainly a vintage theme that does not support blocks at all. Skip to Method 2, or ask whoever supports your theme to add a Custom Liquid block for you.

If You Only Want the Field on Some Products

Limiting the field to specific products is the step most guides leave out. The Default product template applies to every product using it. Without a second template, your engraving box appears on your mugs, your stickers, and everything else.

To limit it, create a second product template and assign it only where you need it.

  1. In the theme editor, open the Home page dropdown, choose Products, then click Create template.

  2. Name it something clear like personalized, pick your default product template as the base, and click Create template.

  3. Add your block, Special instructions or Custom Liquid, to this new template instead of the default one.

  4. Go to Products in your admin, open a product, find the Theme template section, choose personalized, and click Save.

Theme template setting that controls where the Shopify custom text field appears

To do this for many products at once, select them in your product list and click Bulk edit. Click Columns, turn on Template, then set them all in one pass.

Method 2: Edit the Theme Code Yourself, or Let AI Do It

Skip this section if you are not comfortable editing code. Method 1 gets the same result without it.

Where the Product Form Actually Lives in Your Theme

Your input must be within the product form and above the Add to Cart button. Outside the form, Shopify never submits that input, and the value never reaches your order.

Most guides on how to add a custom field in a Shopify product page send you to sections/main-product.liquid. On the current Dawn, that is the wrong file, and older versions of this guide sent you there too.

The Add to Cart form lives in snippets/buy-buttons.liquid, and it opens with {%- form 'product', product, id: product_form_id -%}. The {%- when 'buy_buttons' -%} block inside main-product.liquid only renders that snippet, so no form sits there to paste into.

The wrong file costs you silently. main-product.liquid does contain one form 'product', but that one is the installment payment form. An input in that form submits with payment terms rather than with the product, so nothing reaches your order. On older vintage themes, look in product-template.liquid instead.

Once you have the right file, paste the same markup from Method 1 inside the form, just above the submit button, and save.

Let AI Edit the Theme for You: Claude + Shopify CLI

Claude Code is a coding assistant that runs in your terminal, and Shopify CLI is Shopify's own tool for working on a theme from your computer. This edit is a good one to hand over, because the file it belongs in has moved between Dawn versions. An agent reading your actual theme finds that file instead of guessing at it.

Shopify CLI and Claude Code both need setting up first, and Claude Code needs a paid Claude plan. Once they are running, this is the prompt to give the agent. Copy it as it is, and change only the field name.

Method 3: Add a Custom Text Field With an App

A Shopify product customization app replaces the markup from Method 1 with a managed interface. It incurs that cost for live preview, conditional fields, extra charges per option, and more custom data.

When an App Is Worth Paying For

An app is not worth it for a single free text box. Method 1 already does that in ten minutes. An app becomes worth paying for when you need something the markup above cannot give you.

  • Conditional logic shows a field only when the buyer picks a certain option.

  • Price rules charge extra for what the customer types.

  • Apps also cover image and file uploads, a live preview that redraws as the customer types, and several fields on one product.

  • An app also lets staff who do not code manage the fields themselves.

  • Print-on-demand sellers need one more thing: personalized data that reaches the print provider in a usable format. That tooling is where the spending goes.

Four Apps That Add Custom Text Fields

All four are on the Shopify App Store, and all four go well beyond a plain input.

App

Beyond a text box

Live preview

Sends data to a print provider

Cost

Teeinblue Product Personalizer

Photo upload with AI effect, clipart, maps, vectors, moon phases, songs, QR codes, etcConditional logic, dynamic pricing

Yes

Yes

14-day trial, then $49 a month

Qikify Custom Product Options

20+ option types, swatches, conditional logic, dynamic pricing

No

No

Free plan, 7-day trial

Hulk Product Options

Swatches, file uploads, conditional logic, bulk option sets

No

No

Free plan, 7-day trial

Zepto Product Personalizer

Image upload, swatches, monograms, conditional logic, dynamic pricing

Yes

No

Free plan, 15-day trial

If you sell plain products and only need richer form fields, Qikify and Hulk cover that ground at a lower entry price. If your buyer is designing the product itself, you want live preview, and that narrows the field to Teeinblue and Zepto. A wider list of the best Shopify product customizer apps covers the ones built for other jobs.

The column that decides it for print-on-demand sellers is "Sends data to a print provider". A buyer's engraving text is only useful if it reaches production without someone retyping it. Teeinblue integrates directly by API with Printify, Printful, merchOne, ShineOn, and Gelato. It then generates the production file itself, so the text your customer typed becomes the artwork the printer makes.

How to Add a Custom Text Box With Teeinblue

Install Teeinblue Product Personalizer from the Shopify App Store, then work through the app portal.

  1. Create an artwork. Go to the Artworks page and click + New artwork. An artwork is the design you build inside Teeinblue, and it opens in the Artwork editor.

  2. Set the size. Choose Custom size, or Import print area size to match what your fulfiller requires.

  3. Add a text layer. Click the Text button.

  4. Turn personalization on. In the layer settings, switch on Allow personalized. Skip this one and the field never appears on your storefront.

  5. Set up the field. Fill in the Option Title your customer reads and the Placeholder Text inside the box. Then set Input type, Input text case, and Text character limit, and switch on Mark as required if the order cannot ship without it.

  6. Save the artwork.

Connect the artwork to a Shopify product or a product, and the text box goes live. Switch on the font and color options, and buyers can change both. The product image updates in real time as they type, and live preview cuts the misunderstandings that lead to refunds on personalized orders.

custom text field on a Shopify product page with live preview in Teeinblue

Teeinblue also runs on Etsy, WooCommerce, and other website builders, so the same setup follows you if you sell in more than one place.

A Live Text Field Is Not a Finished One: 6 Checks Before You Sell

A field that appears on your product page can still lose the data. 6 checks catch that before a real customer does: confirm the text reaches your order, check your theme displays it, require it and cap it, hide internal fields, match each symptom to its cause, and re-test after every theme update.

  • Check the text reaches your order. Add to cart and open the cart page first, that costs nothing and catches most problems. To see the text on the order and in the confirmation email, place a test order through Shopify's test payment gateway.

  • Confirm your theme displays what Shopify stored. Shopify stores the text either way, and your theme decides whether anyone sees it. Dawn and current Online Store 2.0 themes show line item properties out of the box. Older and heavily customized themes may not, and that is a question for whoever supports your theme rather than for an app.

  • Make the field required, and cap how much they can type. On a Horizon block, use the Input required to add item to cart and Max characters settings. On pasted markup, add required and maxlength yourself: <input id="custom-text" type="text" name="properties[Custom Text]" required maxlength="30">. Shopify does not reject an empty property, so this validation is yours.

  • Hide the fields buyers should not see. Put an underscore in front of the name, as in properties[_internal], and the value stays on your admin order while disappearing from the cart and the checkout. This is how you pass an internal SKU flag or a fulfillment note without confusing the customer at checkout.

  • When nothing shows up, match the symptom. If the box does not appear, the block sits on a template this product does not use. If the box appears but the cart shows nothing, the field sits outside the product form. If two boxes appear, an app and your theme code are both adding one; remove whichever you added second.

  • Watch speed and the next theme update. Every app adds scripts to your product page, and a theme update can overwrite a theme file you edited by hand. Keep the backup copy you made in Step 0, and re-test the field after any theme update or app install, because this is exactly when a working field quietly stops working.

FAQs About Shopify Custom Text Fields

1 - Can I add a custom text field on Shopify for free?

Yes. You add a block in your theme editor: Special instructions on a Horizon theme, or Custom Liquid with a short pasted input on Dawn. You only pay when you need extras that Shopify does not provide natively, such as live preview, conditional fields, or extra charges tied to what the customer types.

2 - How do I add a comment box to a Shopify product page?

A comment box is the same line item property with a longer input. Use a textarea instead of a text input, name it something like properties[Order Notes], and place it in the same Custom Liquid block. The customer's comment then appears in your cart, your checkout, and your order, exactly like a single line of engraving would.

3 - How do I add a personalization option on Shopify?

For text, use a Special instructions block on Horizon or a Custom Liquid block on Dawn. For anything richer, such as photo uploads, clipart, or a live preview of the finished product, you need a product personalizer app. Shopify's native product options handle fixed choices like size and color, but they cannot collect what a customer types or uploads at the moment of purchase.

4 - Can a custom text field change the product price?

Not on its own. A line item property records what the customer typed, and it does not touch price or inventory. Charging extra for an engraving needs either an app with price rules, or a Shopify Function that adjusts the cart.

5 - Does the custom text show on the packing slip and the order email?

Line item properties appear on your admin order page and usually flow into order confirmation emails and packing slips automatically. Both are templates, though, so a heavily customized store may not show them. Place one test order and check the email and the packing slip yourself before you take real orders.

6 - Do custom text fields work on a vintage theme?

Yes, but not through the theme editor. Vintage themes do not support blocks, so the Custom Liquid option will not appear in your Add block list. Use Method 2 instead and add the input directly to product-template.liquid, inside the product form and above the Add to Cart button.

That is how to add a custom text field on a Shopify product page, whether you paste a block, edit the code, or install an app. Whichever route you take, add to cart and check that the text arrives before you sell anything. If you get stuck, or you want to see how other sellers set up their personalized products, come and ask in the Teeinblue Global Community for Product Personalization.

More About Product Customization

An Ultimate Guide to Creating Customizable Products in Shopify

How to Add Upload Photo Option in Shopify: a Step-by-step Guide

Product Personalizer for Text Customization

What's the Best Shopify Custom Clothing App to Use?

Best Shopify Product Customizer: A Comprehensive List

Newsletters

Subscribe to get exclusive POD tips, trends, and insights!

Please enter a valid email address
Thank you for your subscription. Stay tuned for our email!