Subscription Price Testing
Run price tests on your Recharge subscription products. This guide covers connecting Recharge, configuring your subscription widget, launching your first test, and troubleshooting common issues.
Before you start
Subscription price testing is built on top of Shoplift's price testing feature. Before you set it up:
Price testing must already be configured for your theme. Follow the price testing setup guide first. If price testing isn't configured for your theme, then subscription price testing won't work.
You need Recharge installed with at least one product that has active selling plans. This integration will only work for merchants using Recharge 2.0 with Shopify Checkout Integration.
Plan requirement: Subscription price testing is available on Advanced and Pro plans.
What you can test
Today, subscription price testing supports testing the price on a subscription product. When the test runs, both the one-time price and the subscription price for that product change together while the discount percentage stays the same.
For example, a $100 product at 10% subscription discount, when tested at $90, becomes a $90 one-time price with $81 subscription price (10% off).
We do not yet support testing the subscription discount percentage independently, the first-order discount, or recurring frequency.
Step 1: Connect Recharge 

You can connect Recharge from two places:
Inside a test draft: On the Test Draft page, select the option to create a Price Test. This will open a product drawer with two tabs: All and Subscription. Select the Subscription tab, and you'll see a prompt to connect Recharge.
From your settings: Go to Settings → Integrations and select Recharge.
Click Connect Recharge. Recharge will open in a new browser tab and ask you to authenticate. After you authorize the connection, you'll be returned to Shoplift and see a "Connected" indicator on the integration.
If the new browser tab doesn't open, check that pop-ups are allowed for shoplift.ai in your browser.
Step 2: Configure your subscription widget
Shoplift needs to know how to find the price, discount, and subscription elements in your Recharge widget so it can swap them during a test. You will do this once with a developer, and the configuration applies to every subscription test you run going forward.
If you use Recharge's default widget
If your store uses Recharge's standard widget without customization, Shoplift will auto-fill the configuration with these default selectors:
One-time price
rc-purchase-option__price
Subscription price
rc-purchase-option__discounted-price
Subscription discount percentage
.rc-plans-button__discount, .rc-purchase-option__badge, rc-benefits
If your widget matches these defaults, you can skip ahead to Step 3. We recommend previewing a test (Step 5) to confirm the swap works before launching.
If you use a customized widget
If you've customized your Recharge widget, you'll need to configure selectors manually. This is the part where a developer is typically needed.
Go to Settings → Integrations → Recharge.
Select your Widget design: Button, Dropdown, or List. The image preview on the right updates based on your selection so you can see which type matches your storefront.
For each field (One-time price, Subscription price, and Subscription discount percentage), paste the CSS selector(s) that point to those elements in your widget. You can add multiple selectors per field if your widget renders the same value in more than one place.
Hover over any field or the preview image to see which element in the widget that field corresponds to.
Click Save changes when you're done.
Helpful shortcuts during setup
View product page opens your store's product page so you can inspect the live widget and grab selectors.
Send to developer emails the configuration instructions plus a direct link back into this setup screen, so a developer can complete the work in their own session.
You can leave configuration partially complete and come back to it later. You won't be able to launch a subscription test until configuration is finished.
Tips for finding the right selectors
Right-click the widget element on your product page and choose Inspect to see its class names and IDs in the browser dev tools.
Recharge widget classes typically start with
rc-(for example,rc-purchase-option__price).Not every widget displays a discount percentage. If yours doesn't, you can leave that field empty.
Step 3: Create a test
On the Test Draft page, select the option to create a Price Test.
In the product picker, all your subscription products will appear alongside one-time products. Subscription products are tagged with a purchase type indicator so you can identify them.
Select the products you want to include in the test. You can mix subscription products and one-time products in the same test.
Step 4: Set test prices
For each product in the test:
Set the product price (the test price you want to evaluate).
Optional: Set the compare-at price if you want a strikethrough price displayed.
Important behavior to know:
The test price applies to both the one-time and subscription versions of the product. The subscription discount percentage on the merchant-set selling plan is preserved. For example, if your subscription is normally 10% off the one-time price, it'll still be 10% off the test price.
Existing subscribers are not affected. They continue to be billed on their original selling plans.
Step 5: Preview in browser
Before launching, always preview the test on a real product page to make sure everything looks correct.
Click Preview in browser from the test draft page. You'll see the product page with the test prices applied.
What to check
Prices inside the Recharge widget should reflect the test price.
Prices outside the Recharge widget (PDP buybox, header, comparison sections, collection pages) should also reflect the test price.
The discount percentage and any subscription badging should update if applicable.
Subscription prices will not display correctly when you add the product to cart or proceed to checkout in preview mode. This is expected. We only create the real test selling plans in Recharge when the test launches. Preview mode swaps the DOM but doesn't create real plans.
To verify your cart and checkout flow is working for price tests in general:
Add a non-subscription product to your cart while in preview.
Confirm the cart and checkout reflect the test price correctly for that one-time product.
If that works, you can be confident the cart will work correctly for subscription products once the test goes live.
Troubleshooting
Prices in the Recharge widget aren't updating in preview
Your selector configuration is incorrect or incomplete. Go back to Settings → Integrations → Recharge and verify:
You've selected the correct widget design (Button, Dropdown, or List).
The selectors for one-time price, subscription price, and discount percentage point to elements that actually exist on your live product page.
If your widget renders prices in multiple places, you've added a selector for each location.
Use View product page to open the live widget and confirm the selectors match.
Prices outside the Recharge widget aren't updating in preview
The issue is with your price testing theme setup, not the Recharge integration. Check that you've added the data attributes and input snippet specified in the price testing configuration docs. If these are missing, price testing won't work for your store.
I can add a one-time product to cart in preview, but the cart price is wrong
This points to the price testing input snippet not being correctly installed in your theme. Re-check the price testing setup guide.
I can't add a subscription product to cart correctly in preview
Expected behavior. Subscription cart and checkout flows only work after a test launches, because real Recharge selling plans are only created at launch time. Use a non-subscription product to verify your cart flow.
I see two selling plans in my Recharge dashboard during a test
This is expected. When a subscription price test launches, Shoplift creates duplicate "test" selling plans in your Recharge dashboard so the B-side variant has a real plan to route traffic to. They're prefixed so you can tell them apart from your originals.
When the test ends or is paused, the test plans are automatically archived. Your original selling plans are untouched throughout.
Can I edit my widget configuration while a test is running?
We recommend against it. Changing selectors mid-test can cause prices to stop updating correctly for B-side visitors. Wait until the test ends, then update your configuration before launching the next test.
Shoplift only supports Recharge 2.0 configurations. If you are not on Recharge 2.0, this type of price test will not work for your subscription products. Instead, you can run a price test using Price Tests with Duplicate Products.
Need help?
If you run into something this guide doesn't cover, reach out to [email protected] with your store URL, the test ID, and a description of what's not working.
Last updated
Was this helpful?