How the vendor transparency scores are computed
The vendor table is not an opinion ranking. Each vendor is scored by one function against the twelve signals below, from evidence recorded with a URL you can open. This page is the whole rule set, published so you can check our arithmetic and disagree with it specifically.
Methodology v1.0, published 2026-07-21The twelve signals and their weights
Weights sum to 100. The heavier a signal, the harder it is to fake: a report that resolves on the issuing lab's own portal is worth more than a claim on a product page, because you can check the first one without asking the vendor's permission.
| Signal id | What it means | Points |
|---|---|---|
| coa_thirdparty | Ships each vial with a third-party Certificate of Analysis (not in-house only) | 15 |
| coa_verifiable | The report is independently verifiable by accession or QR on the lab's own site | 15 |
| coa_lab_named | The COA names a specific, real, lookup-able independent lab | 12 |
| coa_lot_match | The lot or batch on the COA matches the lot format printed on the vial | 12 |
| coa_hplc_ms | The report shows both HPLC purity and mass-spec identity | 10 |
| coa_prepurchase | The COA is readable before you pay, not "emailed after purchase" | 8 |
| purity_realistic | Purity figures look realistic (about 98 to 99.x%), not a flawless 100% on everything | 6 |
| coverage_sku | Third-party testing covers the specific SKU, not just one hero product | 6 |
| identity_real | Real, findable business identity (reachable address or support, aged domain) | 5 |
| npc_disclosed | Transparent about net peptide content or salt form | 5 |
| card_payment | Accepts normal card payment (not crypto or gift-card only) | 4 |
| ships_domestic | Ships domestically rather than a mystery international parcel | 2 |
| Total available | 100 | |
How a score is produced
Every signal is recorded in one of three states, and each state is a literal value in the data, never a blank:
- Yes: confirmed on the check date from a source we recorded. Earns the full weight.
- No: we looked for it and it was not published. Earns nothing.
- Not checked: we could not resolve it either way, for example because a storefront was account-gated or no vial label was viewable. Earns nothing and implies nothing about the vendor.
The score is the sum of the weights of the signals marked yes, out of 100. There is no curve, no bonus, no penalty, and no editorial adjustment on top.
How confidence is computed
Confidence is the share of the twelve signals we resolved to a yes or a no and recorded a source URL for, expressed as a percentage: checked / 12. A signal with a value but no recorded URL does not count, because you would have to take our word for it.
Confidence is reported next to the score rather than folded into it, on purpose. Mixing them would let a vendor with a gated site look worse than one that published a bad answer, when in fact we simply saw less. A low confidence figure is a statement about our checking, not an accusation about the vendor.
Computed at build time, never hand-adjusted
Scores are not stored anywhere. Every number on this site is recomputed from src/data/vendors.json by scoreVendor() each time the site is built, and rendered into static HTML. There is no admin screen, no override column, and no per-vendor exception. To change a score you have to change the recorded evidence, which is visible on that vendor's page.
Commission is not an input
Because of that, the scorer is built so commission cannot reach it. scoreVendor(vendor) takes one argument and reads one field from it, the recorded signals map. It receives no affiliate flag, no payout figure, no partner tier, and no options object, so there is no parameter through which commercial interest could tilt a result, and no branch that treats one vendor's id differently from another's.
Pepora Labs is scored by that same function, on the same twelve signals, from evidence recorded the same way. On the current build it scores 72 of 100 at 92% confidence, ranking 16 of 24. Where it fails a signal, the failure is published on its own vendor page with the same evidence links as everyone else.
What the scores do not mean
This is a transparency measure for research-use-only materials. It scores what a vendor publishes and what you can independently verify. It is not a purity test, not a safety assessment, not a quality guarantee, and not medical advice. A high score means the paperwork is checkable, not that any particular vial is good. Nothing referenced on this site is intended for human or veterinary use.
Signals are recorded from what was publicly visible on the stated check date. Sites change, COAs are added, lots roll over, and gated storefronts open and close, so a value can go stale between checks.
How to file a correction
If a recorded value is wrong or has gone stale, tell us what it should be and where it can be seen. The useful form is: the vendor, the signal id from the table above, the value you believe is correct, and a URL that shows it. Vendors are welcome to file on their own behalf; the evidence is judged the same way either way, and paying us does not change a signal.
Corrections are re-checked against the same rubric, applied to the data file, and logged publicly with a date on the corrections page. Re-running the build recomputes every affected score automatically.