> For the complete documentation index, see [llms.txt](https://docs.shoplift.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.shoplift.ai/test/price-testing/overview.md).

# Overview

### Requirements for price testing

{% hint style="danger" %}
**Confirm your store meets every requirement below before you set up a price test.** If it doesn't, your test may not run correctly.
{% endhint %}

<table><thead><tr><th width="329.30859375">Requirement</th><th>Details</th></tr></thead><tbody><tr><td><strong>Active Advanced or Pro plan</strong></td><td>Legacy Advanced and Pro plans aren't supported. Learn more.</td></tr><tr><td><strong>Single-currency store</strong></td><td>Multi-currency setups (Shopify Markets, Global-E, and similar) aren't supported.</td></tr><tr><td><strong>No subscriptions on tested products</strong></td><td><mark style="background-color:$success;"><strong>Exception</strong>:</mark> subscription products can be tested through Recharge. See the note below and link <a href="/pages/SaXCiDvtGUiaf8WMIb1C">here</a>.</td></tr><tr><td><strong>No unsupported page builders on tested products</strong></td><td>These page builders aren't supported on products you test: Replo, Pagedeck, PageFly, Funnelish, WebFlow, Fermat.</td></tr><tr><td><strong>Bundles exist as distinct Shopify products</strong></td><td>Bundles created with JavaScript or apps aren't supported yet.</td></tr></tbody></table>

{% hint style="info" %}
**Testing prices on subscription products?** Shoplift supports subscription price testing through Recharge. If your store uses Recharge 2.0 with Shopify Checkout Integration, you can test the price on subscription products. When a test runs, the one-time price and the subscription price change together while the subscription discount percentage stays the same. [See Subscription price testing to set it up.](/test/price-testing/subscription-price-testing.md)
{% endhint %}

{% hint style="warning" %}
Please note that workarounds for the above requirements may be achievable with our [exposed test configs](https://docs.shoplift.ai/test/price-testing/setup#custom-logic-capabilities). We recommend consulting with a theme developer before deciding to price test with Shoplift.&#x20;

If your store doesn't meet the above requirements, but you're interested in price testing, please let us know which capabilities we should prioritize for our roadmap [here](https://form.typeform.com/to/HtBQjDzU?typeform-source=coda.io#store_id=xxxxx).
{% endhint %}

### How it works

Shoplift's price testing uses a sophisticated architecture designed for reliability and compatibility across your entire Shopify ecosystem.

#### 1. Theme setup

Because every Shopify theme displays prices differently across product pages, collections, search results, and quick views, you'll need to add special data attributes to mark where prices appear:

* `data-sl-attribute-p` identifies regular prices
* `data-sl-attribute-cap` identifies compare-at prices
* `data-sl-attribute-discount` identifies savings price elements (either a value or percentage)

You will also need to add a snippet to all product forms, which will send price test data to the cart.

This **one-time setup** ensures Shoplift can find and update prices everywhere they're displayed in your unique theme. For instructions on setting up price testing for your theme, read [Configure Your Theme](/test/price-testing/setup.md).

{% hint style="info" %}
Have BNPL or installment messaging apps like Shop Pay, Afterpay, or Klarna? Our script will automatically identify and adjust these price displays for you.
{% endhint %}

#### 2. Highest price default

When you launch a price test, if the prices you are testing are higher than the original price of your products, Shoplift will automatically update your product prices in the Shopify Admin to the higher price in your test. For example, if you are testing Original (A) = $50 vs. Variant (B) = $100, we will update the product price in Shopify to be $100.&#x20;

This approach ensures consistency with external channels while price tests are conducted. Google Shopping, Facebook, and other channels that pull from Shopify's catalog will show the highest price. so your shoppers never encounter a higher price at checkout than what was advertised.

{% hint style="info" %}
**What this means for your channels:** Your product feeds will temporarily show the higher test price during the experiment. If you have significant traffic from external channels where price sensitivity is critical, consider:

* Running tests on products with lower external channel exposure
* Testing price decreases instead of increases
* Temporarily excluding tested products from external channels while the price test is running

This methodology is an industry requirement for price testing platforms and ensures compliance with advertising standards while protecting your conversion rates.
{% endhint %}

#### 3. Dynamic price adjustment

When a visitor lands on your site, Shoplift adjusts prices in real-time depending on a visitor's test group assignment:

* Frontend JavaScript instantly updates all marked prices when pages load based on the visitor's test group, preventing any flicker.
* Cart Transform Functions ensure the correct test price is applied during checkout for accurate billing.

#### 4. Visitor assignment & persistence

Shoplift price tests only include visitors in the test who saw a tested price in their viewport. When a website visitor scrolls a tested price into view:

1. They're randomly assigned to either the control group (original price) or variant group (test price) and displayed the corresponding price for any products in the tests
2. This assignment persists throughout their entire session
3. They'll see consistent pricing across all sessions until the test ends

Multiple price tests can be run simultaneously. Price tests are mutually exclusive, which means a visitor may only participate in one price test at a time. Visitors participating in one price test will never see price adjustments from other tests.

#### 5. Minimal impact on store operations

During a price test, only pricing-related elements change. Everything else about your store operations remains unchanged—inventory tracking continues normally, order processing workflows stay the same, discount codes and promotions work as expected, tax calculations remain accurate, and customer account functionality is unaffected.&#x20;

This design ensures price testing integrates seamlessly without disrupting your existing operations.

### Next steps

Now that you understand how price testing works, you're ready to create your first test. The next guide will walk you through the test creation process step by step. [One-Time Theme Setup](/test/price-testing/setup.md)

{% hint style="info" %}
If you need help conducting tests with Shoplift, our [support team](broken://pages/BZDv9d1utwcXtufWrzA4) is always available to assist. Reach out from within the app using the live chat widget in the bottom right of the screen, or email [help@shoplift.ai ](mailto:help@shoplift.ai)to get in touch.
{% endhint %}
