How the work gets done

Risk Modeler

Estimates detention and compliance risk as a transparent, sourced range.

3 min readUpdated Jul 17, 2026

Deterministic service. The only number on the Simulation screen that isn't a direct read from a regulatory source — and it's labelled as such, returned as a range, with the formula in plain view.

What it does

Given a classified, screened entry, returns the expected detention cost as a probability-weighted dollar range, plus a "cargo at risk" exclusion- scenario figure shown separately. The output is intentionally honest: this is a planning-grade scenario cost, not a CBP detention prediction.

The model exists because the question "what could go wrong, and what would it cost me?" is the most-asked importer question pre-PO. We needed a transparent answer that we can defend. A black-box LLM "this shipment has 73% risk" is not defensible; a published formula with documented bands is.

Inputs

{
  classification: { htsCode, htsChapter, confidence },
  screening:      { band, blocking, topHit },
  duty:           { effectiveRatePct, totalDutyCents },
  shipment: {
    valueCents, originCountry, mode,
  },
}

Outputs

{
  detentionProbabilityLow:  0.06,    // 6%
  detentionProbabilityHigh: 0.12,    // 12%
  delayDays: 21,                     // expected delay band
  carryingCostCents: 82_849,         // value × 12% cost-of-capital × delay/365
  responseCostLowCents:  300_000,    // legal + consultant fees, low end
  responseCostHighCents: 700_000,    // legal + consultant fees, high end
  expectedAdditionLowCents: 22_971,  // P_low × (carry + response_low)
  expectedAdditionHighCents: 93_942, // P_high × (carry + response_high)
  cargoAtRiskCents: 1_440_000,       // value × P_high = 12,000,000 × 0.12  (reported SEPARATELY, not added)
  band: 'uflpa_sensitive_geographic',
  rationale: 'China-origin, UFLPA-sensitive chapter (61, knit apparel), no entity hit',
}

When it runs

  • Every entry post-screening, post-classification — surfaces in the drawer's "Risk" panel.
  • Every Simulation — the range you see in the result panel.
  • Recomputed on broker overrides — if the broker dismisses a screening hit with a documented reason, the risk drops to the no-entity-hit band.

The formula (the whole thing)

Expected detention cost  =  P(detention)  ×  ( delay carrying cost  +  response cost )

Cargo at risk (exclusion scenario)  =  declared value × P(detention)
                                       [reported separately, NOT added]

P(detention) — bands, driven by the live screening result

Screening resultProbability band
Block hit (UFLPA / Entity List)50 – 70 %
Review-band match15 – 25 %
China-origin, UFLPA-sensitive chapter (52/54/55/61/62/64), no entity hit6 – 12 %
All other1 – 3 %

Delay carrying cost

declared value × 12% annual cost of capital × delay days / 365
ResultDelay days
Block60
Review30
UFLPA-sensitive geographic21
Clear0
ResultRange
Block$15K – $25K
Review$5K – $10K
UFLPA-sensitive$3K – $7K
Clear$0

What success looks like

MetricBarToday
Transparency — formula visible in-appYes✓ Methodology modal §7
Returned as a range, never a single numberAlways
Labeled "modelled, not a prediction" in-appAlways
Auditable per layerYes — each component sourced

We do not track recall/precision metrics on this model because we don't have ground truth (no public CBP detention dataset to evaluate against). Once Commers has its own data flywheel — real entries flowing, real detentions observed — we'll replace the heuristic bands with empirical rates per (origin × chapter × supplier-risk-band) cell.

What it does NOT do

  • Does NOT claim to predict CBP detentions. It produces a planning-grade cost so the importer can size the risk. We say this out loud in the modal.
  • Does NOT account for first-time-importer effects, broker reputation, port-specific intensive-exam rates, or commodity-specific intensive-exam patterns.
  • Does NOT sum cargo-at-risk into the expected cost. Cargo at risk is the exclusion scenario, reported separately to avoid double-counting.
  • Does NOT model FDA / FCC / USDA hold cost — those are PGA-specific with their own delay distributions. Flagged but not costed yet.
  • Does NOT apply to entries already filed and cleared — risk is a pre-file concept here.

Roadmap

  • Q4 2026 — Once we have ≥ 200 live entries, replace the broad heuristic bands with empirical detention rates per (origin × chapter × supplier-risk-band) cell.
  • Q4 2026 — Port-specific exam-rate adjustment (LAX has very different intensive-exam rates than Norfolk).
  • Q1 2027 — First-time-importer penalty (CBP applies more scrutiny to new importer numbers).
  • Q1 2027 — PGA-specific delay distributions (FDA detention is different from CBP, and the response process is different too).
Ready to see it live?

Put your own book of entries through Commers.