Trust Score Algorithm¶
Signal scoring¶
Each signal contributes 0–20 points to the composite score.
account_age¶
| Days old | Score |
|---|---|
| < 7 | 0 (triggers new_account hard flag) |
| 7–30 | 5 |
| 30–90 | 10 |
| 90–365 | 15 |
| > 365 | 20 |
Data source: eBay profile page (BTF scraper via headed Chromium + Xvfb — eBay API does not expose account registration date).
feedback_count¶
| Count | Score |
|---|---|
| 0 | 0 (triggers zero_feedback hard flag, score capped at 35) |
| 1–9 | 5 |
| 10–49 | 10 |
| 50–199 | 15 |
| 200+ | 20 |
feedback_ratio¶
| Ratio | Score |
|---|---|
| < 80% (with 20+ reviews) | 0 (triggers established_bad_actor) |
| < 90% | 5 |
| 90–94% | 10 |
| 95–98% | 15 |
| 99–100% | 20 |
price_vs_market¶
Compares listing price to the median of recent completed sales from eBay Marketplace Insights API.
| Price vs. median | Score |
|---|---|
| < 40% | 0 (triggers suspicious_price flag) |
| 40–59% | 5 |
| 60–79% | 10 |
| 80–120% | 20 (normal range) |
| 121–149% | 15 |
| 150%+ | 10 |
suspicious_price flag is suppressed when the market price distribution is too wide (standard deviation > 50% of median) — this prevents false positives on heterogeneous search results.
When no market data is available, this signal returns None and is excluded from the composite.
category_history¶
Derived from the seller's recent listing history (categories of their sold items):
| Result | Score |
|---|---|
| Seller has history in this category | 20 |
| Seller sells cross-category (generalist) | 10 |
| No category history available | None (excluded from composite) |
Composite calculation¶
This ensures missing signals don't penalize a seller — only available signals count toward the denominator.
Zero-feedback cap¶
When feedback_count == 0, the composite is hard-capped at 35 after the standard calculation. A 0-feedback seller cannot score above 35 regardless of other signals.
Partial scores¶
A score is marked partial when one or more signals are None (not yet available). The score is recalculated and the partial flag is cleared when enrichment completes.
Red flag override¶
Red flags are evaluated independently of the composite score. A seller can have a high composite score and still trigger red flags — for example, a long-established seller with a suspicious-priced listing and duplicate photos.