Cart note debugging - August 2026

Shopify Order Notes Not Showing: Cart, Checkout, and Notification Fixes (2026)

If Shopify order notes are not showing, the note is usually not being saved from the cart, not being submitted by the drawer, or not being printed where staff expect to see it.

~10 min read - cart notes, AJAX drawers, checkout expectations, notifications

Thunder Page Speed Optimizer will not change what customers type into a note field, but it can make the cart path more reliable by reducing unnecessary JavaScript around cart drawers, apps, and checkout buttons. Install Thunder for automated performance cleanup, then fix the cart note flow below.

Quick Fix with Thunder

Order notes are often used for gift messages, delivery instructions, personalization details, pickup notes, and wholesale handling. When they disappear, support workload goes up and fulfillment mistakes become expensive.

Thunder's features help reduce cart-page and drawer script pressure, especially when cart upsells, shipping widgets, personalization fields, and tracking apps all load together. Use it alongside the complete Shopify speed optimization guide after the note field itself is wired correctly.

Install Thunder

Enable Cart Notes in the Live Theme

Shopify's order notes help documentation says free Shopify themes can enable a text box for order notes from cart theme settings. In Online Store, Customize, open the cart page or cart drawer settings and confirm the note field is enabled on the published theme, not only a duplicate theme.

Then test the full path yourself. Add a product, enter a note, go to checkout, place a test order if possible, and inspect the order in Shopify admin. Do this once from the cart page and once from the cart drawer. These are often different forms with different JavaScript.

If checkout buttons or cart drawers are also inconsistent, use the checkout button debugging checklist and cart drawer fix guide.

Make Sure the Note Field Submits as name="note"

The Liquid field name matters. Shopify's cart notes Liquid example says to keep name="note" so cart notes submit correctly. If a theme uses order_note, cart_note, message, or a custom property name, Shopify will not store it as the order note.

{% form 'cart', cart %}
  <label for="CartNote">Special instructions</label>
  <textarea
    id="CartNote"
    name="note"
    placeholder="Delivery notes, gift message, or personalization details">{{ cart.note }}</textarea>

  <button type="submit" name="checkout">Check out</button>
{% endform %}

The field should sit inside the cart form if you rely on normal form submission. If your cart drawer has a note field outside the checkout form, JavaScript must save the note before redirecting shoppers to checkout.

Fix AJAX Cart Drawers That Skip the Note Update

A common bug: the cart drawer displays a note box, but the checkout button immediately redirects to /checkout without saving the latest note. The shopper thinks the instruction was submitted, but Shopify only has the previous cart state.

Before checkout, save the note to Shopify's cart endpoint. Debouncing the field helps, but the checkout button should also force one final save so fast typers are not punished.

async function saveCartNote(note) {
  const response = await fetch('/cart/update.js', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      Accept: 'application/json',
    },
    body: JSON.stringify({ note }),
  });

  if (!response.ok) throw new Error('Cart note was not saved');
  return response.json();
}

document.querySelector('[data-checkout-button]')?.addEventListener('click', async (event) => {
  const note = document.querySelector('[name="note"]')?.value || '';
  if (note.trim()) {
    event.preventDefault();
    await saveCartNote(note);
    window.location.href = '/checkout';
  }
});

If the drawer already has custom cart JavaScript, avoid creating duplicate checkout listeners. Search for /cart/update.js, name="note", checkout, and any cart app snippets. Old cart apps can leave code that intercepts the checkout click, similar to the issues in the app leftovers cleanup checklist.

Know Where Shopify Notes Do and Do Not Appear

Some merchants expect the note to appear as a visible checkout field. Standard order notes are collected before checkout, then stored on the cart and order. The customer may not see the same editable box inside checkout. Staff should verify the final order in Shopify admin, fulfillment views, packing slips, and notification emails.

If the note exists on the order but not in an email, the notification template is the issue. Add a conditional note block to staff-facing notifications or packing slips where appropriate. Test with a real note and a blank note so the template does not print empty labels.

{% if note != blank %}
  <p><strong>Order note:</strong> {{ note | escape }}</p>
{% endif %}

For personalized products, line item properties may be better than order notes because they stay attached to a specific item. Order notes are cart-level instructions. Use the variant selector guide if personalization depends on variant choice.

Speed Test the Cart Path After Notes Work

Order-note failures often show up with app-heavy carts: gift messages, delivery dates, subscriptions, shipping calculators, free gifts, cart upsells, discounts, and pixels. Each layer adds scripts and state updates. If the shopper clicks checkout before the note saves, the problem can look random.

Benchmark the cart with and without cart apps using Total Blocking Time diagnostics, INP debugging, and the cart-to-checkout friction checklist. For larger cleanup, compare Thunder pricing with professional Shopify speed optimization.

Use Line Item Properties When Notes Belong to One Product

Cart notes are global. They belong to the whole order, not one product. If shoppers need to enter initials for one necklace, embroidery text for one hoodie, or delivery instructions for one gift item, line item properties are usually safer. They travel with the specific product line and make fulfillment less ambiguous when the cart contains several customized items.

Use order notes for delivery details, gift messages, broad fulfillment requests, and staff-facing instructions. Use line item properties for product-specific customization. Mixing the two is one reason teams think notes disappeared: the data may be attached to a line item while staff are checking the order note field, or the reverse.

{% form 'product', product %}
  <input type="hidden" name="id" value="{{ product.selected_or_first_available_variant.id }}">
  <label for="Personalization">Personalization text</label>
  <input id="Personalization" name="properties[Personalization]" type="text">
  <button type="submit">Add to cart</button>
{% endform %}

After adding product-specific fields, test the product page, cart drawer, cart page, checkout, order admin, packing slip, and staff notification. The whole path matters because a field that appears on the storefront can still be hidden from the team that fulfills the order.

If you use both order notes and line item properties, label them clearly for staff. A vague "Notes" column in fulfillment can cause missed personalization, while a specific "Gift message" or "Engraving text" field reduces the chance that support has to contact the customer after purchase.

Manual Fix vs Thunder Fix

ProblemManual fixThunder fix
Cart note disabledEnable notes in the live theme cart settings.Not a theme-setting replacement.
Wrong field nameUse name="note" inside the cart form.Does not rewrite form markup.
Drawer skips saveSend note to /cart/update.js before checkout.Reduces script pressure around cart interactions.
Notifications hide notePrint note in staff email or packing slip template.Keeps recovered cart path faster.

FAQ

Why are Shopify order notes not showing?

Order notes usually fail because cart notes are disabled, the textarea is outside the cart form, the field is missing name="note", an AJAX cart drawer does not save the note before checkout, or the notification template does not display the note.

Do Shopify order notes appear on the checkout page?

Order notes are collected on the cart page or cart drawer. Depending on checkout configuration and theme behavior, they may not be visible to the customer during checkout, but they should appear on the order after submission.

What is the correct Shopify cart note field name?

The textarea must use name="note" inside the cart form or be saved to /cart/update.js as the note value. Without that exact field name, Shopify will not store the cart note.

Why do notes work on cart page but not cart drawer?

The drawer may render a note field but never save it before the checkout redirect. AJAX drawers need to send the note to Shopify before sending the shopper to checkout.

Can Thunder fix missing order notes?

Thunder can improve cart and checkout-path responsiveness, but it cannot restore notes if the theme form, drawer update, or notification template is configured incorrectly.

Keep cart instructions from disappearing.

Fix the note field and save path, then let Thunder reduce avoidable cart-script delay before checkout.