Skip to content
Bryant Robertson

RouteRoute Shipping Protection

The dark pattern had to go. Conversion went up anyway.

Role
Design Lead, Checkout & Growth
Timeframe
2023 – 2024
Skills
Product design, Growth, Experimentation, Service design

Package protection is Route’s core revenue line, sold inside the checkout of the merchant brands that install it. Attach rate leaned on a preselected checkbox, and Shopify was moving to ban exactly that as a dark pattern. I redesigned the widget to present protection as part of the shipping method rather than as a bolt-on add-on. The checkbox came out, conversion moved from 56% to 71%, and the projection was roughly $15M in additional annual revenue if every merchant adopted it.

56% → 71%
Checkout conversion
+25%
Relative lift
~$15M
Potential additional annual revenue

The ProblemThe whole company rode on one checkbox

The entire business model came down to a single moment: a shopper, mid-checkout, in someone else’s store, deciding whether to add protection to their order.

We converted 56% of them, and a preselected checkbox was doing a lot of that work. At Route’s scale a single point of checkout conversion was worth millions a year.

Then Shopify started cracking down on dark patterns, and a box that opts a shopper in while they are looking somewhere else is squarely one of them. Unchecking it by default was the honest answer and an unaffordable one.

Unchecking the box was the right thing to do.
It was also going to cut our attach rate in half.

The checkout widget before and after, crossfading between the two treatments: Before

Before

The Route widget inside a merchant’s checkout, before and after.

ResearchWe were arguing with the wrong objection

The obvious answer was persuasion: better copy, a clearer icon, a sharper value prop. So we tested it rather than assuming it. A series of A/B tests ran copy against copy, more explanation against less, different wording for the same coverage. The shortest and simplest version won every time.

That is a strange result if shoppers are weighing an offer, and an obvious one if they are not reading it. The preselected checkbox pointed the same way. It performed too well for a line people were stopping to consider.

  • Sitting on its own line below shipping, protection wore the visual grammar of an extended warranty at an electronics counter.
  • That is a pattern shoppers are used to declining, and they decline it fast.
  • The offer was being sorted, not evaluated. No amount of copy fixes a decision made before the copy is read.

They were not rejecting protection.
They were rejecting an add-on.

The SolutionStop selling it, start shipping it

  1. 01Move protection into a decision shoppers already expect

    Nobody resists choosing a shipping method. It’s required, familiar, and the tradeoff is obvious. So protection went into that choice instead of next to it.

  2. 02Price the option, not the add-on

    Instead of Economy at $7.00 plus a separate $2.15 line, the widget offers “Economy with Shipping Protection, $9.15” beside plain Economy. Same price, same coverage, entirely different question.

  3. 03State the coverage on the option itself

    Damage, loss, or theft, sitting on the line a shopper is already reading rather than behind a tooltip.

  4. 04Be honest about what a default is

    A preselected shipping method is still a default, and it still benefits from inattention. What changed is what the shopper is defaulted into: a choice they have to make anyway, both prices visible, the cheaper option one tap away. That is a better deal than a charge appended to a total they had already accepted, and it is a claim I can defend.

  5. 05Give merchants the switch

    Every merchant set their own default, and any of them could leave the free option selected instead. That cost us attach rate, and it meant nobody could claim a pattern had been forced on their store. Most kept shipping protection as the default.

    The same shipping list ordered two ways: once with protection preselected, once with the unprotected option first
    Merchants control their own shipping methods, and can keep the free option selected by default.

OutcomeWhat happened

The preselected checkbox came out, which is what the policy change demanded, and attach rate went up rather than down.

71%
Conversion, from 56%
~$15M
Potential additional annual revenue

A note on the numbers

The 71% came from a test across three merchants, run shortly before I left Route. I quote it as a strong early result rather than a settled figure, and the revenue number is what that rate would be worth at full adoption, not what was booked. I have not had access to the data since.

LearningsKey takeaways

  • Check the question before improving the answer

    Better copy was the obvious answer and it was the wrong one. The win came from changing what category the thing appeared to belong to. When a metric won’t move, verify you’ve correctly identified what the user thinks they’re being asked.

  • Constraints kept it honest

    The constraint was not taste, it was Shopify tightening its rules while our number sat on the thing being banned. Defending the checkbox would have bought a little time. Giving it up forced the better design, and the better design beat what we were protecting.

  • Do the hard thing before it is forced on you

    We had wanted protection inside the shipping options from the start. It was technically difficult, so it kept losing to easier work on the widget until a policy change made it unavoidable. Doing it sooner would have compounded the attach rate we eventually gained and put real distance between us and anyone still selling protection as an add-on.


Next

Route Design System