How to evaluate a coupon-extension partnership before renewal
A fair partner review separates incremental sales from commission, code leakage, and shoppers who would have bought anyway.
Jump to a section
In short
An extension partnership should earn its place with incremental value, not a large attributed order count. Before renewal, separate the shoppers the partner actually influenced from the shoppers who already intended to buy, the discount you would have funded anyway, and the commission attached to a code that escaped its audience.
What should a partner review answer?#
Write the decision in one sentence before opening the report: keep, renegotiate, or cut this partnership if the incremental contribution clears our threshold at an acceptable discount depth. That sentence forces the team to define value and cost together.
The review should answer five questions:
- How many sessions were associated with the extension or partner?
- How did those sessions convert compared with a fair control?
- What revenue per session and average order value did they produce?
- What discount depth and commission did the orders carry?
- Did private, one-time, or staff codes appear in the cohort?
The answer is not “whatever the affiliate dashboard says”. The affiliate report is one input. Your store's order data and the extension-session cohort are the evidence for the merchant decision.
Start with the deal, not the attribution#
Record the commercial terms in a stable place before renewal: commission rate, fixed fees, code ownership, new-customer rules, attribution window, network, placement commitments, and any right to use your brand or creative. Note whether the partner pays through an affiliate network; Benson's partner-deal playbook keeps that condition explicit in the rollout steps.
Then define the eligible population. A partner code may be public, private, limited to one customer, or attached to a campaign. A shopper who arrives with the code already in the URL is different from a shopper who sees a partner offer and applies it after browsing. Keep those paths labelled rather than combining them into “partner revenue”.
Shopify's official discount code guidance describes partnerships as one common reason to distribute a code and points merchants to the Sales by discount report. Use that native report to reconcile code usage, then join it to the session evidence that tells you what happened before checkout.
What evidence belongs in the readout?#
Use a consistent date range and show the eligibility rules on the first page. At minimum, compare:
- extension or partner sessions;
- human sessions with the same broad store conditions;
- converted sessions and revenue per session;
- discount amount as a share of pre-discount value;
- commission and other partner costs;
- code attempts, including codes outside the intended audience.
Do not turn the extension cohort into a causal result by adding a comparison after the fact. Extension users can differ from other shoppers in device, source, intent, and product interest. Those differences are why a holdout belongs in the renewal plan when the decision has real margin consequences.
The extension impact guide explains the cohort metrics and why before-and-after comparisons can be misleading. Benson's order metrics also keep discount depth and estimated excess discount separate from conversion and average order value, so the commercial review can show both volume and cost.
How should the holdout work?#
For a renewal decision, start a holdout among eligible extension or partner sessions. Randomly keep a stable slice in the control arm, leave its experience unchanged, and expose the remaining sessions to the partnership or the control you are evaluating. Assign once per visitor or session according to the experiment's contract and do not move shoppers between arms because the result looks inconvenient.
Choose one primary outcome before looking at the readout. Revenue per session is often the clearest commercial measure because it includes conversion and order value, but conversion and discount depth explain why it moved. If partner terms only apply to new customers, make that condition part of the cohort and the outcome definition.
The holdout measurement guide covers sticky assignment, the control arm, and uncertainty. A result with a wide interval is a prompt to collect more eligible sessions or narrow the question; it is not permission to claim a win.
How should you handle code leakage?#
Treat leakage as a separate failure mode. A partner can deliver legitimate incremental demand and still expose a private code outside the intended group. Record the code, source, first-seen date, and affected extension sessions. If the code is not meant to be public, decide whether it belongs on the allowlist and whether the checkout policy should govern extension-tagged sessions.
The leaked-codes playbook gives the operational sequence. Keep the partner decision and the code containment decision linked in the review, but report them separately: one is a commercial relationship, the other is discount governance.
What threshold should decide renewal?#
Set the threshold in the same units as the cost. For example, you might require incremental revenue per eligible session to cover commission and the extra discount, or require a measured contribution margin after partner cost. The exact threshold belongs to the merchant's economics; do not borrow a generic percentage from another store.
Write the three outcomes before the test closes:
- Keep when the measured contribution clears the threshold and code behaviour is acceptable.
- Renegotiate when demand is useful but the commission, placement, or code scope leaves too little value with the store.
- Cut or pause when the partnership does not clear the threshold, leaks codes you cannot govern, or cannot produce evidence you can reconcile.
Keep the decision reversible where the platform allows it, document the date and cohort, and schedule the next review. The point of the process is not to punish a partner. It is to make the cost of the relationship visible before an attributed-order total makes the decision for you.


