Methodology
How we rank vendors
Every vendor on AminoCatalog has a single composite score from 0 to 100 that drives ordering on the directory and on every peptide page's vendor table. Five signals, transparent weights, audited right here.
The five signals
- 1Bayesian rating. Average star rating, adjusted toward the site-wide mean for vendors with few reviews so that a single 5-star review does not outrank a vendor with many 4.5-star reviews.
- 2Review volume. Total count of approved reviews on a logarithmic curve. The first ten reviews matter more than the next ten.
- 3Recency. Recent reviews count more than old ones, with exponential decay. Half-life is configurable; the default is 180 days.
- 4Response rate. For reviews rated three stars or lower, did the vendor reply within two weeks? Vendors with no negative reviews score 100 here.
- 5Trust signals. Four binary checks worth 25 points each: verified business docs, paid subscription tier, account age past six months, and no open flags.
Current weights
| Signal | Weight |
|---|---|
| Bayesian rating | 0.50 |
| Review volume | 0.15 |
| Recency | 0.15 |
| Response rate | 0.10 |
| Trust signals | 0.10 |
The formula
composite_score = ( bayesian_component * 0.50 + volume_component * 0.15 + recency_component * 0.15 + response_component * 0.10 + trust_component * 0.10 ) × tier_multiplier
Each component is normalized to a 0–100 range before weighting. Tier multipliers are free × 1.00, verified × 1.05, featured × 1.10. The final score is capped at 100.
Tie-breaking
When two vendors score within 1 point, we break ties by review count first, then by account age.
Conflict of interest
Featured placements are clearly labeled. The tier multiplier is a small lift, not a domination effect — a featured vendor with weak reviews still loses to a free vendor with strong reviews.