> For the complete documentation index, see [llms.txt](https://docs.elevateab.com/elevate-helpcenter/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.elevateab.com/elevate-helpcenter/shipping-testing/hide-cart-item-properties.md).

# Hide Cart Item Properties

How to stop Elevate A/B Testing shipping experiment data from appearing in your cart, order confirmation emails, or packing slips by filtering underscore-prefixed line item properties in your theme.

***

Shipping Experiments attach properties to cart line items so the correct rates and order attribution follow the customer through checkout. This page covers how to hide those properties if your store displays them to customers.

You only need this if you can actually see experiment data in a customer-facing place. On most stores you will not.

### Why the properties appear

Shopify hides line item properties whose names begin with an underscore. That convention is what keeps this data invisible by default.

Some custom themes and some apps loop through every property without checking for the underscore, and display them regardless. When that happens, the properties can surface in the cart page, the cart drawer, order confirmation emails, or packing slips.

Hiding them is a display change. The properties keep working for tracking and attribution either way.

### Hide them on your cart page or cart drawer

1. In your Shopify admin, go to **Online Store** and then **Themes**.
2. Next to your live theme, open the **Actions** menu and select **Edit code**.
3. Open the file that renders your cart. Depending on the theme this is usually `cart.liquid` or `cart-drawer.liquid`.
4. Find the loop that runs through line item properties. It looks like this:

```liquid
{%- for property in item.properties -%}
```

5. Wrap the contents of the loop in a condition that skips any property whose name starts with an underscore:

```liquid
{%- for property in item.properties -%}
  {%- unless property.first == '_' -%}
    <!-- your existing property markup goes here -->
  {%- endunless -%}
{%- endfor -%}
```

6. Save. Reload your cart to confirm the properties are gone.

Your theme may render properties in more than one place, such as a cart page and a separate drawer. Check both.

### Hide them in order confirmation emails

1. Go to **Settings** in your Shopify admin, then **Notifications**.
2. Open the notification you want to change, such as **Order confirmation**.
3. Select **Edit code** and find the section that displays line item properties.
4. Apply the same condition used above, skipping properties whose names begin with an underscore.
5. Save.

Repeat for any other customer-facing notification that lists line item properties.

### Hide them on packing slips

1. Go to **Settings** and then **Shipping and delivery**.
2. Scroll to **Packing slips** and select **Edit template**.
3. Apply the same condition used above.
4. Save.

### Third-party apps that display properties

Upsell tools, cart customizers, and similar apps render the cart themselves, so your theme edit will not reach them. Most have a setting for hiding properties, often under an advanced or display section. If you cannot find one, the app's own documentation or support team is the route.

### They still appear in your Shopify admin

Line item properties remain visible on the order detail page in your Shopify admin. That is intended: it is how the order stays traceable to the experiment and variation that produced it. Customers do not see the admin view.

### Related

* [Shipping Testing Overview](https://docs.elevateab.com/elevate-helpcenter/test/shipping/overview): what a Shipping Experiment tests and how rates are delivered.
* [Troubleshooting Shipping Experiments](https://docs.elevateab.com/elevate-helpcenter/test/shipping/troubleshooting): rates not appearing, wrong rates showing, and messaging mismatches.
* [Help and Support](https://docs.elevateab.com/elevate-helpcenter/start/help-and-support): how to reach the team if a theme edit does not resolve it.
