# Methodology
Publishing the standard has a cost: it leaves us no room to fudge afterwards. That is the point. A ranking that won't say how it ranks is indistinguishable from an ad slot.
1. What counts as a breakout
We ignore launch-day noise and look only at real traction in public signals. Each source is calibrated on its own scale — 300 GitHub stars and 300 Product Hunt upvotes are not the same event, and one number across both yields only noise.
| Source | Signal | Trigger | Recency |
|---|---|---|---|
| GitHub | growth rate | 300 stars/day | within 8 days |
| Hacker News | current heat | 120 points | within 7 days |
| ProductHunt | current heat | 120 upvotes | within 5 days |
| current heat | 150 upvotes | within 7 days |
↑ These numbers are emitted live by the system, not typed by hand. If a threshold changes, this page changes with it — the page can never describe a rule we aren't actually running.
2. Why recency is required
A project that had ten thousand stars three years ago and still has ten thousand stars today is not breaking out — it is a stock figure. So every source carries a recency window (last column above). We are trying to catch the moment something starts moving, not the state of being large.
3. Tiers and de-duplication
Each source has multiple thresholds, and a product is recorded at most once per tier — otherwise a steadily climbing project would flood the log. When we first discover a product we set its baseline tier and do not record a breakout: us noticing it is not the same as it starting to grow.
4. The breakout log is append-only
Not a promise — a database constraint. Two triggers on breakout_event ABORT any write that attempts to modify or delete the fact columns (timestamp, value, tier, source) of an existing record:
CREATE TRIGGER trg_breakout_no_edit BEFORE UPDATE ON breakout_event
... BEGIN SELECT RAISE(ABORT, 'breakout_event is append-only'); END
Why go that far: a radar that quietly rewrites its own past calls is worthless. Wrong calls stay up — you can use them to audit our hit rate, which is exactly what we want you to do.
5. Where the teardown judgments come from
Each agent's teardown (job to be done, target market, pricing, autonomy level) is produced by a model reading public material, under three rules:
- Every judgment carries a quote — the claim and its evidence are stored together, so you can check it on the spot.
- If it can't be read, it stays blank — an empty field is honest; a guessed field is contamination.
- Numeric consistency guarding — traction figures in the text are checked against structured data, and anything off by an order of magnitude is treated as fabricated and the whole sentence is dropped (we don't strip the number and keep the sentence — a half-true sentence is more dangerous).
6. What we don't do
- We don't sign up, run tasks, or hands-on test. We measure public signals, not benchmark scores — which is why we never use the word "tested".
- We don't sell placement. No promoted slots, no bidding, no "partners first".
- We don't recommend on vibes. Ordering comes from metrics, not editorial preference.
7. Known limits of this method
- We only see public signals. Enterprise deployments, sales-led growth, closed contracts — real traction that isn't public is invisible to us. Absence from the log is not evidence of weakness.
- Thresholds are deliberately loose. The current tier favours catching more over missing any, and the cost is noise. Narrowing happens downstream in review.
- Collection is periodic polling, not a real-time stream. That is why we say "continuous", never "real-time".
- A number with no structured anchor cannot be disproven. In that case we let it through rather than delete it — we don't fabricate data, and we also can't delete possibly-true data just because we failed to verify it.
8. Sources
Product Hunt · Hacker News · GitHub · HuggingFace Spaces · Reddit · Lobsters · TrustMRR, plus open community submissions. All publicly accessible; per-source triggers are in the table above.
Every call is inspectable in the breakout log: when we judged it, what it was then, what it is now.