Store Owner Tips

Subscribe to our newsletter

Weekly ecommerce tips, deals & news.

Thank You, we'll be in touch soon.

Latest News

WooCommerce Product Add-Ons: How To Get Custom Details Right The First Time

WooCommerce Product Add-Ons: How To Get Custom Details Right The First Time

Picture three emails after three orders. One asks, “Can you engrave Mom on the back?” Another says, “I forgot to say it’s for the 14th.” A third adds, “The card should say Happy Birthday Sam.”

Each one arrived after checkout. Each one means opening the order, copying the text onto a sticky note and hoping it reaches the bench.

The fix is to ask on the product page. Offer only the options you’ll act on, and charge for the ones that cost you time or materials. Add them as WooCommerce product add-ons. Then place a test order and check the answer shows everywhere it’s needed.

Asking afterward costs you twice. Orders wait while you chase the detail, and hand-copied text is where misspelled names and missed dates creep in. This guide covers which options to offer, what to charge and how to word each field. Then it shows how to check the answer reaches the packing bench.

Jump to:


Variation Or Add-On? A One-Paragraph Test

If the choice needs its own stock count or SKU, it’s a variation. If it’s free text, a date or an optional extra, it belongs in WooCommerce product add-ons. A ready-made T-shirt in three sizes is a variable product, because you hold stock in each size. Engraving isn’t stock you count, and WooCommerce’s add-on documentation confirms add-ons get no SKU.


Decide Which Options To Offer

Offer an option as one of your WooCommerce product add-ons only if it passes three checks. You’ll act on it, it changes your cost or lead time, and you can check it before production.

Most requests fall into four types:

  • Messages: Card text or a note for the recipient, alongside other gift options.
  • Personalization: A name or initials to engrave, embroider or print. Offer it only where you know what fits.
  • Size or measurement: Made-to-measure dimensions for items you make per order.
  • Dates: A delivery date or the date of an event. Offer it only if you can schedule dispatch to hit it.

Keep the list short, since every extra question is one more place a shopper can stall. Our guide to product page optimization covers the rest of the page around those fields.

Here’s how each option breaks down (a general guide, not data from a specific store):

OptionField typeValidationPrice model (depending on the plugin)Must appear on
Gift messageMulti-line textCharacter limit sized to the cardFree or flat feePacking slip, admin order
Engraving or nameSingle-line text, plus a font dropdownLimit set to what fits; no emojiFlat fee or per characterAdmin order, packing slip or production list, confirmation email
Made-to-measure sizeNumber fields or dropdownMinimum and maximum per field; units statedFlat fee or percentageAdmin order, production list, confirmation email
Delivery or event dateDate pickerBlock lead-time and closed days, if your plugin allows itFree or rush feeConfirmation email, admin order, packing slip
Gift wrapCheckboxNone neededFlat feePacking slip

Pricing Add-Ons Without Guesswork

Charge for WooCommerce product add-ons that cost you time or materials, and think about giving low-effort ones away. Engraving, gift wrap and rush dispatch take labour or stock, so they carry a price. A free gift message can be the reason someone orders from you.

Depending on the plugin, you’ll usually see these price types:

  • Flat fee: One charge per line, whatever the quantity. Suits gift wrap.
  • Percentage of product price: Scales with the item. Suits made-to-measure work.
  • Quantity-based: Multiplied by the quantity ordered. Suits engraving every item in a set.
  • Per character: Offered by some plugins. Fits long engraving text, though totals are harder to predict.

Show the price change on the product page, before the shopper adds to cart. A total that jumps at checkout invites an abandoned cart.

An add-on customises the product the shopper already chose, which makes it a different job from upsells and cross-sells.

Personalized items usually can’t be resold, so add a returns exception before the first engraved order ships. Check it against your local consumer rules.


Write Fields Shoppers Fill In Correctly

A field in your WooCommerce product add-ons gets usable answers when it does three things. Its label asks a question, its placeholder shows an example, and its limits match what you can make.

  • Label as a question: “What name should we engrave?” gets better answers than “Engraving”.
  • Example in the placeholder: Text like “e.g. Sam & Alex” shows the format you expect.
  • Character limit that fits: Cap the field at what physically fits on the item, and say so under the field.
  • Required only when needed: Make a field required only if you can’t make the order without it.
  • Date limits: Where your plugin allows it, block dates inside your lead time and the days you’re closed.
  • Dropdowns for sizes: A list of valid sizes beats a free-text box where someone types “medium-ish”.

If shoppers save personalized items for later, SaveTo Wishlist’s Flexible Product Fields integration keeps their values with each wishlist item.

WP Desk Flexible Product Fields PRO page for selling engravings, gift wrapping and gift messages
Flexible Product Fields adds engraving, gift wrap and gift message fields to WooCommerce products (click to zoom).
SaveTo Wishlist homepage for the wishlist plugin with multi wishlist support, social sharing and admin controls
SaveTo Wishlist keeps Flexible Product Fields values with each wishlist item for logged-in shoppers (click to zoom).

🔍️ What we’ve seen: A common one is an engraving field with no character limit. A shopper types a full sentence for a ring band that fits fifteen characters. Nobody notices until the ring is on the bench. Then comes an email, a wait and a late dispatch.


Adding The Fields: Where A Plugin Comes In

Core WooCommerce gives you attributes, variations and one order notes box at checkout, but no per-product fields for shoppers.

Order notes don’t work well as a workaround. They’re optional and unstructured, and they belong to the whole order. With three engraved items in a cart, you’re left guessing which name goes where.

A plugin for WooCommerce product add-ons puts fields on the product page and saves each answer with its order line. Field setups usually don’t carry over from one plugin to another, so it pays to choose once. Before you pick, ask three questions:

  1. Can one field group apply to a whole category, so you don’t rebuild it product by product?
  2. Can each option carry its own price?
  3. Does the shopper’s answer show in the order emails?

Building The Fields In Product Add-Ons

WooCommerce’s own Product Add-Ons extension makes a handy reference, because its documentation names every setting. Other plugins use different labels, but you’ll face the same choices.

Product Add-Ons for WooCommerce extension page offering gift wrapping, special messages and other product options
WooCommerce’s own Product Add-Ons extension is the reference for the settings named in this section (click to zoom).

Global group or one product

Fields you reuse across a range belong in a global group. Go to Products > Add-Ons, select Create your first add-on, then use Product Categories to limit the group. Leave categories empty and every product in the store gets the group.

For a one-off, edit the product and open the Product data > Add-ons tab. To keep global groups off that product, untick Use Global Add-Ons?

Display Order sets where a group sits on the page. Lower numbers show higher, and per-product add-ons sit at 10.

Matching each option to a field type

  • Gift message: Long Text, with Limit character length switched on.
  • Engraving or name: Short Text, with the character limit set to what fits on the item.
  • Font or size choice: Multiple Choice, shown as a dropdown, radio buttons or images.
  • Gift wrap: Checkboxes, each with its own price.
  • Delivery or event date: Date Picker.
  • A photo or logo to print: File Upload. The file then shows under the line item and in both order emails.

Two limits are worth knowing before you build. On a variable product, every variation inherits the same add-ons, and you can’t set different ones per variation. The Date Picker’s documented settings also include nothing for blocking dates. If lead times matter, check that calendar in your test order before you promise a date.

To reuse a finished set on another product, select Export, which copies the add-ons to your clipboard. Then select Import on the other product and paste. CSV import isn’t supported, so this is the way to copy them.


Check Every Place The Choice Shows Up

Place one test order for each type of WooCommerce product add-on and follow it from cart to packing bench.

Check each of these:

  • Cart line: The option and its price sit under the right product.
  • Checkout review: The order total includes the add-on price.
  • Order confirmation email: The shopper sees what they typed, spelled as they typed it. Check how your WooCommerce emails look with the extra lines.
  • Admin order screen: Your team sees the answer on the line item, not buried in a note.
  • My Account order view: The shopper can recheck their entry.
  • Packing slip or invoice: Whoever packs the order sees it without opening the admin. That matters at every step of the fulfillment run from order to doorstep.

Watch the price display closely. By default, WooCommerce’s own Product Add-Ons shows only flat-fee prices beside the option name in the cart and checkout. Other price types need extra setup to show, according to its documentation. Your plugin may behave differently, and the test order shows you how.

Change requests will still arrive after purchase. Set a cut-off before production and edit the order line itself, so the slip prints the new text. A change that never reaches the bench is a textbook fulfillment error.

If your workshop or packer works from a spreadsheet, give each option value its own column, not one crowded cell. Visser Labs’ WooCommerce export plugin, Store Exporter Deluxe, can help here. It lists native export support for several add-ons plugins, including WooCommerce’s own Product Add-Ons.

Visser Labs Store Exporter Deluxe page for exporting store data with automated exports to FTP, SFTP or cloud services
Store Exporter Deluxe exports WooCommerce order data, with native support for several add-ons plugins (click to zoom).

When Add-Ons Won’t Save Or Upload

WooCommerce’s Product Add-Ons documentation gives fixes for three common problems.

  • Fields disappear when you save: PHP’s max_input_vars setting caps how many form fields save at once. A product with many add-ons can hit it. Check PHP max input vars under WooCommerce > System Status, then ask your host to raise it.
  • The upload button doesn’t work: The documentation links this to the length of the field name. Shorten the name, or ask your host to raise post.max_name_length.
  • One-per-order product added twice: By default, a Sold individually product can be added again with different add-ons. The documentation includes a code snippet that blocks the second add, which your developer can drop in.

Customer uploads need a privacy check too. Product Add-Ons stores them in randomized folders under wp-content/uploads/product_addons_uploads/. Some hosts switch on directory listing, which lets anyone browse those folders. Ask your host to turn it off before you start accepting photos.


Frequently Asked Questions

Can I add a custom text field to a WooCommerce product without a plugin?

Not through the product settings. Core WooCommerce offers attributes, variations and a single order notes box at checkout. Per-product fields that save with each order line need an add-ons plugin or custom code.

Should I charge for a gift message?

Usually not. A gift message costs you a card and a minute, and offering it free gives shoppers a reason to buy.

How do I let customers choose a delivery date?

Add a date field to the product. If your plugin can block dates, block your lead time and the days you don’t dispatch. If it can’t, state your earliest dispatch date under the field.

Do product add-ons have their own stock?

No. WooCommerce’s Product Add-Ons documentation says add-ons aren’t treated as products and have no SKU for inventory tracking. If an option needs its own stock count, set it up as a variation.

Can a customer change their personalization after ordering?

Yes, if you allow it before production starts. Edit the order line directly so the change reaches the packing slip, and state your cut-off on the product page.


Getting WooCommerce Product Add-Ons Right Before The First Order

The plugin is the quick part. What saves you emails is knowing why each field exists, what it costs, and who reads the answer. Get that right and WooCommerce product add-ons stop being extra admin.

Start with your option list today. Then place a test order for each WooCommerce product add-on before the first real order arrives.

author avatar
Michael Logarta

Share article

Subscribe to our newsletter

Weekly ecommerce tips, deals & news.

Nice – You're in!

Copyright © StoreOwnerTips.com. All Rights Reserved.