Scoring Standards

Scoring Standards — How We Score Cookware

Every number on this site comes from one place and one process. Scores are computed offline in Python from aggregated Amazon review data (2023 vintage) and shipped as static, versioned bundles; the website and API only read and display them. Nothing is scored in the browser, and no score is hand-written.

The six dimensions

# Dimension Weight Direction What it measures
1 Complaint Rate 30% lower is better Share of reviews reporting defects (coating peeling, warping, sticking, etc.)
2 Durability 25% higher is better Long-term performance signals from reviews written 1+ year after purchase
3 Review Consistency 15% higher is better Rating variance and trend stability over time
4 Long-term Satisfaction 15% higher is better Positive ratio among year-2+ reviews
5 Maintenance Ease 10% higher is better Clean / rust / dishwasher / seasoning signals
6 Warranty Signals 5% higher is better Warranty and guarantee mentions

Rationale: common defects of cookware (coating peeling, uneven heating, and similar issues) account for the vast majority of negative reviews, so complaint rate and durability carry the highest combined weight (60%). Authentic functional praise and repurchase recommendations are auxiliary references (25% and 15% in the underlying keyword model) that round out the picture of real-world use.

Formula

overall_score = 0.30·complaint_rate_score
              + 0.25·durability_score
              + 0.15·review_consistency_score
              + 0.15·long_term_satisfaction_score
              + 0.10·maintenance_ease_score
              + 0.05·warranty_signals_score

Each dimension is normalised to 0–100. complaint_rate_score is inverted so that a higher value always means better. The score fields exposed by the API are complaint_rate_score, durability_score, review_consistency_score, long_term_satisfaction_score, maintenance_ease_score, warranty_signals_score, and overall_score.

Signals we look for

Positive signals (raise the relevant dimension): even heating, durable, easy to clean, good coating, scratch resistant.

Negative signals (lower the relevant dimension): coating peeling, hard to clean, uneven heating, warping, deformation.

Data sources

Layer Source
Reviews UCSD Amazon Reviews 2023 (Home & Kitchen), aggregated
Product metadata Amazon product metadata snapshot (2023)
Aggregation cookware.db — product scores, problem prevalence, long-term trend, brand rollups
Publication Static JSON bundles + REST/MCP API (data.amzreviewsdata.com, api.amzreviewsdata.com)

Small-sample rule (enforced)

  • Products and brands with fewer than 3 samples are marked insufficient_data and receive no score, percentage, or ranking.
  • We show raw review excerpts (if any) with an explicit “insufficient data” label instead.
  • No-evidence products are down-weighted, never silently removed — an absence of evidence is not evidence of a defect.

Coverage (as of 2026-09-17)

We publish the coverage of our own scoring, not just the method, so you can judge how much of the category is actually measured:

Layer Scored Above the small-sample threshold
Products 43,093 21,482 (sufficient, sample ≥ 3)
Brand rollups 3,166 669
Underlying per-ASIN yearly rating rows 2,720,045 —

Of the 1,186,539 products in the indexed catalog, 3.6% carry a six-dimension product score — the rest have no review evidence that meets the threshold and are shown without a score. The 21,611 products scored but marked insufficient are displayed with an explicit label rather than a ranking. Brand names are normalised from 9,299 raw spellings to 3,251 canonical brands before rollup, so CAROTE and Carote are one entity.

Disclosure

  • Data vintage is 2023; prices and availability are snapshots, not real-time.
  • We never distribute raw reviews. Only aggregates, counts, rates, and short representative quotes are returned.
  • brand_score is a 0–100 rollup over a brand’s products using the same six dimensions; it inherits the small-sample rule above.

Methodology version: 2026-09. Weights are defined in config/scoring_weights.json and applied by the offline scoring pipeline.

Category scoring pages not yet generated. Run: python3 scripts/generate_scoring_standards.py --all
Share