Built by Shadow Available for work
Getting started

Set up Second Chance Discount in under 5 minutes.

A step-by-step walkthrough — from install to your first recovered checkout. No theme code changes required.

In this guide

  1. Install the app
  2. Enable tracking
  3. Understand your dashboard
  4. Create your first rescue offer
  5. Test it on your store
  6. Set up A/B testing
  7. Choose a plan
  8. Tips and best practices
1

Install the app

Find Second Chance Discount on the Shopify App Store and click Install. Approve the required permissions — the app needs access to your checkout, discounts, and order data to function.

Install free on Shopify →

Once installed, the Onboarding Wizard walks you through everything — enable tracking, collect a baseline, and activate your first offer. You can also skip ahead and explore the app manually.

Good to know

The app works on all Shopify plans that support checkout extensibility. No theme code changes are needed — everything runs through Shopify's native checkout extensions and a lightweight web pixel.


2

Enable tracking

On the Setup page, toggle Enable tracking on. This activates the web pixel that monitors your checkout for failed discount code attempts. Then complete the three installation steps:

  1. Add the checkout block — In your theme's checkout editor, add the "Second Chance Discount offer" block near the discount code section.
  2. Enable the theme embed — Under Online Store → Customize → App embeds, enable "Second Chance Discount tracking." The Setup page includes a deep link that takes you directly there.
  3. Activate an offer — Create at least one rescue offer so the app has something to show buyers (covered in Step 4).

Once all three steps show green checkmarks, you're live. Tracking is completely free and unlimited on all plans — it doesn't affect checkout speed or buyer experience in any way.

Start here, even if you're not ready to create offers

Enable tracking first and let it run for a few days. You'll see exactly how many buyers are entering failed discount codes and how much revenue you're potentially leaving on the table — all before committing to anything.


3

Understand your dashboard

The Dashboard is your command centre. At the top, you'll see the key metrics that matter:

Second Chance Discount dashboard — KPI summary, rescue funnel, and buyer intent

The dashboard — rescued revenue, missed value, rescue rate, funnel, and buyer intent in real time.

Below the summary, you'll find detailed analytics sections:

Use the date range picker to filter by Last 7 days, Last 30 days, Since offer active, or set a custom range. If an A/B test is active, per-variant results appear directly on the dashboard.

Contextual insights

The dashboard shows contextual insight banners that highlight patterns — like rising missed checkouts, low offer visibility, or rescue rate changes compared to the previous period. These update automatically as your data grows.


4

Create your first rescue offer

Navigate to Offer Settings and click Create offer. You'll also find pre-seeded offer templates ready to use — these are created automatically when you first set up the app.

Step 1 — Basics

Give your offer a name (e.g. "10% rescue discount"), set its priority (higher priority offers are evaluated first), and make sure Offer is active is toggled on. The name is internal — buyers won't see it. You can also toggle A/B test only to restrict the offer to experiments.

Second Chance Discount offer editor — basics, discount type, and the offers list

The offer editor and offers list — name, priority, discount type, and active status.

Step 2 — Discount

Choose your discount type:

Set the value and configure combination rules (e.g. whether the rescue code can stack with existing product, order, or shipping discounts).

Step 3 — Amount & message

Set the discount amount (if applicable), then customise what the buyer sees in checkout:

You can also configure:

Step 4 — Trigger rules

Control exactly when this offer appears. Add one or more conditions and choose whether all or any must be met:

You can stack multiple conditions per offer and run multiple offers with different priorities.

Click Save offer. The app will automatically generate unique, single-use Shopify discount codes and start reserving them for qualifying checkouts.

Automatic code cleanup

Each rescue code is unique and time-limited. Expired and used codes are automatically cleaned up from your Shopify discounts — no manual housekeeping needed. Codes are created on-the-fly and reserved for the duration you configure.


5

Test it on your store

Before going live, test the full flow on your own store:

  1. Add a product to your cart and proceed to checkout.
  2. In the discount code field, enter any invalid code (e.g. TESTBADCODE) and click Apply.
  3. Shopify will reject the code. After a moment, the rescue offer should appear in the checkout.
  4. Click the rescue offer button to apply the working discount code.
  5. Complete the order to verify the full tracking pipeline.
Shopify checkout before and after — a rescue offer appears after a failed discount code

Before and after: the rescue offer appears in checkout once a discount code fails.

After completing the order, verify the full enrichment pipeline:

Testing on development stores

If you're testing on a Shopify development store, make sure checkout extensibility is enabled. Some older dev stores use the legacy checkout which doesn't support checkout UI extensions.


6

Set up A/B testing

Want to know if your rescue offer is actually increasing revenue? Run an A/B test to compare rescue performance against a control group.

Prepare your offer

First, create a rescue offer (or edit an existing one) and toggle both:

This ensures the offer won't show to normal visitors until your test is running.

Create the experiment

Navigate to A/B Testing and create a new test:

  1. Give it a name (e.g. "10% rescue vs no rescue") and optionally add a description.
  2. Set the traffic split — typically 50/50 between control and treatment.
  3. The control group sees no rescue offer (holdout).
  4. The treatment group sees your configured rescue offers.

Under Advanced settings, you can fine-tune the experiment:

Click Save and start to begin the test. Results appear on both the A/B Testing page (per-variant assigned checkouts, rescue rates, and revenue) and on the Dashboard (active test card with variant comparison).

How traffic is split

Each checkout is deterministically assigned to a variant based on the checkout token. This means the same buyer will always see the same variant during a single checkout session, ensuring clean data.


7

Choose a plan

Second Chance Discount offers four plans based on the number of rescued orders per month:

Plan Price Rescued orders / month
Free Free 50
Growth $99/mo 200
Scale $249/mo 600
Unlimited $499/mo Unlimited

All plans include the full analytics dashboard, buyer intent reporting, A/B testing, order tagging & enrichment, CSV data export, and unlimited checkout tracking. The only difference is how many rescue orders can be completed per month. Once you hit your limit, tracking and reporting continue — rescue offers simply stop showing until the next billing cycle or you upgrade.

Start free

The free plan gives you 50 rescued orders per month with zero commitment and full features. Most stores find this is enough to prove the ROI before upgrading.


8

Tips and best practices

Start with tracking before creating offers

Let the app collect data for a few days first. You'll see exactly how many buyers are entering failed codes, what codes they're trying, and how much revenue you're missing. This data helps you set the right discount value for your rescue offer.

Match or undercut the expected discount

If buyers are typically trying 10% off codes, set your rescue offer to 10% (or slightly less). You're not giving away extra margin — you're recovering a sale that would have been lost entirely.

Use the "Since offer active" date filter

When you first activate a rescue offer, switch the dashboard date range to Since offer active. This filters out the tracking-only period so you can see clean rescue performance data from the moment offers went live.

Check your top failed codes

The dashboard shows the most common failed discount codes buyers are entering. This tells you where your customers are finding codes — expired campaigns, coupon aggregator sites, influencer codes, or simple typos. Use this to inform your marketing strategy.

Use order tags to track rescued revenue in Shopify

Every rescued order is tagged "Second Chance Discount - Rescue" in Shopify. Use this tag to filter your orders list, build Shopify reports, or trigger automations (e.g. Shopify Flow) for rescued customers.

Use collection filters for targeted offers

If you sell across different categories, create separate rescue offers filtered by collection. For example, offer free shipping on accessories but a percentage discount on higher-margin products.

Try the "show with existing discount" setting

Under Offer Settings → Advanced settings, you can enable rescue offers even when the buyer already has a valid discount applied. This catches cases where a buyer has a working code but also tried an invalid one. The app will never double-prompt if they've already used a rescue code.

Export data for deeper analysis

Use the CSV export on the dashboard to download checkout-level data — outcomes, failed codes, rescue events, order values, and experiment assignments. Import this into a spreadsheet or BI tool for custom analysis.

Run A/B tests before scaling

Before committing to a higher plan, run an A/B test to measure the exact lift your rescue offers generate. Compare rescued revenue in the treatment group against the control group to calculate your true ROI.

Keep an eye on the rescue rate

A healthy rescue rate is typically 10–30%. If yours is lower, try adjusting your discount value, messaging, or trigger rules. If it's higher, you may be able to reduce the discount amount and still maintain conversions.