← Back to skumetrica.com

Reference

Returns

How much comes back, why, and what it actually costs once the refund, the fees and any stock written off are all counted.

Cost

What a return, or a group of returns, actually cost — the sale price refunded, the fees Amazon kept on net, and any stock that had to be written off, added together.

Good: Compare against Refunded alone — Cost is the fuller figure, so a row can cost more, or less, than its refund suggests once the other two parts are counted.

From: returns_totals()['total'] in public/inc/returns.php: refunded + fees kept + goods lost, per bucket or per product.

Date

The day the return was recorded.

Good: Not a figure.

From: returns.return_date, via returns_evidence() in public/inc/returns.php.

Events

How many separate return transactions were filed under this reason — distinct from Units, since one event can return several units at once.

Good: Read alongside Units — a reason with many events and few units each is mostly single-unit returns; the reverse is bulk returns.

From: returns_by_reason()['n'] in public/inc/metrics.php, a count of return rows.

Fees returned to you

On net, more of Amazon's fees came back on these refunds than were kept — the referral fee returning outweighed the refund fee charged.

Good: Shown under this name only when the balance runs in the seller's favour; the more usual case is labelled "Fees Amazon kept" instead, on the same tile.

From: returns_totals()['fees_kept'] in public/inc/returns.php, from order_fees Refund-event rows other than the principal.

Mostly because

Whichever reason bucket accounts for the most units returned for this product.

Good: Not a figure — points to the fix worth trying first for that product.

From: computed in public/returns.php from returns_by_product()['top_bucket'] in public/inc/returns.php: the bucket with the most units.

Product

The listing this row is about.

Good: Not a figure.

From: the product catalogue, joined by SKU or ASIN.

Rate

This product's own return rate — units back as a share of units sold, for that product alone.

Good: This table colours it green under 3%, amber to 8%, red above — but also compare against this product's own history, since some categories run higher naturally.

From: computed in public/returns.php: units returned ÷ units sold for that SKU × 100.

Reason

Amazon's own reason code the buyer selected, in plain words.

Good: Not a figure.

From: returns.reason via returns_by_reason() in public/inc/metrics.php, relabelled by the page.

Refund rate (Amazon)

The return rate Amazon itself reports in the Sales & Traffic report — a separate measurement from Return rate beside it, built a different way.

Good: Read beside Return rate rather than instead of it — a gap between the two means the two measurements disagree, not that either is wrong.

From: traffic_totals()['refund_rate'] in public/inc/metrics.php, from Amazon's own Sales & Traffic report.

Refunded

How much was handed back to buyers for the returns in this bucket.

Good: Read beside Written off and Cost, not alone.

From: returns_by_bucket()['refunded'] in public/inc/returns.php.

Refunded to buyers

The sale price handed back to buyers across every return in the period.

Good: Compare against Reimbursements — one is money going out, the other money coming in. Not the whole cost of a return; see Cost further down the page for that.

From: returns_totals()['refunded'] in public/inc/returns.php.

Reimbursements

Money Amazon paid back to the account in the period, for stock lost or damaged in its own warehouses — separate from a refund, which goes to the buyer.

Good: Money recovered rather than a cost, so not judged against zero. Compare against Stock written off to see how much of what was lost was actually paid for.

From: reimbursements_total() in public/inc/metrics.php, summed by approval date.

Return rate

This page's own measurement of units returned as a share of units sold in the period.

Good: Compare with the prior period, shown on the badge beside it, and against Refund rate (Amazon) beside it.

From: computed in public/returns.php from returns_summary() and sales_totals(): units returned ÷ units sold × 100.

Share

What portion of all returned units this reason accounts for.

Good: Shares across the table add to 100%; read one beside the others, not against a fixed number.

From: computed in public/returns.php: that reason's units ÷ total returned units.

Stock written off

The value, at landed cost, of stock that came back unsellable and had to be written off.

Good: Compare against Refunded to buyers — a return can cost both the sale price and the stock. Shown as a dash rather than zero when the units involved have no cost on file.

From: returns_totals()['goods_lost'] in public/inc/returns.php.

Units

How many units were part of these returns.

Good: Not judged alone — read beside Cost or Refunded for the money behind it.

From: returns_by_bucket()['units'] / returns_by_reason()['units'] in public/inc/returns.php or public/inc/metrics.php, summed from returns.quantity.

Units back

How many units of this product came back in the period.

Good: Compare against Units sold via Rate, not alone.

From: returns_by_product()['units'] in public/inc/returns.php.

Units returned

How many units came back to Amazon across every return in the period.

Good: Compare with the prior period, shown on the badge beside it, and against Units sold via Return rate.

From: returns_summary()['units'] in public/inc/metrics.php.

Units sold

How many units of this product sold in the same period — a separate query from the returns count, and not the same buyers: returns lag the sale by weeks, so the two are different cohorts.

Good: Shown as a dash rather than zero when the product sold nothing in the window; read beside Units back via Rate with that lag in mind.

From: computed in public/inc/returns.php (returns_by_product()), summed from orders.quantity for that SKU.

Unsellable

How many units in this row came back in a condition that could not be resold.

Good: Not a target — read beside Cost, since these units are typically the more expensive part of a return.

From: returns_by_bucket()['destroyed_units'] / returns_by_product()['destroyed_units'] in public/inc/returns.php, from returns.disposition via return_resaleable().

What they said

The buyer's own words about why they returned it, with Amazon's own menu path shown ahead of anything the buyer actually typed.

Good: Not a figure — the most direct signal on this page; read alongside the money and product columns on the same row.

From: returns_comments() and return_comment_parts(), assembled in returns_evidence() in public/inc/returns.php.

What went wrong

Which of six groups this return's reason falls into — a listing problem, a product problem, mishandling in transit, a parcel that never arrived, the buyer's own choice, or a code this page does not yet recognise.

Good: Not a figure — read the sentence beside or beneath it for what, if anything, can be done about that group.

From: return_bucket_label() applied to return_bucket() in public/inc/returns.php.

Written off

The value, at landed cost, of unsellable units in this bucket.

Good: Read beside Refunded — some buckets return sellable stock and cost nothing here, others do not.

From: returns_by_bucket()['goods_lost'] in public/inc/returns.php.

← Back to the course map