<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: King Squishy</title>
    <description>The latest articles on DEV Community by King Squishy (@kingsquishy).</description>
    <link>https://dev.to/kingsquishy</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4236983%2Fefe56f0f-0452-406c-8b38-c91846874bf1.png</url>
      <title>DEV Community: King Squishy</title>
      <link>https://dev.to/kingsquishy</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kingsquishy"/>
    <language>en</language>
    <item>
      <title>FBA Packaging Tiers for Plush Toys: Where the Fee Actually Hides</title>
      <dc:creator>King Squishy</dc:creator>
      <pubDate>Tue, 10 Nov 2026 15:10:51 +0000</pubDate>
      <link>https://dev.to/kingsquishy/fba-packaging-tiers-for-plush-toys-where-the-fee-actually-hides-4oga</link>
      <guid>https://dev.to/kingsquishy/fba-packaging-tiers-for-plush-toys-where-the-fee-actually-hides-4oga</guid>
      <description>&lt;p&gt;Size tier boundaries are the quietest margin leak in an FBA toy business. The product does not change; the carton does, and the fee moves.&lt;/p&gt;

&lt;h2&gt;
  
  
  The boundaries that matter
&lt;/h2&gt;

&lt;p&gt;FBA fee tiers are set on the unit's packaged dimensions and weight, not the carton it ships in. That distinction trips people up constantly: the carton is what you optimise for freight, the unit packaging is what you pay FBA on.&lt;/p&gt;

&lt;p&gt;For plush and squishy toys the pressure points are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the longest side, where a 40 cm plush sits just under a boundary and a 41 cm one does not&lt;/li&gt;
&lt;li&gt;the dimensional weight divisor, which for low-density items becomes the billed weight rather than the scale weight&lt;/li&gt;
&lt;li&gt;the "packaging must survive a drop" rule, which pushes sellers toward a box that crosses a tier&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Dimensional weight, concretely
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;dim_weight_lb = (L × W × H in inches) / 139
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A squishy toy at 12×9×6 inches is 648 / 139 = 4.7 lb dimensional against maybe 0.9 lb actual. You are billed on 4.7. Compressing the packaging by an inch on the longest side takes it to 4.3 — small, but multiplied across a few thousand units it is a line item.&lt;/p&gt;

&lt;h2&gt;
  
  
  The three fixes worth doing
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Vacuum or compression packing for plush.&lt;/strong&gt; Legitimate and effective, as long as the consumer experience survives re-expansion. Test it before committing a run.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Redesign the unit carton rather than the master carton.&lt;/strong&gt; Everyone optimises the master carton because it is the visible freight number. The FBA fee lives one level down.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Split the SKU by size band.&lt;/strong&gt; A "small" and "large" variant priced with the fee difference baked in beats one SKU that is unprofitable at the top of its range.&lt;/p&gt;

&lt;h2&gt;
  
  
  The interaction with sourcing
&lt;/h2&gt;

&lt;p&gt;FBA optimisation and sourcing optimisation often disagree. Sourcing wants a bigger MOQ and a bigger carton for freight efficiency; FBA wants a smaller packaged unit. Resolving it needs both numbers on one sheet, which is the exercise in &lt;a href="https://www.kingsquishy.com/amazon-fba-toy-sourcing-guide/" rel="noopener noreferrer"&gt;our Amazon FBA toy sourcing guide&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If you are shipping direct to an Amazon fulfilment centre rather than to your own warehouse, the incoterm and duties handling matter as much as the packaging — that is covered in &lt;a href="https://www.kingsquishy.com/ddp-shipping-imported-toys/" rel="noopener noreferrer"&gt;DDP shipping for imported toys&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The habit
&lt;/h2&gt;

&lt;p&gt;Measure the packaged unit, not the product, before the PO goes out. Most tier problems are discovered after the run, when the fix costs a mould.&lt;/p&gt;

</description>
      <category>ecommerce</category>
      <category>productivity</category>
      <category>discuss</category>
    </item>
    <item>
      <title>Private Label Sampling: Five Gates Between Prototype and Production</title>
      <dc:creator>King Squishy</dc:creator>
      <pubDate>Tue, 10 Nov 2026 15:05:16 +0000</pubDate>
      <link>https://dev.to/kingsquishy/private-label-sampling-five-gates-between-prototype-and-production-3nma</link>
      <guid>https://dev.to/kingsquishy/private-label-sampling-five-gates-between-prototype-and-production-3nma</guid>
      <description>&lt;p&gt;A private label squishy toy goes through five distinct samples before production. Each one answers a different question, and each one is routinely skipped by buyers who think they are saving two weeks.&lt;/p&gt;

&lt;h2&gt;
  
  
  Gate 1 — concept sample
&lt;/h2&gt;

&lt;p&gt;Question: is this shape and texture achievable at all?&lt;/p&gt;

&lt;p&gt;Usually a hand pour, one unit, no tooling. It exists to kill ideas early. The failure mode of skipping it is paying for a mould for a shape that cannot demould cleanly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Gate 2 — tooling sample
&lt;/h2&gt;

&lt;p&gt;Question: does the mould produce the intended part?&lt;/p&gt;

&lt;p&gt;The first shots off a new mould show where material pools, where flash appears, and whether the cavity fills evenly. Expect 5-15 units and expect most of them to be wrong. Painter marks help: write the shot number on the base of each.&lt;/p&gt;

&lt;h2&gt;
  
  
  Gate 3 — pre-production sample (PPS)
&lt;/h2&gt;

&lt;p&gt;Question: does the part match the spec sheet, at production settings, using production material?&lt;/p&gt;

&lt;p&gt;This is the gate that decides whether the golden sample is the golden sample. If the material lot differs from production, the PPS is theatre.&lt;/p&gt;

&lt;h2&gt;
  
  
  Gate 4 — golden sample, sealed
&lt;/h2&gt;

&lt;p&gt;Question: what exactly will we compare the run against?&lt;/p&gt;

&lt;p&gt;Two identical sets: one held by the factory, one by the buyer, both signed and dated, both photographed with an ID card in frame. Without this, gate 5 has no reference and every argument becomes an opinion.&lt;/p&gt;

&lt;h2&gt;
  
  
  Gate 5 — production sample, drawn from the run
&lt;/h2&gt;

&lt;p&gt;Question: does the run match the golden sample?&lt;/p&gt;

&lt;p&gt;Pulled mid-run, not at the start. Start-of-run units are the easiest the line will ever produce.&lt;/p&gt;

&lt;h2&gt;
  
  
  The paperwork that makes gates real
&lt;/h2&gt;

&lt;p&gt;Each gate needs three artefacts or it did not happen: a photo set with IDs, a measurement sheet against the spec, and a signature with a date. A sample without a date is a sample you cannot argue with later.&lt;/p&gt;

&lt;p&gt;The colour question deserves its own line because it is the one that fails most often across gates. Approve a physical swatch, hold it on both sides, and state the light source you judged under — D65 and a warm factory lamp will give you two different approvals of the same part.&lt;/p&gt;

&lt;p&gt;How we structure the inspection that sits either side of these gates is in our &lt;a href="https://www.kingsquishy.com/sourcing-checklist/" rel="noopener noreferrer"&gt;sourcing checklist&lt;/a&gt;, and the tooling and mould-cost side of private label runs is covered in &lt;a href="https://www.kingsquishy.com/private-label-oem-fidget-toys/" rel="noopener noreferrer"&gt;private label and OEM fidget toys&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The cost of skipping
&lt;/h2&gt;

&lt;p&gt;A gate costs days. A failed production run costs the run, the freight, the slot and the listing. The five gates exist because the failure is cheap at gate 2 and expensive at gate 5.&lt;/p&gt;

</description>
      <category>ecommerce</category>
      <category>productivity</category>
      <category>discuss</category>
    </item>
    <item>
      <title>Inventory Sync for Dropshipped Toys: Three Places Stock Lies</title>
      <dc:creator>King Squishy</dc:creator>
      <pubDate>Tue, 10 Nov 2026 14:59:42 +0000</pubDate>
      <link>https://dev.to/kingsquishy/inventory-sync-for-dropshipped-toys-three-places-stock-lies-2n7f</link>
      <guid>https://dev.to/kingsquishy/inventory-sync-for-dropshipped-toys-three-places-stock-lies-2n7f</guid>
      <description>&lt;p&gt;Every dropshipping operation we have looked at had the same bug: three stock numbers, all different, all defensible.&lt;/p&gt;

&lt;h2&gt;
  
  
  Place one: the supplier's spreadsheet
&lt;/h2&gt;

&lt;p&gt;The supplier's stock file is usually a manual export, refreshed when someone remembers. It says 4,800 units. The physical count is 3,100 because 1,700 are allocated to another buyer's order that has not shipped.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;available = on_hand - allocated&lt;/code&gt;. Most supplier exports give you &lt;code&gt;on_hand&lt;/code&gt; and call it stock.&lt;/p&gt;

&lt;h2&gt;
  
  
  Place two: your own buffer
&lt;/h2&gt;

&lt;p&gt;You hold a safety buffer so a stockout does not kill the listing. The buffer is subtracted somewhere in your pipeline and not subtracted somewhere else. Two weeks later a customer buys the buffer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Place three: the marketplace cache
&lt;/h2&gt;

&lt;p&gt;Marketplace inventory APIs are eventually consistent. A push at 10:00 shows at 10:04, sometimes. If your sync loop reads back to confirm, it reads stale data and concludes the write failed, so it writes again.&lt;/p&gt;

&lt;h2&gt;
  
  
  What we changed
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;One authoritative number, computed not stored.&lt;/strong&gt; The sync job computes &lt;code&gt;sellable = supplier_available - buffer - pending_orders&lt;/code&gt; on every run. Nothing is cached between runs, so there is no second place for the truth to live.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Idempotent pushes keyed on a hash.&lt;/strong&gt; Each push carries &lt;code&gt;hash(sku, qty)&lt;/code&gt;. A retry with the same hash is a no-op server-side. This ends the double-write problem without needing read-back confirmation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A reconciliation report, not a dashboard.&lt;/strong&gt; Once a day, list SKUs where the three numbers disagree by more than 5%. That report is the only thing anyone reads.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Allocation made explicit.&lt;/strong&gt; We ask suppliers for allocated units per SKU in the same export. Where they cannot provide it, we assume 15% allocated as a standing haircut, which is closer than zero.&lt;/p&gt;

&lt;h2&gt;
  
  
  The cost of getting it wrong
&lt;/h2&gt;

&lt;p&gt;A stockout on a live listing is not just a lost sale. It resets the listing's sales history signal, which on most marketplaces takes weeks to rebuild. The inventory cost of holding a buffer is smaller than the ranking cost of running out.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where the buffer belongs
&lt;/h2&gt;

&lt;p&gt;The buffer size is a commercial decision, not a technical one, and it interacts with how much you buy at once. Small frequent buys shrink the buffer and raise the per-unit cost; large infrequent buys do the opposite. That trade-off is the core of &lt;a href="https://www.kingsquishy.com/dropshipping-vs-bulk-wholesale-toys/" rel="noopener noreferrer"&gt;dropshipping versus bulk wholesale for toys&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;One thing dropshipping does not change: the safety obligations stay with whoever sells to the consumer. Age grading and small-parts risk are covered in &lt;a href="https://www.kingsquishy.com/squishy-toys-safety-guide-kids/" rel="noopener noreferrer"&gt;our note on squishy toy safety for kids&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The rule
&lt;/h2&gt;

&lt;p&gt;Never store a stock number you can compute. Every stored number is a future disagreement.&lt;/p&gt;

</description>
      <category>ecommerce</category>
      <category>javascript</category>
      <category>discuss</category>
    </item>
    <item>
      <title>Why Small Carton Consolidations Run 30% Empty by Volume</title>
      <dc:creator>King Squishy</dc:creator>
      <pubDate>Tue, 10 Nov 2026 14:54:08 +0000</pubDate>
      <link>https://dev.to/kingsquishy/why-small-carton-consolidations-run-30-empty-by-volume-2595</link>
      <guid>https://dev.to/kingsquishy/why-small-carton-consolidations-run-30-empty-by-volume-2595</guid>
      <description>&lt;p&gt;A consolidated shipment of six SKUs from three suppliers sounds efficient. It usually ships at 65-70% volume utilisation, and the missing third is not a rounding error — it is paid freight.&lt;/p&gt;

&lt;h2&gt;
  
  
  The calculation, plainly
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;volume_utilisation = sum(carton_volume × carton_count) / container_usable_volume
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Usable volume is not the nominal container figure. A 40HQ is quoted at 76 m³; usable after pallets, dunnage and the fact that cartons do not tessellate perfectly is closer to 62-66 m³ for mixed cartons.&lt;/p&gt;

&lt;p&gt;If your six SKUs total 44 m³ of carton volume, you are paying for 62 m³ of ship.&lt;/p&gt;

&lt;h2&gt;
  
  
  The three reasons it empties out
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Carton dimension churn.&lt;/strong&gt; Supplier A ships 60×40×35 and Supplier B ships 58×38×34 for a similar product. Four percent per axis is eighteen percent per carton in volume terms, and the pallet pattern changes with it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Single-SKU pallets.&lt;/strong&gt; Each supplier palletises its own SKUs. Six partial pallets occupy the footprint of six pallets, and the vertical space above each stack stays empty. Mixed pallets fix this and require a warehouse step most small importers do not have.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Last-minute quantity drops.&lt;/strong&gt; One SKU gets cut after the booking is made. The container is not re-optimised; it just ships lighter while the freight stays the same.&lt;/p&gt;

&lt;h2&gt;
  
  
  What actually helps
&lt;/h2&gt;

&lt;p&gt;Modelling the load before the booking, with real carton dimensions rather than an assumed size. We keep a small script that takes carton counts and dimensions and reports the best pallet pattern and the resulting utilisation — it takes ten minutes and routinely finds 8-12 percentage points.&lt;/p&gt;

&lt;p&gt;The other lever is choosing the mode deliberately rather than by habit. Small consolidated orders often lose less money on air than on a partially filled sea container once the empty volume is priced in, which is the comparison we walk through in &lt;a href="https://www.kingsquishy.com/sea-freight-vs-air-freight-toys/" rel="noopener noreferrer"&gt;sea freight versus air freight for toys&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The MOQ interaction
&lt;/h2&gt;

&lt;p&gt;Volume utilisation and MOQ pull against each other. Rounding an order up to hit a supplier's MOQ fills the container and improves utilisation, but it also buys inventory you may not sell. Rounding down fills nothing.&lt;/p&gt;

&lt;p&gt;The useful framing is: utilisation is a cost per unit question, not a percentage to maximise. We covered the quantity side in &lt;a href="https://www.kingsquishy.com/wholesale-moq-guide/" rel="noopener noreferrer"&gt;the wholesale MOQ guide&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bottom line
&lt;/h2&gt;

&lt;p&gt;If a consolidated shipment comes in under 75% volume utilisation and nobody modelled it in advance, the freight line was a guess. Thirty percent empty is the default outcome, not bad luck.&lt;/p&gt;

</description>
      <category>ecommerce</category>
      <category>discuss</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Mapping CPSIA, EN71 and ASTM F963 onto One SKU Compliance Matrix</title>
      <dc:creator>King Squishy</dc:creator>
      <pubDate>Tue, 10 Nov 2026 14:48:26 +0000</pubDate>
      <link>https://dev.to/kingsquishy/mapping-cpsia-en71-and-astm-f963-onto-one-sku-compliance-matrix-2deo</link>
      <guid>https://dev.to/kingsquishy/mapping-cpsia-en71-and-astm-f963-onto-one-sku-compliance-matrix-2deo</guid>
      <description>&lt;p&gt;A toy sold into the US, the EU and the UK needs paperwork from three regimes that do not share a vocabulary. The failure mode is not missing certificates. It is having all of them and still being unable to answer "is SKU 4417 clear to ship to Germany next Tuesday".&lt;/p&gt;

&lt;h2&gt;
  
  
  Start from the SKU, not the standard
&lt;/h2&gt;

&lt;p&gt;The instinct is to organise compliance by certificate. That produces a folder of PDFs sorted by issuing lab, which is the one dimension nobody queries by.&lt;/p&gt;

&lt;p&gt;Organise by SKU instead, with the standard as a column:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;sku&lt;/th&gt;
&lt;th&gt;regime&lt;/th&gt;
&lt;th&gt;standard&lt;/th&gt;
&lt;th&gt;test_report_id&lt;/th&gt;
&lt;th&gt;valid_until&lt;/th&gt;
&lt;th&gt;restricted_substances&lt;/th&gt;
&lt;th&gt;age_grading&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;SQ-4417&lt;/td&gt;
&lt;td&gt;US&lt;/td&gt;
&lt;td&gt;CPSIA + ASTM F963&lt;/td&gt;
&lt;td&gt;TR-88213&lt;/td&gt;
&lt;td&gt;2027-03-01&lt;/td&gt;
&lt;td&gt;phthalates 8P&lt;/td&gt;
&lt;td&gt;3+&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SQ-4417&lt;/td&gt;
&lt;td&gt;EU&lt;/td&gt;
&lt;td&gt;EN71-1/2/3&lt;/td&gt;
&lt;td&gt;TR-88214&lt;/td&gt;
&lt;td&gt;2027-03-01&lt;/td&gt;
&lt;td&gt;19 metals&lt;/td&gt;
&lt;td&gt;3+&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SQ-4417&lt;/td&gt;
&lt;td&gt;UK&lt;/td&gt;
&lt;td&gt;UKCA (EN71 adopt)&lt;/td&gt;
&lt;td&gt;TR-88214&lt;/td&gt;
&lt;td&gt;2027-03-01&lt;/td&gt;
&lt;td&gt;19 metals&lt;/td&gt;
&lt;td&gt;3+&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;One SKU, three rows. Now "can this ship" is a filtered lookup rather than an archaeology project.&lt;/p&gt;

&lt;h2&gt;
  
  
  The fields people leave out
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;valid_until&lt;/code&gt;.&lt;/strong&gt; Test reports expire — usually one year for the lab, longer for the buyer's patience. A report with no expiry field silently becomes permanent.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;restricted_substances&lt;/code&gt; as a count, not a claim.&lt;/strong&gt; "Phthalates compliant" is not a value. "Phthalates 8P" tells you whether the report covers the six the US requires or the eight the EU asks for. The gap is where recalls live.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;age_grading&lt;/code&gt; reconciliation.&lt;/strong&gt; US age grading and EU age grading are decided on different bases and routinely disagree for the same plush. If the matrix carries one column, the disagreement gets papered over by whoever touches the file last.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where the three regimes actually diverge
&lt;/h2&gt;

&lt;p&gt;CPSIA is substance-led and applies to children's products broadly. EN71 is test-led across mechanical, flammability and migration. ASTM F963 overlaps EN71-1 heavily on mechanics but diverges on labelling and on the small-parts cylinder test for certain age bands.&lt;/p&gt;

&lt;p&gt;In practice: a report that satisfies EN71 usually gets you most of the way to ASTM F963 on mechanics, and none of the way on CPSIA's tracking-label and certificate requirements.&lt;/p&gt;

&lt;h2&gt;
  
  
  Keep it queryable
&lt;/h2&gt;

&lt;p&gt;We generate the matrix from a single CSV and render the buyer-facing PDF from it. The compliance folder becomes an output, not the source of truth. When a lab reissues a report, one row changes and both artefacts regenerate.&lt;/p&gt;

&lt;p&gt;More on how imported toys are checked against these regimes, including the Amazon-specific overlay, is in our notes on &lt;a href="https://www.kingsquishy.com/amazon-toy-safety-compliance-cpsia/" rel="noopener noreferrer"&gt;CPSIA and Amazon toy compliance&lt;/a&gt;, and the broader standards map for importers is in &lt;a href="https://www.kingsquishy.com/toy-safety-standards-certifications-importers/" rel="noopener noreferrer"&gt;toy safety standards and certifications&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The uncomfortable part
&lt;/h2&gt;

&lt;p&gt;Half the disputes we see are not about whether a test passed. They are about whether the tested item is the shipped item. The matrix does not solve that; a sealed golden sample per SKU and a photo ID per revision does.&lt;/p&gt;

</description>
      <category>ecommerce</category>
      <category>legal</category>
      <category>productivity</category>
    </item>
    <item>
      <title>A Field Normalisation Table for Supplier Quotation Sheets</title>
      <dc:creator>King Squishy</dc:creator>
      <pubDate>Tue, 10 Nov 2026 14:42:52 +0000</pubDate>
      <link>https://dev.to/kingsquishy/a-field-normalisation-table-for-supplier-quotation-sheets-k9p</link>
      <guid>https://dev.to/kingsquishy/a-field-normalisation-table-for-supplier-quotation-sheets-k9p</guid>
      <description>&lt;p&gt;Every sourcing round starts the same way: eleven suppliers, eleven spreadsheets, and no two of them agreeing on what a column is called.&lt;/p&gt;

&lt;p&gt;Before anything gets compared, we normalise. Not because the naming is wrong, but because "FOB Price" and "Unit Price (FOB Ningbo)" and "Price/PC EXW" are three different commercial offers wearing the same shirt.&lt;/p&gt;

&lt;h2&gt;
  
  
  The table
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Canonical field&lt;/th&gt;
&lt;th&gt;Aliases seen in the wild&lt;/th&gt;
&lt;th&gt;Type&lt;/th&gt;
&lt;th&gt;Rule&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;unit_price&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;FOB price, EXW price, unit cost, quotation&lt;/td&gt;
&lt;td&gt;decimal&lt;/td&gt;
&lt;td&gt;must carry a currency and an incoterm, else reject&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;incoterm&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;trade term, delivery term, shipping term&lt;/td&gt;
&lt;td&gt;enum&lt;/td&gt;
&lt;td&gt;FOB / EXW / CIF / DDP / DDU&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;moq_qty&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;MOQ, min order, starting qty&lt;/td&gt;
&lt;td&gt;integer&lt;/td&gt;
&lt;td&gt;pieces, not cartons&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;carton_qty&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;packing, pcs/ctn, QTY/CTN&lt;/td&gt;
&lt;td&gt;integer&lt;/td&gt;
&lt;td&gt;pieces per carton&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;carton_measure&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;cbm, carton size, volume&lt;/td&gt;
&lt;td&gt;decimal×3&lt;/td&gt;
&lt;td&gt;cm, L×W×H, outer dimensions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;gross_weight&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;G.W., gross wt, weight/ctn&lt;/td&gt;
&lt;td&gt;decimal&lt;/td&gt;
&lt;td&gt;kg per carton, not per piece&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;lead_time_days&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;production time, delivery, ETD&lt;/td&gt;
&lt;td&gt;integer&lt;/td&gt;
&lt;td&gt;from deposit received&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tooling_cost&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;mould fee, setup, sample charge&lt;/td&gt;
&lt;td&gt;decimal&lt;/td&gt;
&lt;td&gt;one-off, not amortised&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Eight fields. That is the whole comparison surface.&lt;/p&gt;

&lt;h2&gt;
  
  
  The three that cause the most damage
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;moq_qty&lt;/code&gt; in cartons.&lt;/strong&gt; A supplier quoting "MOQ 50" almost never means 50 pieces. If &lt;code&gt;carton_qty&lt;/code&gt; is 240, the real MOQ is 12,000 pieces and your product page just lied to you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;gross_weight&lt;/code&gt; per piece.&lt;/strong&gt; Plush and squishy toys are the worst offenders because the carton weight is dominated by packaging, not product. A per-piece reading understates freight by roughly the carton-to-product ratio, which for a 60-piece carton is close to an order of magnitude.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;lead_time_days&lt;/code&gt; from the wrong event.&lt;/strong&gt; "30 days" measured from PO date and "30 days" measured from deposit are frequently three weeks apart once the deposit clears through a different banking day.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why not just fix the template
&lt;/h2&gt;

&lt;p&gt;You can send a template. Half will fill it in, a third will reformat it, and one will send a PDF photo of a printed sheet. Normalisation on ingest is cheaper than enforcement on submission, and it survives the supplier who changes country manager halfway through the round.&lt;/p&gt;

&lt;p&gt;We keep the alias table in a single YAML file next to the parser. Adding an alias is a one-line change; arguing with a supplier about column names is a two-week change.&lt;/p&gt;

&lt;p&gt;The channel question underneath — whether you are collecting these sheets through a marketplace or through a sourcing desk — changes which aliases you see most, and we wrote about that trade-off in &lt;a href="https://www.kingsquishy.com/alibaba-vs-sourcing-desk-wholesale-squishy-toys/" rel="noopener noreferrer"&gt;marketplace listings versus a sourcing desk&lt;/a&gt;. The upstream view of the whole cycle is in our &lt;a href="https://www.kingsquishy.com/sourcing-squishy-toys-china-guide/" rel="noopener noreferrer"&gt;guide to sourcing squishy toys from China&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The one rule that matters
&lt;/h2&gt;

&lt;p&gt;If a field cannot be typed, it does not enter the table. A supplier reputation note is useful context; it is not a column. Keeping the comparison surface small is what makes the eleventh spreadsheet cost the same as the second.&lt;/p&gt;

</description>
      <category>ecommerce</category>
      <category>productivity</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Version Control for Product Specs: Stop Losing Colour Approvals</title>
      <dc:creator>King Squishy</dc:creator>
      <pubDate>Tue, 10 Nov 2026 14:34:42 +0000</pubDate>
      <link>https://dev.to/kingsquishy/version-control-for-product-specs-stop-losing-colour-approvals-1bc5</link>
      <guid>https://dev.to/kingsquishy/version-control-for-product-specs-stop-losing-colour-approvals-1bc5</guid>
      <description>&lt;p&gt;The worst dispute I have been part of was not about quality. It was about which of nine near-identical photographs represented the approved colour.&lt;/p&gt;

&lt;p&gt;Nobody was lying. There were simply nine photographs called things like &lt;code&gt;final&lt;/code&gt;, &lt;code&gt;final2&lt;/code&gt;, &lt;code&gt;approved_v3&lt;/code&gt;, and &lt;code&gt;use this one&lt;/code&gt;, spread across three email threads and two messaging apps.&lt;/p&gt;

&lt;h2&gt;
  
  
  The convention
&lt;/h2&gt;

&lt;p&gt;Specs now carry a version identifier that encodes three things: the design, the revision, and the date. &lt;code&gt;SQ-114-R3-2026-03-11&lt;/code&gt;. Revision numbers only go up. A revision is never edited in place.&lt;/p&gt;

&lt;p&gt;Colour approvals are a separate object with their own identifier, and the approval record names the physical swatch that was signed off, not just a photograph. The photograph is evidence about the swatch, not a substitute for it.&lt;/p&gt;

&lt;h2&gt;
  
  
  The changelog
&lt;/h2&gt;

&lt;p&gt;Every revision gets one line: what changed and why. Not a diff, a sentence. Ten revisions of a squishy toy spec is maybe half a page of history, and it answers the only question that ever comes up — "when did this change and did we agree to it".&lt;/p&gt;

&lt;p&gt;This is unglamorous and it has saved more money than any negotiation I have been in.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why it belongs with operations, not design
&lt;/h2&gt;

&lt;p&gt;Designers treat versions as work in progress. Operations needs versions as commitments. The same identifier has to serve both, which means the version has to be cut at a moment everyone can point to — usually when a sample is approved and a proforma is issued.&lt;/p&gt;

&lt;p&gt;The approval gate itself is described in our note on &lt;a href="https://www.kingsquishy.com/private-label-oem-fidget-toys/" rel="noopener noreferrer"&gt;private label and OEM production&lt;/a&gt;, and the earlier step is covered under &lt;a href="https://www.kingsquishy.com/toy-safety-standards-certifications-importers/" rel="noopener noreferrer"&gt;toy safety standards for importers&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Minimum viable version control
&lt;/h2&gt;

&lt;p&gt;One identifier scheme, monotonic revision numbers, and a one-line changelog. A shared spreadsheet is enough. The failure mode is not the tool, it is that nobody agrees on when a version becomes a commitment.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written by Zhao Jin, sales at Yiwu Jinji Trading Company (King Squishy), a Yiwu-based supplier of wholesale squishy and fidget toys working with partner workshops. &lt;a href="mailto:support@kingsquishy.com"&gt;support@kingsquishy.com&lt;/a&gt; · WhatsApp +86 182 6776 0712.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>beginners</category>
      <category>discuss</category>
    </item>
    <item>
      <title>Assortment Maths: How Many SKUs Fit in One Carton Before Margins Disappear</title>
      <dc:creator>King Squishy</dc:creator>
      <pubDate>Tue, 10 Nov 2026 14:30:42 +0000</pubDate>
      <link>https://dev.to/kingsquishy/assortment-maths-how-many-skus-fit-in-one-carton-before-margins-disappear-305</link>
      <guid>https://dev.to/kingsquishy/assortment-maths-how-many-skus-fit-in-one-carton-before-margins-disappear-305</guid>
      <description>&lt;p&gt;Mixed cartons are the standard way small buyers get variety without holding deep stock on any single design. They also quietly cost money, and the cost is not where people look for it.&lt;/p&gt;

&lt;p&gt;The obvious cost is a higher unit price, since suppliers price mixed assortments above single-design runs. The less obvious cost is packing efficiency: a carton filled with eight different shapes wastes more void space than one filled with a single shape, so you ship more cubic metres for the same piece count.&lt;/p&gt;

&lt;h2&gt;
  
  
  Working it through
&lt;/h2&gt;

&lt;p&gt;Take a carton that holds 200 pieces of one design. Introduce six designs of differing sizes and the practical capacity drops to somewhere around 160 to 175, because the packer cannot nest different shapes tightly.&lt;/p&gt;

&lt;p&gt;That is a 12 to 20% increase in volume per piece. On a 300 carton order it is enough to change the freight bracket, and it lands entirely on the buyer.&lt;/p&gt;

&lt;h2&gt;
  
  
  The counterweight
&lt;/h2&gt;

&lt;p&gt;Against that, mixed cartons dramatically reduce inventory risk. A buyer testing a market would rather hold six shallow positions than one deep one, and the markdown exposure on unsold stock is usually larger than the freight delta.&lt;/p&gt;

&lt;p&gt;So the question is not "is mixed packing worse". It is "at what order size does the freight penalty overtake the inventory benefit".&lt;/p&gt;

&lt;p&gt;Our rough rule: below about 400 pieces total, mix freely. Between 400 and 1500, mix within shape families so packing stays tight. Above 1500, split into single-design cartons and take the variety at carton level rather than piece level.&lt;/p&gt;

&lt;p&gt;Quantity rules are set out in &lt;a href="https://www.kingsquishy.com/wholesale-moq-guide/" rel="noopener noreferrer"&gt;the wholesale MOQ guide&lt;/a&gt;, and the channel side is covered under &lt;a href="https://www.kingsquishy.com/dropshipping-vs-bulk-wholesale-toys/" rel="noopener noreferrer"&gt;dropshipping versus bulk wholesale&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The measurable version
&lt;/h2&gt;

&lt;p&gt;Track pieces per cubic metre, not pieces per carton. That single ratio makes the tradeoff visible and comparable across suppliers.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written by Zhao Jin, sales at Yiwu Jinji Trading Company (King Squishy), a Yiwu-based supplier of wholesale squishy and fidget toys working with partner workshops. &lt;a href="mailto:support@kingsquishy.com"&gt;support@kingsquishy.com&lt;/a&gt; · WhatsApp +86 182 6776 0712.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ecommerce</category>
      <category>discuss</category>
      <category>productivity</category>
    </item>
    <item>
      <title>A Supplier Scorecard You Can Run in a Spreadsheet</title>
      <dc:creator>King Squishy</dc:creator>
      <pubDate>Tue, 10 Nov 2026 14:25:04 +0000</pubDate>
      <link>https://dev.to/kingsquishy/a-supplier-scorecard-you-can-run-in-a-spreadsheet-3189</link>
      <guid>https://dev.to/kingsquishy/a-supplier-scorecard-you-can-run-in-a-spreadsheet-3189</guid>
      <description>&lt;p&gt;For a long time our supplier ranking lived in one person's head. That works until that person is on holiday and a reorder needs a decision.&lt;/p&gt;

&lt;p&gt;What replaced it is deliberately small: five columns, weights that sum to one hundred, and a rule that a supplier has to be scored twice before the number counts.&lt;/p&gt;

&lt;h2&gt;
  
  
  The five columns
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;On-time rate&lt;/strong&gt; (weight 30) — shipments that left within the confirmed window, over the last twelve&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Defect rate&lt;/strong&gt; (weight 25) — major plus critical defects per thousand units&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Spec fidelity&lt;/strong&gt; (weight 20) — did the delivered goods match the approved sample without a rework loop&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Response time&lt;/strong&gt; (weight 15) — median hours to a substantive reply, not to an acknowledgement&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Documentation&lt;/strong&gt; (weight 10) — packing list, inspection report, and photos arriving complete and on time&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The weights are opinionated on purpose. On-time and defect rate together carry more than half because those two decide whether a reorder is safe.&lt;/p&gt;

&lt;h2&gt;
  
  
  The two-scoring rule
&lt;/h2&gt;

&lt;p&gt;A single score is noise. A supplier can have one bad month for reasons outside their control, and one good month because nothing was difficult. Scoring at the point of each shipment and averaging over at least two gives a number stable enough to act on.&lt;/p&gt;

&lt;p&gt;We keep the raw events, not just the average, because the reason behind a miss matters more than the miss.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it changed
&lt;/h2&gt;

&lt;p&gt;Two suppliers we thought were strong turned out to be strong on price and weak on documentation. One we had written off scored well once the sample-size problem was fixed. Neither conclusion was available from memory.&lt;/p&gt;

&lt;p&gt;The scorecard only works if the underlying records exist. Our notes on &lt;a href="https://www.kingsquishy.com/alibaba-vs-sourcing-desk-wholesale-squishy-toys/" rel="noopener noreferrer"&gt;sourcing desks versus Alibaba&lt;/a&gt; and on &lt;a href="https://www.kingsquishy.com/sourcing-squishy-toys-china-guide/" rel="noopener noreferrer"&gt;the China sourcing guide&lt;/a&gt; describe the two records that feed most of the columns.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start small
&lt;/h2&gt;

&lt;p&gt;Five columns and a rule about sample size beats a twelve-factor model nobody fills in.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written by Zhao Jin, sales at Yiwu Jinji Trading Company (King Squishy), a Yiwu-based supplier of wholesale squishy and fidget toys working with partner workshops. &lt;a href="mailto:support@kingsquishy.com"&gt;support@kingsquishy.com&lt;/a&gt; · WhatsApp +86 182 6776 0712.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>ecommerce</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Low-Density Cargo: Why Toy Cartons Cost More to Ship Than They Weigh</title>
      <dc:creator>King Squishy</dc:creator>
      <pubDate>Tue, 10 Nov 2026 14:19:30 +0000</pubDate>
      <link>https://dev.to/kingsquishy/low-density-cargo-why-toy-cartons-cost-more-to-ship-than-they-weigh-3h3l</link>
      <guid>https://dev.to/kingsquishy/low-density-cargo-why-toy-cartons-cost-more-to-ship-than-they-weigh-3h3l</guid>
      <description>&lt;p&gt;Soft toys are close to the worst case for air freight and a strangely common surprise for sea freight. The goods are light, the cartons are large, and the carrier charges whichever number is bigger.&lt;/p&gt;

&lt;p&gt;For air, the divisor is typically 6000 in centimetres: length × width × height ÷ 6000 gives the chargeable kilos. A carton measuring 60 × 50 × 40 cm is 120,000 cm³, which is 20 chargeable kilos regardless of whether it weighs six.&lt;/p&gt;

&lt;p&gt;That ratio — six actual kilos against twenty chargeable — is normal for plush and squishy goods. It means a "cheap per kilo" freight quote can be 3× the real cost once volumetric weight applies.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where the leverage is
&lt;/h2&gt;

&lt;p&gt;Three levers, in order of effect:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Carton dimensions.&lt;/strong&gt; Two centimetres off each side on a 60×50×40 carton removes about 6% of volumetric weight. It compounds across a whole order.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Compression packing.&lt;/strong&gt; Vacuum or press packing reduces volume directly, at the cost of some shape recovery risk on denser foam.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Mode choice.&lt;/strong&gt; For anything above roughly two cubic metres, sea LCL usually wins on cost even with the longer transit; air only makes sense for samples and replenishment.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The trap in lever two is that over-compression damages slow-recovery foam, and the damage shows up weeks after arrival, not at inspection.&lt;/p&gt;

&lt;h2&gt;
  
  
  Doing the maths before the quote
&lt;/h2&gt;

&lt;p&gt;The only reliable approach is to compute chargeable weight per carton from the packing list, sum it, and compare that against the quote's basis. If a forwarder quotes per actual kilo on soft goods, ask which divisor they used.&lt;/p&gt;

&lt;p&gt;Mode choice is compared in &lt;a href="https://www.kingsquishy.com/sea-freight-vs-air-freight-toys/" rel="noopener noreferrer"&gt;sea freight versus air freight for toys&lt;/a&gt;, and the trade-term implications sit under &lt;a href="https://www.kingsquishy.com/ddp-shipping-imported-toys/" rel="noopener noreferrer"&gt;DDP shipping for imported toys&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  One line summary
&lt;/h2&gt;

&lt;p&gt;On soft goods, buy cubic metres, not kilos.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written by Zhao Jin, sales at Yiwu Jinji Trading Company (King Squishy), a Yiwu-based supplier of wholesale squishy and fidget toys working with partner workshops. &lt;a href="mailto:support@kingsquishy.com"&gt;support@kingsquishy.com&lt;/a&gt; · WhatsApp +86 182 6776 0712.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ecommerce</category>
      <category>discuss</category>
      <category>productivity</category>
    </item>
    <item>
      <title>AQL Sampling for Small Orders: The Part Nobody Explains Well</title>
      <dc:creator>King Squishy</dc:creator>
      <pubDate>Tue, 10 Nov 2026 14:13:41 +0000</pubDate>
      <link>https://dev.to/kingsquishy/aql-sampling-for-small-orders-the-part-nobody-explains-well-2m98</link>
      <guid>https://dev.to/kingsquishy/aql-sampling-for-small-orders-the-part-nobody-explains-well-2m98</guid>
      <description>&lt;p&gt;AQL tables were designed for production runs measured in thousands. Most first orders are not that. When you apply a general inspection level II to six hundred pieces you get a sample size of fifty and an accept number that makes almost any real defect pattern pass.&lt;/p&gt;

&lt;p&gt;People then conclude the table is broken. It is not; the table is answering a different question than the one being asked.&lt;/p&gt;

&lt;h2&gt;
  
  
  Two questions, two tools
&lt;/h2&gt;

&lt;p&gt;Question one: &lt;em&gt;is this lot within an acceptable defect rate?&lt;/em&gt; That is the sampling table's job, and for small lots it is genuinely weak because the confidence interval is wide.&lt;/p&gt;

&lt;p&gt;Question two: &lt;em&gt;does this lot look like the approved sample?&lt;/em&gt; That is not a statistical question at all. It is a comparison, and it needs the approved sample physically present at the inspection.&lt;/p&gt;

&lt;p&gt;Small orders usually need question two answered properly and question one answered approximately. Getting that backwards is how buyers end up with statistically defensible reports and a carton that still disappoints.&lt;/p&gt;

&lt;h2&gt;
  
  
  What we changed in practice
&lt;/h2&gt;

&lt;p&gt;For orders under about a thousand pieces we now run a fixed structural sample — every colourway, every size, every packing variant, at least five units each — plus a full count of critical defects across everything opened. It is not AQL. It is coverage.&lt;/p&gt;

&lt;p&gt;The statistical justification for that approach is thin and the practical justification is strong: most small-order failures are not rate problems, they are "one variant was made wrong" problems, and rate sampling is specifically bad at finding those.&lt;/p&gt;

&lt;p&gt;Notes on how sample approval feeds into that comparison are in &lt;a href="https://www.kingsquishy.com/sourcing-squishy-toys-china-guide/" rel="noopener noreferrer"&gt;our guide to sourcing squishy toys from China&lt;/a&gt;, and the quantity side is covered under &lt;a href="https://www.kingsquishy.com/wholesale-moq-guide/" rel="noopener noreferrer"&gt;the wholesale MOQ guide&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Practical rule
&lt;/h2&gt;

&lt;p&gt;Match the method to the order size, and say out loud which question you are answering. Half the disputes I have seen came from a report that quietly answered the wrong one.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written by Zhao Jin, sales at Yiwu Jinji Trading Company (King Squishy), a Yiwu-based supplier of wholesale squishy and fidget toys working with partner workshops. &lt;a href="mailto:support@kingsquishy.com"&gt;support@kingsquishy.com&lt;/a&gt; · WhatsApp +86 182 6776 0712.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>ecommerce</category>
      <category>productivity</category>
    </item>
    <item>
      <title>What a Pre-Shipment Inspection Report Should Contain (and What Ours Kept Missing)</title>
      <dc:creator>King Squishy</dc:creator>
      <pubDate>Tue, 10 Nov 2026 14:08:52 +0000</pubDate>
      <link>https://dev.to/kingsquishy/what-a-pre-shipment-inspection-report-should-contain-and-what-ours-kept-missing-53fa</link>
      <guid>https://dev.to/kingsquishy/what-a-pre-shipment-inspection-report-should-contain-and-what-ours-kept-missing-53fa</guid>
      <description>&lt;p&gt;Most inspection reports I receive are one page of prose and four photographs. They read fine at the time and are useless eight weeks later when a buyer in another country opens the carton and disagrees.&lt;/p&gt;

&lt;p&gt;The problem is not diligence. It is that a report written as narrative cannot be queried.&lt;/p&gt;

&lt;h2&gt;
  
  
  The fields that make a report reusable
&lt;/h2&gt;

&lt;p&gt;After enough arguments about what was "checked", we rebuilt the template around fields rather than sentences:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;sample_size&lt;/code&gt; and &lt;code&gt;lot_size&lt;/code&gt; — a percentage is not a sample, it is a mood&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;aql_level&lt;/code&gt; — stated, even when the buyer did not ask&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;defect_class&lt;/code&gt; — critical / major / minor, with the count in each&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;measurement_rows&lt;/code&gt; — the actual number, the tolerance, and pass/fail per unit&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;photo_ids&lt;/code&gt; — one identifier per photo, referenced from the row it proves&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That last one is the one people skip and the one that matters most. A photo without an ID gets detached from its context the moment it leaves the camera.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where the argument actually happens
&lt;/h2&gt;

&lt;p&gt;In practice the disputes cluster in three places: colour against the approved swatch, filled weight versus quoted weight, and carton dimensions versus the booking.&lt;/p&gt;

&lt;p&gt;The first needs a physical approved sample held on both sides. The second needs a scale reading in the report, not an adjective. The third needs a tape measure in frame.&lt;/p&gt;

&lt;p&gt;A report that carries all three is boring to read and settles almost everything. More on how we structure the photo set and what we require before a balance payment is released is in our notes on &lt;a href="https://www.kingsquishy.com/sourcing-checklist/" rel="noopener noreferrer"&gt;pre-shipment photos&lt;/a&gt;, and the compliance side of the same checklist is documented in the &lt;a href="https://www.kingsquishy.com/toy-safety-guide/" rel="noopener noreferrer"&gt;toy compliance walkthrough&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The takeaway
&lt;/h2&gt;

&lt;p&gt;If your inspection report cannot be filtered by defect class, it is a letter, not a record.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written by Zhao Jin, sales at Yiwu Jinji Trading Company (King Squishy), a Yiwu-based supplier of wholesale squishy and fidget toys working with partner workshops. &lt;a href="mailto:support@kingsquishy.com"&gt;support@kingsquishy.com&lt;/a&gt; · WhatsApp +86 182 6776 0712.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ecommerce</category>
      <category>productivity</category>
      <category>discuss</category>
    </item>
  </channel>
</rss>
