← All free templates
Free checklist

10 fixes for fewer returns, with the texts to paste

Zalando gets about half of all items ordered sent back, and on items with size advice it gets 10 % fewer size returns. You don't have Zalando's data. You have something better: the people who send things back. Start tonight with Fix 1 and Fix 4 (20 minutes).

Start here: tonight Fix 1 and Fix 4 (20 minutes). This week Fix 5, 6 and 8. Once answers come in: Fix 2 and 3. Only if it fits your shop: Fix 7, 9 and 10.

The three fixes from the video

Fix 1 · Ask every returner one question (10 min, then automatic)

Don’t ask “why did you send it back?”: she’ll pick “not as expected”, which tells you nothing. Ask what your page was missing, inside your reply to her return request. Never as a separate survey email. Careful in Germany: the BGH (2018) counted even a rating request inside an invoice email as advertising without consent. Keep it to this one optional question, no rating link, no offer. Lower risk, not zero.

Fill in once:

  • [RETURN STEPS] (DE [RÜCKSENDUNG], NL [RETOUR]): where to send it, who pays the postage, how to pack it if it’s fragile. EN “Just use this link: example.com/returns, the label is free.” · DE (du) „Nutz einfach diesen Link: beispiel.at/retoure, das Etikett ist kostenlos.“ · DE (Sie) „Nutzen Sie einfach diesen Link: beispiel.at/retoure, das Etikett ist kostenlos.“ · NL „Gebruik gewoon deze link: voorbeeld.nl/retour, het label is gratis.“
  • [REFUND TIME] (DE [ERSTATTUNGSZEIT], NL [TERUGBETAALTIJD]): EN “as soon as your parcel is back with us” · DE (du) „gleich nach Eingang deines Pakets“ · DE (Sie) „gleich nach Eingang Ihres Pakets“ · NL „zodra je pakket bij ons binnen is“
  • [YOUR NAME]

English

Hi [Name],

Of course. [RETURN STEPS] You'll get your refund [REFUND TIME], the same way you paid.

One quick question, only if you like: what should our product page have told you? One sentence is plenty. It helps everyone who orders after you.

[YOUR NAME]

Deutsch (du)

Hallo [Name],

klar, kein Problem. [RÜCKSENDUNG] Dein Geld bekommst du [ERSTATTUNGSZEIT] zurück, auf demselben Weg, wie du bezahlt hast.

Eine kurze Frage, nur wenn du magst: Was hätten wir auf der Produktseite besser erklären sollen? Ein Satz reicht. Damit hilfst du allen, die nach dir bestellen.

[DEIN NAME]

Deutsch (Sie)

Hallo [Name],

selbstverständlich. [RÜCKSENDUNG] Ihr Geld erhalten Sie [ERSTATTUNGSZEIT] zurück, auf demselben Weg, wie Sie bezahlt haben.

Eine kurze Frage, nur wenn Sie mögen: Was hätten wir auf der Produktseite besser erklären sollen? Ein Satz reicht. Damit helfen Sie allen, die nach Ihnen bestellen.

[IHR NAME]

Nederlands

Hoi [Naam],

Natuurlijk. [RETOUR] Je krijgt je geld terug [TERUGBETAALTIJD], op dezelfde manier als je hebt betaald.

Eén korte vraag, alleen als je wilt: wat had onze productpagina je moeten vertellen? Eén zin is genoeg. Daarmee help je iedereen die na jou bestelt.

[JOUW NAAM]

Other languages: paste the reply into ChatGPT, Claude or Gemini with “Translate into [LANGUAGE], informal/formal, keep the meaning exactly, keep [brackets].”

Save it as a template: Gmail (computer): Settings → See all settings → Advanced → Templates: Enable → Save Changes; write the reply, ⋮ More options → Templates → Save draft as template → Save as new template. Outlook (Microsoft 365): New mail → My Templates → + Template. Help desk: save as macro / saved reply.

Don’t send it for items she can’t withdraw from (made to her measurements, or a sealed cosmetic whose hygiene seal she broke): see “Good to know” at the end.

Fix 2 · Put their words on the page (10 min a week)

Keep one list: product, size/colour ordered, answer. No names, no email addresses, nothing about health (e.g. a rash). Once a week paste all answers so far into ChatGPT, Claude or Gemini:

Below are answers from customers who returned a product. They answered: "What should our product page have told you?"
Group them by product and size or variant. For every point that at least 3 customers make about the same product, write ONE short line for that product page (max. 10 words) in [LANGUAGE], using only what the customers said.
No numbers or facts that no customer wrote. If customers ask for a fact they didn't give (e.g. a measurement), write "ADD: [which fact]", also when only 1 or 2 customers ask.
If fewer than 3 make the same point, write "not yet".
[PASTE ALL ANSWERS SO FAR]

Put the line where people decide: under the size buttons, next to the price, or as the first line of the description. For example “Smaller than it looks: 8 cm, fits in your palm.” · “Runs small. Take one size up.” · “The colour is darker than on screen.” Say what was missing (the real size, the real colour), not just that it’s different. Check every line against the product before it goes live.

Fix 3 · Put the line in your order email too (10 min, Shopify)

Put the line from Fix 2 into the order confirmation, only for that product. Anyone who picked the wrong one replies before you ship. That’s a return you never pay for. Add to the line: “Picked the wrong one? Just reply and we’ll change it before it ships.” · DE: „Doch die falsche Größe oder Farbe? Antworte einfach, dann ändern wir es vor dem Versand.“ If you ship the same day, the window is a few hours: say until when (“until 2 pm”).

Settings → Notifications → Customer notifications → Order confirmation → Edit code. First copy the whole code into a text file, so you can go back. Paste this on a new line directly below the line that contains {{ email_body }}, once per product, and replace PRODUCT (exact product title) and LINE:

{% for line in line_items %}{% if line.product.title == "PRODUCT" %}<p>LINE</p>{% break %}{% endif %}{% endfor %}

LINE for example “Good to know before it ships: smaller than it looks, 8 cm, fits in your palm.” · DE „Gut zu wissen vor dem Versand: kleiner, als es aussieht, 8 cm, passt in deine Hand.“

Then Preview → Send test email → Save. Preview shows a sample order, not your product, so check it with a real test order. If it looks wrong: Revert to → Default, or paste your saved copy back.

Seven more fixes

Fix 4 · Find your 3 worst products (10 min)

Shopify: Analytics → Reports → Orders and reversals by product (German admin: Bestellungen und Stornierungen nach Produkt, column Stornierte Menge; names change, so search “reversals” / „Stornierungen“). Set the date range to the last 90 days and sort by Reversed quantity (it also counts cancellations and order edits). WooCommerce: Orders, status Refunded, and check partly refunded orders too. Write down the three products that come back most. Fixes 3, 5 and 6 start with them.

Fix 5 · Real measurements (20 min per product, skip if they aren’t returned for size)

  • Clothing: “Measured flat: chest width 52 cm, length 68 cm. Model is 172 cm and wears S.” · DE: „Flach gemessen: Brustbreite 52 cm, Länge 68 cm. Model ist 172 cm groß und trägt S.“
  • Everything else: “Height 8 cm, width 14 cm, holds 450 ml. Grab a tape measure to compare.” · DE (du): „Höhe 8 cm, Breite 14 cm, fasst 450 ml. Nimm zum Vergleich ein Maßband.“ · DE (Sie): „… Nehmen Sie zum Vergleich ein Maßband.“

Fix 6 · One honest photo (15 min per product)

Answer the most common answer from Fix 1: the product in a hand or next to something everyone knows (size), in daylight without filter (colour), or worn by a real person (fit). Caption: “Real colour, daylight, no filter.” · DE: „Echte Farbe, Tageslicht, ohne Filter.“

Fix 7 · Offer a swap before the refund (2 min)

Paste above the question in Fix 1, for items you have in stock:

  • EN: “Would you rather have another size or colour instead of the refund? Just tell me which one, and I’ll send it as soon as yours is on its way back.”
  • DE (du): „Möchtest du statt der Erstattung lieber eine andere Größe oder Farbe? Schreib mir einfach welche, dann schicke ich sie dir, sobald deine Rücksendung unterwegs ist.“
  • DE (Sie): „Möchten Sie statt der Erstattung lieber eine andere Größe oder Farbe? Schreiben Sie mir einfach welche, dann schicke ich sie Ihnen, sobald Ihre Rücksendung unterwegs ist.“

The refund stays just as easy: the customer decides.

Fix 8 · Broken on arrival: replace fast, ask once, fix the packing (5 min)

English

Hi [Name],

I'm so sorry, that's not how it should arrive. Would you like a replacement or your money back? Just tell me, and I'll sort it right away.

If you have a second, a photo of it (and of the box, if that's damaged too) helps me with the carrier.

[YOUR NAME]

Deutsch (du)

Hallo [Name],

das tut mir leid, so sollte es nicht ankommen. Möchtest du Ersatz oder dein Geld zurück? Sag mir einfach Bescheid, dann kümmere ich mich sofort darum.

Wenn du kurz Zeit hast, hilft mir ein Foto davon (auch vom Karton, falls der beschädigt ist) für die Reklamation beim Versanddienst.

[DEIN NAME]

Deutsch (Sie)

Hallo [Name],

das tut mir leid, so sollte es nicht ankommen. Möchten Sie Ersatz oder Ihr Geld zurück? Sagen Sie mir einfach Bescheid, dann kümmere ich mich sofort darum.

Wenn Sie kurz Zeit haben, hilft mir ein Foto davon (auch vom Karton, falls der beschädigt ist) für die Reklamation beim Versanddienst.

[IHR NAME]

Cheap item, where a return costs you more than it’s worth? Add: “Please keep the broken one, you don’t need to send it back.” · DE (du) „Das kaputte Teil musst du nicht zurückschicken.“ · DE (Sie) „Das kaputte Teil müssen Sie nicht zurückschicken.“ Same product arrives broken twice in a month? Change the packing before you write another reply.

Fix 9 · Before you block a serial returner: do the math (15 min)

Paste these two columns into Google Sheets or Excel (click A1, paste), then change column B. Decimals: type them the way your sheet does (German sheets: 0,5).

Kept orders: what she paid, without VAT and shipping	300
Your margin on those products (type it with %, e.g. 35%)	40%
Profit on what she keeps	=B1*B2
Return postage you paid, all returns together (0 if she paid)	32
What you paid to ship the orders she sent back	25
Number of returned parcels	5
Minutes to unpack, check and restock one parcel	5
Your cost per hour, in €	30
Payment fees you didn't get back on refunds	6
Money lost on returns you couldn't sell at full price, not deducted from her refund (thrown away: what you paid for it)	25
RESULT (positive = she pays her way)	=B3-B4-B5-B6*B7*B8/60-B9-B10

Example: €120 − €32 − €25 − €12.50 − €6 − €25 = +€19.50, she pays her way. Prices in your admin include VAT? Divide by 1 + VAT rate. With Shopify Payments, the original processing fee isn’t returned on refunds.

Below zero? Mildest first:

  1. Send her the measurements or a real-colour photo before her next order.
  2. No discounts: tag her no-discounts. Then Customers → Segments → Create segment: customer_tags NOT CONTAINS 'no-discounts' → Save. Discounts → the discount → Eligibility → Customer segments → that segment. Test a code with a new email address before you rely on it. A tag alone does nothing.
  3. No free returns just for her: legally possible only for future orders and only if she was told before ordering, which in practice means a separate withdrawal notice for her (Händlerbund: “hardly workable”). If you change it, change it for everyone in your terms. Never for an order she already placed.

Decide this yourself, case by case, not automatically from return data (GDPR Art. 22). Don’t block her just for her return rate: in Germany that’s legally disputed; blocking needs real abuse you can show (e.g. worn and returned). Ask a lawyer before you do.

Fix 10 · Put the question in your return form (only if your form allows it)

Shopify’s built-in return request has fixed reasons plus a note for the store; it has no field of your own. If you use a return app or your own form, add an optional free-text field under the reason: “What should our product page have told you? (optional)” · DE „Was hätten wir auf der Produktseite besser erklären sollen? (optional)“. Keep it optional: if the form is your withdrawal button, nothing beyond name, order and email may be required.

Did it work?

For each of your 3 worst products, count returns for 4 weeks before and 4 weeks after you changed the page.

  • Within 14 days of delivery a customer can withdraw without giving a reason. The refund is due at the latest 14 days after she told you, including what she paid for shipping (up to your cheapest standard option), the same way she paid. You may wait until the item is back or she shows proof of sending.
  • EU since 19 June 2026 (Germany: § 356a BGB): a button „Vertrag widerrufen“ (or equally clear wording), a second step „Widerruf bestätigen“, and an automatic receipt with date and time. Name, order and email must be enough; nothing else may be required.
  • In Germany the return trip is your risk too (§ 355 Abs. 3 BGB).
  • Main exceptions from withdrawal: items made to her specifications (e.g. custom size, engraving) or clearly personalised (handmade or made after the order doesn’t count by itself); and sealed goods that can’t be resold for health or hygiene reasons once she broke the seal (e.g. a sealed cosmetic). Clothing doesn’t count. The EU Court of Justice used a “can it be cleaned for resale?” test for a mattress (slewo, 2019).
  • She pays return postage only if you told her before she bought (e.g. in your terms). You may deduct for wear beyond what’s needed to try it.
  • Damage in transit is your risk until she has the parcel. Ask for a photo, but don’t make it a condition.

Where the numbers come from

  • Zalando, “Returns at Zalando” (corporate.zalando.com): on average 50 % of items ordered are returned; size-related issues are around a third of all returns. Size advice: “reduce size-related returns by 10% compared to items where we don’t offer size advice” (corporate.zalando.com, size article and press release 17 July 2023).
  • Uni Bamberg, Forschungsgruppe Retourenmanagement (retourenforschung.de, 25 Nov 2025): 24.1 % of B2C parcels in Germany are returned, about 550 million return parcels expected in 2025.

Frequently asked questions

What should I ask customers who return something?

Skip "why did you send it back?": most people pick "not as expected", which tells you nothing. Ask "What should our product page have told you?" inside your reply to their return request, as one optional question.

How do I add a note for one product to the Shopify order confirmation?

Settings → Notifications → Customer notifications → Order confirmation → Edit code. Save a copy of the code first, then paste the snippet from Fix 3 on a new line directly below the line that contains {{ email_body }}, once per product. Check it with a real test order.

Can I block customers who return a lot?

In Germany that is legally disputed: blocking needs real abuse you can show, not just a high return rate. Do the math in Fix 9 first, and try the milder steps there before you block anyone.

What can we help with?

How many support tickets a month?

What powers your store?

Great, who should we reply to?

Last step, a bit about your store.

Free & no obligation · reply within one business day

Thanks, message received.

We’ll get back within one business day. Want to talk sooner?