Seller Profit Guard

Variant Risk Checker worked example for a size-based listing

Last updated: 2026-07-30

Written and reviewed by Seller Profit Guard Editorial Team.

In this worked example, four T-shirt order rows produce three actionable warning groups: SKU TS-M appears as both Size: M and Size: Medium, one large-size row has no SKU, and SKU TS-XL sells three units without a cost record. The checker prioritizes identity and coverage fixes before margin review.

Worked Etsy size variation audit from four order rows to three prioritized risk groups
The example keeps labels, SKUs, quantities, and cost coverage visible at every step.

What are the source rows and expected groups?

Use a public dummy order-item fixture for one T-shirt listing. Row A is SKU `TS-M`, variation `Size: M`, quantity 2. Row B is `TS-M`, variation `Size: Medium`, quantity 1. Row C has a blank SKU, variation `Size: L`, quantity 1. Row D is `TS-XL`, variation `Size: XL`, quantity 3. Load one cost record for `TS-M` and none for `TS-XL`. Keep the high-volume threshold at two.

The grouping key contains item, SKU, and source variation text, so the two medium labels remain separate displayed groups. Normalization does not treat `M` and `Medium` as synonyms. The relationship map still sees two normalized variation strings for `TS-M`, so both medium groups receive the one-SKU-to-many-variants warning. The blank-SKU group receives the missing-SKU warning. `TS-XL` reaches the inclusive threshold and receives the high-volume-missing-cost warning.

The checker should return four warning rows because the relationship warning attaches to both affected medium groups. That does not mean four independent root causes. Investigation collapses them into three work items: establish the canonical medium label, assign or recover the large SKU, and create evidence-backed XL costs.

Four dummy T-shirt order rows grouped into medium label collision missing SKU and XL cost gap
Displayed warning rows can share one root cause, so remediation is tracked separately.
GroupQuantityExpected warningRoot action
TS-M / Size: M2SKU maps to many variantsVerify canonical medium label
TS-M / Size: Medium1SKU maps to many variantsVerify rename history
Blank / Size: L1SKU missingRecover stable large SKU
TS-XL / Size: XL3High-volume SKU missing costMeasure and add XL cost

How do intermediate maps produce the result?

The SKU relationship map stores `ts-m → {size:m, size:medium}` and `ts-xl → {size:xl}`. The item-plus-variation map stores one SKU for each nonblank combination, so it does not raise the reverse collision in this fixture. The cost set contains `ts-m`; case is normalized when checking coverage. Quantity is summed within exact display groups, while each row adds one to order count.

The blank-SKU group never enters the SKU relationship map because it lacks a stable identifier. It still remains in grouped output and receives the highest-priority recommendation: add or fix SKU values before relying on SKU-level costs. The algorithm sorts by warning count and quantity, so exact row order may depend on the warnings and aggregated volume, not the original CSV position.

Hand-reproduce these maps before relying on a large export. If the observed output differs, inspect column mapping, delimiters, variation formatting, quantity parsing, and whether statement rows were included.

Intermediate relationship maps for TS-M TS-XL and size variation strings
Two directed maps reveal different identity defects.

What is the correct remediation sequence?

First, preserve the original file and current listing state. Determine whether `Size: M` and `Size: Medium` reflect a harmless historical rename, a manual edit, or two operationally distinct versions that should not share one SKU. If they are equivalent, select a canonical current label and preserve an alias for historical analysis. If they are different, create separate stable SKUs and cost records rather than merging by convenience.

Second, recover the large-size SKU from the current listing, listing export, fulfillment record, or controlled seller record. Do not copy `TS-M` merely to remove the blank. Third, measure XL material, labor, packaging, and fulfillment evidence. Larger sizes can consume more material and change package or shipping class, so cloning medium cost without evidence can hide the exact risk the queue exposed.

Rerun a new bounded export only after the upstream changes. A clean result means the five implemented conditions were not found in that population under that mapping and threshold. It does not prove every historical order, current listing field, or margin is correct.

Before and after remediation for size label identity SKU coverage and cost evidence
A warning closes only when the upstream source and rerun evidence agree.

How does this example connect to margin without overstating it?

The checker does not compute contribution for these rows. Its value is preventing a later margin calculation from joining medium cost to XL, treating blank SKU cost as zero, or splitting one product history across unrecognized labels. After identity and coverage are verified, run the profit calculator at SKU grain with observed price, fees, quantity, and private costs.

If XL costs $2.40 more per unit than medium, three uncovered units can materially change contribution. That hypothetical illustrates why prioritization matters; it is not evidence about the dummy product or any Etsy benchmark. Enter the seller's actual measured difference and preserve the source.

Size-variation example questions

Why are there two medium warning rows? Both displayed groups participate in the same SKU relationship collision.

Will M and Medium normalize to the same value? No. Normalization handles case and spacing, not semantic abbreviation.

Does blank SKU mean zero cost? No. It means the cost join is unavailable.

Can XL share medium cost? Only when seller evidence shows every relevant cost layer is equivalent.

What proves closure? Correct upstream records plus a rerun whose expected warning changes are explained.

Which evidence supports this size-variation worked example?

Use the Etsy order-item or sold-transaction export for observed item title, seller-added SKU, selected variation text, quantity, and transaction frequency. Use the active-listing export or Shop Manager for current listing, option, price, quantity, and SKU setup. Use the seller's private cost library for material, labor, packaging, fulfillment, and other cost coverage. These sources answer different questions and should not be silently merged into one truth table.

Preserve the export date, covered period, row count, detected headers, mapping version, normalization rule, cost-library fingerprint, and checker version. Verify at least one harmless dummy row from source fields through the exported fix list. A checksum can show that a file did not change; it cannot prove that the seller mapped the SKU, variation, quantity, or item columns correctly.

Classify findings by evidence: an empty SKU is observed in the selected export; one normalized SKU mapping to several normalized variation strings is a deterministic consistency warning; a high-volume SKU without a cost record is a coverage warning under the chosen quantity threshold. None of those findings alone proves accounting loss, listing-policy violation, inventory shortage, or buyer harm.

Privacy and commercial sensitivity for size-variation worked example

The checker needs item, SKU, variation, quantity, and mapping context. Buyer names, email addresses, phone numbers, delivery addresses, private messages, personalization text, and payment credentials are unnecessary. Seller Profit Guard removes recognized private columns during parsing and performs the analysis in the browser, but the operator must still inspect unknown headers and avoid sharing raw exports.

Cost-library values, supplier terms, sell-through, variation mix, and exception lists can reveal commercial strategy even when buyer data is absent. Keep raw CSVs and detailed fix lists in controlled storage. Public reports should use dummy examples, aggregate counts, redacted identifiers, and non-reversible fingerprints. Never paste a private transaction row into an article, issue, analytics event, or community post.

How to apply this size-variation worked example in the Variant Risk Checker

Open Seller Profit Guard, load a recent Etsy order-item CSV or a public dummy fixture, confirm the detected item, SKU, variation, and quantity columns, and load the matching SKU cost library. The checker groups rows by item, SKU, and variation, normalizes case and spacing for comparison, then reports five bounded warning families: missing SKU, missing variation text, one SKU linked to multiple variation strings, one item-and-variation linked to multiple SKUs, and a high-volume SKU without a matching cost record.

Review the highest-impact warning with its source row and current listing. Correct the upstream listing, SKU policy, export mapping, or cost record; do not merely edit the downloaded fix list. Re-export a bounded period, rerun the same mapping and threshold, and compare the warning with the saved evidence. The tool is operational QA, not an Etsy connection, inventory system, accounting ledger, or guarantee of margin.

  1. Use a bounded export and confirm the detected mapping.
  2. Load or create the matching SKU cost assumptions locally.
  3. Review each warning code and its grouped quantity and order count.
  4. Verify the current listing and historical identity before making a correction.
  5. Rerun the same fixture and record the result, owner, date, and rollback.

Sources and further reading

Related Seller Profit Guard tools

Next step: Open the Variant Risk Checker.

This is operational planning help, not tax, accounting, legal, financial, or platform-policy advice. Review the Terms and disclaimer, and verify current platform rules and fee assumptions before changing prices.