What the score is made of
This page is generated from the code that computes the score, so it is always current. Every rule is a plain function anyone can read in api/src/heuristics. No LLMs, no paid data. If a rule is wrong, change it for everyone.
Critics
heuristics v0.1.0Is there a quality product definition? What it is, why it must exist, who it is for, what it is not.
The landing page HTML for sites, the README for GitHub repos. Fetched once at grading time.
whatThere is a clear one-line statement of what this is. We look at the title, meta description and first heading: present, between 15 and 220 characters, and not just a brand name.+20whyThere is a stated reason it needs to exist: a problem, a pain, a "because", an "instead of". Definition without a why is a feature list.+20whoIt names who it is for. "For everyone" is for no one. We look for an explicit audience ("for indie developers", "built for clinics", "if you are a landlord").+15specificityThe text contains concrete things: numbers with units, named technologies, formats, platforms. Vague text is a symptom of a vague definition. Measured as specific terms per 100 words, saturating at 3.+15scopeIt says what it is not, what it is compared to, or what it costs. Trade-offs, limitations, "unlike X", pricing and license are all evidence that someone made decisions.+10proofSigns that it is alive and used: changelog, roadmap, version numbers, dates, docs, named customers or user counts. These are cheap to check and expensive to fake for long.+10hygieneBasic sanity: the page loaded, has a title, has at least 80 words of real text, and is not a parked or placeholder page.+10slop_languagePenalty for marketing filler that says nothing: "seamless", "revolutionize", "unlock your potential", "in today's fast-paced world", "say goodbye to". Counted per 100 words; 1.5 per 100 words is the full penalty. Also penalises heavy emoji and exclamation use.-20
Positive rules sum to 100; the score is the weighted sum clamped to 0 to 100. The penalty can push a page to zero.
People
v0.1.0Do the people who find it actually use it?
Owner-attested numbers for the last 30 days: visitors, activated (took the core action), returned (activated users who came back at least once).
| 0.0% | 0 pts |
| 0.5% | 20 pts |
| 2.0% | 50 pts |
| 5.0% | 80 pts |
| 10.0% | 100 pts |
| 0.0% | 0 pts |
| 10.0% | 30 pts |
| 25.0% | 60 pts |
| 40.0% | 85 pts |
| 60.0% | 100 pts |
Fewer than 100 visitors means not enough data, not a low score. Numbers are labelled self-reported on every page. Verified analytics connections are an open contribution.
Verdict
Both halves at or above notSlop is Not Slop. Either half below slop is Slop. Everything else is Mixed. Without People data, Critics alone decides and People shows as unrated.
Not slop at 60 and above. Slop below 40.
Terms version in force: 2026-10-21. Grades keep the heuristics version they were computed with; re-grading uses the current rules.