HonestScore
Scoring policy
How we turn five face-emoji ratings into the number on the pitch card.
Last updated 2026-06-28 · v1.0.0
The 5 dimensions
Critics rate every pitch on 5 DRP-anchored dimensions on a 1–5 face-emoji scale (😡 Terrible / 😕 Meh / 😐 Okay / 🙂 Good / 😃 Excellent). The set is anchored to the Direct-Response-Pitch craft: problem → proof → offer → close → recommend.
-
Problem Solved?
How well did it address a real pain I have?
problemSolved -
Proof / Believable?
Demos, evidence, testimonials — did it feel real and trustworthy?
proofBelievable -
Offer Clear & Worth It?
Value, pricing, bonuses, guarantee — would I bite?
offerClear -
Convincing / Want to Buy?
Persuasiveness and call-to-action strength.
convincingBuy -
Overall Recommendation
Would you recommend or watch again / buy from this pitcher?
overall
The v1.0.0 equation
For each rating, take the mean of the 5 dim scores. For a pitch with N valid ratings, take the mean of the per-rating means. Round to 1 decimal place.
honestScore(rating) = mean(
rating.problemSolved,
rating.proofBelievable,
rating.offerClear,
rating.convincingBuy,
rating.overall,
)
honestScore(pitch) = mean(honestScore(r) for r in ratings)
Per-rating mean, not weighted. The breakdown (per-dim means) is weight-agnostic — a future v2.0.0 can swap the rollup without changing what the widget collects. The current implementation lives in the open-source @honest-pitches/honestscore-core package.
Below-threshold copy
The headline HonestScore only appears on a pitch card once enough critics have rated it. The current threshold is 3 critics.
- 0 critics: "No ratings yet. Be the first to rate after watching."
- 1 to 2 critics: "2 of 3 ratings so far. Headline HonestScore appears at 3."
- 3+ critics: "" (the page is past the threshold; the headline score surfaces)
The same string is surfaced on the activity-feed cards (the home page / /pitches/) so the page and the feed show consistent progress copy.
History of the rebuild
The HonestScore prototype shipped a 6-dim 1–10 scale (Hype, Execution, Honesty, Helpfulness, Production, Quality). On 2026-06-12, the system was rebuilt around the 5 DRP-anchored dims above on a 1–5 face-emoji scale. This was a clean break:
- The legacy 2-dim hype/reality collection and the 6-dim shape are both gone from the data schema.
- The 5-dim
ratings_honestscorecollection is the single storage backend. - The package export
RATING_DIMENSIONSis the source of truth; the per-package lock-step test inwww/pitch-honestscore.contract.test.tspins the labels. - The "Computed with scoring v1.0.0" version stamp on the hero card and this policy page is the versioned label — a future equation change is a major-version bump.
License
The scoring equation and the dimension definitions are open-sourced under the Apache-2.0 license. See the scoring repo (the Q7 repo-extraction follow-up; the @honest-pitches/honestscore-core workspace alias is the pre-extraction home).