A customer buying a present wants two things done to it: wrap it, and put this message on the card. Gift wrap sold as its own product sells only to customers who go looking for it. A message typed into the cart note belongs to the whole order, not to one item. When one order holds three presents for three people, the packer has to work out which card goes with which.
In short: anything the packer does to one item (wrap it, tie a ribbon, write a card) is a custom option on that item; anything about the whole order, such as a delivery date, belongs in the cart note. This guide covers what gift stores offer and how to build it. It draws on our research into how hundreds of e-commerce gift stores configure gift wrap and messages.
Where gift wrap and messages belong
A wrapped mug and an unwrapped mug are the same stock item, so gift wrap is not a variant. Keep Shopify’s variants, up to three options and 2,048 variants per product, for what you stock and count, such as size and color.
The wrap, the ribbon, the card and the message are custom options on the item. Custom options are not built into Shopify; they come from a product options app such as OptionWise, or from custom theme code. In OptionWise, every choice is saved as a Shopify line item property, a note attached to that item in the order. It appears under the item on the order page, on the packing slip and in notification emails (where options appear). The packer reads “Gift wrap: Gift box and ribbon, Ribbon color: Sage, To: Marion, Message: …” beneath the present it belongs to.
To wrap one of two identical mugs, add them as two cart lines, one wrapped and one not. Whether prices print on the packing slip is set in Shopify’s packing slip template; a request to leave them out covers the whole order, so it belongs in the cart note.
What gift stores offer, and what they charge for
Prices are rounded, in dollars.
| The option | Usual shape | Values and limits | Typically priced? |
|---|---|---|---|
| Gift wrap or box | Yes/no radio or dropdown, sometimes swatches | No; Yes; or a named wrap or box | About half; $1–$5 |
| Ribbon color | Image swatches or dropdown | Two to about twenty colors: white, black, silver, gold, pink, navy | Usually free |
| Gift message | Short text field, sometimes a text area | Free text; some stores list set lines (Happy birthday, Make a wish) | Free |
| Handwritten note | A yes/no choice that reveals the message | Yes, add a handwritten note; No gift note | About $3 |
| Occasion | Dropdown or text | Birthday, anniversary, wedding, get well; or ages 21st to 90th | Free |
| Recipient | Short text or dropdown, nearly always required | A name; or Mom, Grandma, Dad, Grandpa, Other | Free |
| Delivery date | Text field behind a yes/no choice | Free text | Free, or about $16 for a set date |
About one gift store in eight offers a message field, and about one in ten offers a wrap choice.
How gift stores actually set up gift wrap and messages
Three real option sets, with names changed.
A gift basket. A priced wrap, a free note, and a paid delivery date with a text field behind it:
- Add gift wrap? — dropdown: No · Plain outer box with branded paper inside (+$4)
- Add a gift note? — dropdown: No · Yes
- Gift message — text area
- Custom delivery date? — dropdown, required: No · Yes (+$16), domestic only
- Delivery date — text, required
A corporate gift basket. Two required questions, each with a follow-up field:
- Would you like to include a message with your gift? — dropdown, required: No message but blank card needed · I’d like to include a gift message
- Gift message and signature — text, required
- Would you like to add a custom ribbon? — dropdown, required: Standard ribbon · Custom message on the ribbon · Custom logo on the ribbon
- Custom message — text
- Custom logo — file upload
An engraved glass. Six personalization fields (a required design from twelve image swatches, then Initial, Name, Year, Age and Date as text), then the gift layer:
- Add a matching engraved bottle opener? — radio, required: Yes, add it (+$6.95) · No thank you
- Add a handwritten gift note? — radio, required: Yes, add a handwritten note (+$2.99) · No gift note
- Gift note text — text area, required
- A checkbox with no heading: Request a digital proof? (+$2.95)
Reveal a required note text from the Yes answer, so only customers who asked for a note must fill it in.
Setting up gift options in OptionWise
Create an option set once and assign it by tag or collection.
- The wrap. In OptionWise, a buttons choice or a single checkbox with no heading (“Add gift wrap”) carries a fixed add-on price. Add-on prices are totaled live on the page and carried through the cart, checkout and order, where the wrap appears as its own line. They are per unit, so two candles on one line are charged two wraps. Show ribbons as color swatches.
- A stocked gift box. When you count your gift boxes, offer the box as an add-on product instead of a wrap value. OptionWise’s linked-product option adds the real box to the cart with its own price and stock.
- The card. A text area with a maximum length that fits your card and an example message as the placeholder. “To” and “From” as short text fields, and the occasion as a dropdown.
- Only when asked. In OptionWise, any buttons, dropdown, radio, checkbox or swatch choice can reveal other fields, on one value or any of several (conditional logic). Hidden fields are not validated and send nothing to the order.
A starter gift option set
Install OptionWise, then build this set and assign it to a tag such as giftable. Prices are examples in dollars; see currencies for shoppers elsewhere.
| Option | Type | Values | Notes |
|---|---|---|---|
| Gift wrap | Buttons, required, default No wrap | No wrap; Wrapping paper and ribbon (+$3); Gift box and ribbon (+$5) | Controls Ribbon color |
| Ribbon color | Color swatches, required, default Natural | Natural, Sage, Blush, Navy, Black, Gold | Shown for either wrap |
| Gift card | Buttons, required, default No card | No card; Printed card; Handwritten note (+$3) | Controls the four fields below |
| Occasion | Dropdown, required, default Just because | Just because, Birthday, Anniversary, Wedding, New baby, Thank you | Shown for either card; picks the card design |
| To | Text, required, max 40 characters | Shown for either card | |
| Message | Text area, required, max 200 characters | Shown for either card; placeholder with an example | |
| From | Text, optional, max 40 characters | Shown for either card |
Each field behind a choice is required only when it is shown. With no wrap and no card, the customer adds to cart in one click. With the gift box and a handwritten note, the ribbon and occasion arrive preset, To and Message are required, and a $28 candle comes to $36.
Common gift option mistakes
- Gift wrap as a separate product. Offer it on the item being bought.
- The message in the cart note. A three-present order gets one note. Take the message on each item.
- A required message on every order. Require the card choice, and reveal the message box from it.
- A message box with no limit. Messages arrive longer than the card. Set the maximum length to what fits.
- Gift options assigned product by product. The next product you publish goes live without gift wrap. Assign by tag or collection.
Options should load with the page
On a gift page, the present, its wrap and its card are one decision to the customer, so they should arrive together. Most options apps add their fields after the page has loaded, so the wrap and message choices appear a moment later and push the add-to-cart button down. OptionWise’s custom options load as part of the product page, next to the variant picker, so they appear with the price and photos and nothing moves (learn more).
Frequently asked questions
How do I offer gift wrap on a Shopify product page instead of as a separate product?
Add it as a custom option on the item. In OptionWise, a Gift wrap choice (No wrap, Wrapping paper and ribbon, Gift box and ribbon) or a single checkbox reading 'Add gift wrap' can carry a fixed add-on price. The customer sees the offer on the product they are already buying.
How do I add a gift message box with a character limit to a Shopify product?
Use a text area with a maximum length set to what fits your card, and a placeholder showing an example message. In OptionWise, text and text area fields take a minimum and maximum character count and a placeholder, and conditional logic can show the message box only when the customer chooses a card, so it is required only for customers who asked for one.
Can I hide prices on the packing slip for a gift order in Shopify?
Whether prices print on the packing slip is set in Shopify's packing slip template, which you can customize in your Shopify settings. Leaving prices out is about the whole order, so a customer can ask for it in the cart note.
Where does the gift message appear on the Shopify order so my packer sees it?
OptionWise saves every choice as a Shopify line item property, a note attached to that item in the order, so the message sits under the item on the order page, on the packing slip and in notification emails. Because it is per item, an order with three presents for three people carries three messages, each under the present it belongs to.
Can I charge for gift wrap and have it show correctly in the cart and checkout?
Yes. In OptionWise, a fixed add-on price on the wrap value shows in the page total and on the order as its own line. It is charged per unit, so two wrapped candles on one line pay for two wraps.
How do I take a gift delivery date on Shopify?
A delivery date is about the whole order, so ask for it in the cart note. If you take it on the product, put a text field behind a yes/no choice, show the format in the placeholder (such as 'June 12'), and treat the answer as a request. OptionWise text fields take a placeholder and a maximum length.
OptionWise for gift wrap and messages
OptionWise is a Shopify product options app. For gift wrap and messages, it puts the wrap, ribbon, card and message choices next to the theme’s variant picker, and saves each one to the order line for the packer. Which other gift choices to take as custom options, and which to keep as variants, is in the gift guide.
OptionWise is free for life for stores that install today. It adds a block to your theme, with no code changes.