How to calculate landed cost with volatile freight rates and China tariffs — 2026

3 variables verified at quote time — not assumed from a previous order

Using last month's landed cost calculation for this month's PO is the mistake. Freight rates and tariff assumptions can move independently — and neither should be carried forward from last month's PO without a fresh check. The Octo Landed-Cost Snapshot Method fixes this with 3 variables that must be verified at quote time — not assumed from a previous order: HS code → applicable tariff rate → itemized freight quote with all surcharges.

Landed cost = product cost + inland China freight + ocean/air freight + insurance + duty + tariff layers + customs/broker fees + destination handling + last-mile delivery.

What is actually happening

Seller reports from r/Alibaba describe the same failure: a quote looks profitable at 40% gross margin, the shipment arrives, the duty or tariff assumption is higher than expected, and the freight forwarder adds BAF and THC charges that weren't in the original estimate. The margin is gone before the goods reach Amazon FBA.

Landed cost calculations are breaking down because 2 independent variables are moving at the same time.

Variable 1: Freight rate volatility. Ocean freight rates have been unstable since IMO 2020 low-sulfur fuel regulations took effect. IMO 2020 added a fuel-compliance cost layer that made fuel-related surcharges more visible in many freight quotes. BAF (Bunker Adjustment Factor) surcharges, which carriers add to offset fuel cost variation, are now part of most FCL and LCL quotes — but they are not always line-itemed in the initial quote. A round-number DDP quote from a supplier's freight partner absorbs these surcharges into a single number that hides the variance.

Variable 2: Post-2025 tariff structure for China-origin goods. IEEPA executive actions in 2025 added new Chapter 99 tariff layers (codes 9903.01.xx and 9903.02.xx) on top of existing Section 301 duties. The USITC Harmonized Tariff Schedule, which is updated by CBP and published at hts.usitc.gov, reflects these changes — but the rate in the HTS database on a given date is not necessarily the rate your importer of record used on the previous shipment. Seller reports describe duty bills materially higher than expected when the tariff rate changed between orders.

Both variables require a fresh check at each quote. Assuming continuity across orders is the structural mistake.

What to check now: the Octo Landed-Cost Snapshot Method

Variable Where to verify "Wrong" looks like
HS code CROSS (CBP's Customs Ruling Online Search System) at rulings.cbp.gov, or the HTS database at hts.usitc.gov — verify the 10-digit HTS number, not the 6-digit HS code Using the manufacturer's stated HS code without independent verification; using a 6-digit code when the 10-digit code carries a different duty rate
Tariff rate USITC HTS Schedule, Chapter 99, at hts.usitc.gov — pull the current general rate + any applicable Chapter 99 IEEPA codes for the specific 10-digit HTS number Using the duty rate from the last shipment's customs entry without re-pulling; not checking for stacked Section 301 + IEEPA layers
Freight quote (FCL/LCL + surcharges) Request an itemized quote from your freight forwarder with BAF, CAF, THC, and destination handling as separate line items — not a round-number DDP total A DDP quote with no surcharge breakdown; a quote valid for "about 30 days" without specifying the BAF index date

Date-stamp rule: Record the HTS pull date and the freight quote validity date. A landed-cost sheet without dates is not a control document; it is an estimate.

Landed cost formula

Landed cost = product cost + inland China freight + ocean/air freight + insurance + duty + tariff layers + customs/broker fees + destination handling + last-mile delivery.

Red flags

  • Your freight forwarder quotes DDP as a single number with no line-item breakdown
  • Your landed cost spreadsheet uses a tariff rate from a shipment that cleared more than 60 days ago
  • The HS code on your PO came from the factory without independent verification on CROSS or hts.usitc.gov
  • The supplier says "duties are included" without specifying which duty codes they used in their calculation
  • Your freight quote is valid for "30 days" but doesn't specify the BAF calculation date

What Octo SAM would do

Before any supplier quote becomes a purchase order, SAM checks the proposed 10-digit HTS code against CROSS and hts.usitc.gov, then flags classification or tariff-assumption mismatches before the quote becomes a committed PO. SAM also pulls the current tariff rate including any Chapter 99 IEEPA layers, and requires an itemized freight quote from the freight forwarder with BAF, THC, and destination charges as separate line items. Final HTS classification decisions remain with the licensed customs broker and importer of record. The landed cost calculation is run fresh at quote time — not carried forward from a previous order.

See how the Octo Landed-Cost Snapshot Method works in SAM →

Do not reuse landed cost. Recalculate it.

Common Questions

Common questions on landed cost, freight surcharges, and China tariff rates

How often do China tariff rates change?

The USITC Harmonized Tariff Schedule is updated when CBP or the Office of the United States Trade Representative issues new actions. IEEPA-based tariff changes in 2025 moved quickly — seller reports describe multiple rate changes within a single quarter. The practical rule: pull the rate from hts.usitc.gov at the time you are calculating the PO, not from a previous shipment's entry.

What surcharges should my freight quote itemize?

At minimum: BAF (Bunker Adjustment Factor), CAF (Currency Adjustment Factor) if applicable, THC (Terminal Handling Charge) at origin and destination, and destination handling or delivery order fees. A DDP quote that does not break out these charges is rolling them into the base rate — which means you cannot identify where variance is coming from when the final bill differs from the estimate.

What is the difference between a 6-digit HS code and a 10-digit HTS number for duty calculation?

The 6-digit HS code is the international base code. The 10-digit HTS number is the US-specific classification used to calculate the applicable duty rate, including any Section 301 or IEEPA Chapter 99 layers. A manufacturer's stated HS code is often the 6-digit base. Verifying the full 10-digit HTS number on hts.usitc.gov is the check that catches duty-rate mismatches before the customs entry is filed.

Landed cost recalculated at every quote — not carried forward

Do not reuse landed cost. Recalculate it.

Octo SAM applies the Octo Landed-Cost Snapshot Method — HS code verification, current tariff rate pull including Chapter 99 IEEPA layers, and itemized freight confirmation — before any supplier quote becomes a committed purchase order.

Meet SAM →