Contents
1. Why this rubric looks the way it does
The methodology is the product. Everything else is plumbing.
A scoring system for Certificates of Analysis only matters if buyers and vendors both believe it reflects how the market actually behaves. ResearchVerify is built on two principles that shape every other decision on this page.
Testing completeness over data precision
A COA showing 99.5% purity on HPLC alone tells you less than a COA showing 98.7% on HPLC plus mass-spec identity confirmation, net peptide content, sterility, and endotoxin. The second sample has been examined from multiple angles; the first has not. Our rubric rewards the second more heavily, even though its headline purity is lower.
Consumer protection is asymmetric
Underfill (less material than the label claims) is always a problem. Overfill is not. The market's actual buyers have understood this for years; a rubric that penalizes overfill is misaligned with reality. We explain this rule in depth below because it's the methodological decision people ask about most.
The rest of this page documents how those principles show up in the math.
2. The composite score
A weighted average of four independent measurements, on a 0–10 scale.
Testing protocol carries the most weight because it's the part vendors most often shortcut. Chain of custody and the Conformance Index are smaller weights because they're correctness checks, not capability measurements. A perfect score in all four components is 10.0; a typical good record sits in the 7.0–8.5 range.
Most records score below that range, and the database-wide average sits near 6.0. That is a fact about what gets submitted, not a judgment on the compounds. Because 40% of the score rewards testing completeness, a certificate reporting only purity on a single vial — no mass-spec confirmation, no net-peptide content, no sterility or endotoxin panel, one vial instead of several — is capped well below 10 even at 100.00% purity. Single-vial, purity-only certificates are the bulk of what researchers upload, so the corpus average reflects thin testing far more than it reflects bad product. A high score means a vendor tested thoroughly and the numbers were clean; a middling score usually means the testing was minimal, not that the peptide was poor. The score is only as complete as the certificate behind it — read the two together.
3. Testing protocol (40%)
Purity tier plus the depth of analytical tests performed.
The compound class system
Different compounds have different achievable purity ceilings because of how they're manufactured. A small synthetic peptide like BPC-157 routinely reaches ≥99.5% purity; recombinant HGH (191 amino acids, prone to misfolding and dimerization) reaches 94–96% in pharmaceutical-grade material. Scoring both against the same scale would over-reward small peptides and under-reward large proteins. ResearchVerify uses three compound classes.
Class A: Small peptides (≤50 amino acids)
Examples: BPC-157, TB-500, GHK-Cu, Semaglutide, Tirzepatide, Retatrutide, Ipamorelin, CJC-1295, MOTS-c
| Purity range | Tier | Points |
|---|---|---|
| ≥99.5% | Tier 1 (Excellent) | 4.0 |
| 99.0 – 99.49% | Tier 2 (Good) | 3.5 |
| 98.0 – 98.99% | Tier 3 (Acceptable) | 3.0 |
| <98.0% | Tier 4 (Poor) | 2.0 |
Class B: Large proteins (>100 amino acids)
Examples: HGH / Somatropin (191 aa), IGF-1, MGF
| Purity range | Tier | Points |
|---|---|---|
| ≥97% | Tier 1 (Excellent) | 4.0 |
| 94 – 96.99% | Tier 2 (Good) | 3.5 |
| 90 – 93.99% | Tier 3 (Acceptable) | 3.0 |
| <90% | Tier 4 (Poor) | 2.0 |
Example: HGH measured at 94.7% scores Tier 2 (3.5 pts). This is normal for recombinant HGH; scoring it as "poor" would penalize an achievable result for the compound class.
Class C: Lipidated peptides
Examples: Semaglutide (when lipid chain is separately resolved), Liraglutide
| Purity range | Tier | Points |
|---|---|---|
| ≥98% | Tier 1 (Excellent) | 4.0 |
| 96 – 97.99% | Tier 2 (Good) | 3.5 |
| 94 – 95.99% | Tier 3 (Acceptable) | 3.0 |
| <94% | Tier 4 (Poor) | 2.0 |
Additional tests beyond purity
Purity alone is not enough. A COA that shows only HPLC purity is incomplete relative to one that also confirms molecular identity, peptide content, and microbial safety. Each additional test adds points.
| Test | Points | What it confirms |
|---|---|---|
| Mass-spec confirmation | +3 | The molecule is what the label claims |
| Net Peptide Content (NPC) | +2 | Active peptide mass excluding salts and moisture |
| Sterility | +1 | No microbial growth |
| Endotoxin (LAL) | +1 | Bacterial toxins below USP <85> threshold |
Maximum is 11 raw points (4 purity + 7 additional), normalized to a 10-point scale before the 40% weight applies.
4. The overfill rule, explained
This is the methodological choice people ask about most. Here's the full reasoning.
If a vial labeled 10 mg actually contains 11.4 mg of peptide, what's the right way to score that?
Some verification systems treat any divergence from the label as a problem — over or under. The reasoning sounds rigorous: "the label is the spec; missing the spec in either direction is sloppy manufacturing." On its face, that's defensible.
But it doesn't reflect how the market actually behaves, and on closer inspection it doesn't reflect how peptide manufacturing actually works either. Two reasons.
Reason 1: Lyophilized peptides include non-peptide mass
When peptide is freeze-dried into a vial, what ends up in the vial is the active peptide plus trifluoroacetic acid (TFA) counterions, residual moisture, and trace salts. The total dry mass weighed into the vial is larger than the active peptide content. A responsible manufacturer accounts for this: they weigh in more total powder so that the active peptide hits the labeled amount. From the manufacturer's process, that looks like overfill. From the buyer's perspective, that's the labeled amount being honest.
Reason 2: Buyers price by label, not by precise active content
If a buyer pays for 10 mg labeled and receives 11.4 mg measured, the buyer has received more than they paid for. There is no scenario in which this is a defect. Penalizing the manufacturer for it forces them to dial overfill down, which transfers value from buyer to vendor, which is the opposite of what a buyer-protection rubric should do.
The asymmetric rule
Overfill receives full points (no penalty). Underfill is penalized on a sliding scale. The rubric never rewards underfill and never penalizes overfill.
The scoring table
| Quantity variance (measured ÷ labeled) | Points | Reasoning |
|---|---|---|
| Any overfill (0% to ∞) | 4 | Buyer receives at least what was paid for; no penalty |
| Underfill 0% to −5% | 4 | Within typical analytical and dispensing tolerance |
| Underfill −5% to −10% | 2 | Notable shortfall; partial credit |
| Underfill −10% to −15% | 1 | Significant shortfall |
| Underfill > −15% | 0 | Material shortfall; no credit |
Edge cases the rubric handles
Class B unit conversions: HGH and similar large proteins are labeled in International Units (IU), not milligrams. The rubric converts mg to IU using accepted ratios before computing variance. For HGH: 1 mg ≈ 3 IU. A vial labeled 36 IU measured at 13 mg of HGH converts to 39 IU actual, scoring as +8.3% overfill.
Implausible overfill (>50%): Extremely large overfill values (e.g., a vial labeled 5 mg measured at 15 mg) trigger a separate Conformance Index flag (DI-05). The label points are still awarded, but the record is flagged for human review because such large divergences usually indicate a label or measurement error, not generous overfill.
Large overfill as a dosing note (not a penalty): The reasoning above assumes the ordinary case, where a modest measured surplus is counterions, moisture, and salt rather than extra drug — no dosing consequence, and no flag. Large overfill is different: a vial measured well above its label, past what excipient mass alone explains. We still don't score it as a defect — receiving more than you paid for is not a shortfall, and that stance doesn't change. But it is worth surfacing, because if the surplus is active peptide, anyone dosing by drawing a fraction of the vial rather than reconstituting to the labeled amount will pull a proportionally larger dose than intended, and on a potent compound that is not trivial. Large overfill is therefore carried in the Conformance Index (flags QV-02 / QV-02b, and DI-05 above 50%) and shown on the record as a dosing note — flagged for the reader, never subtracted from the score. The safe response either way: reconstitute to the labeled amount and dose from that.
5. Label alignment (30%)
How well the label corresponds to what was measured.
| Element | Points | Criteria |
|---|---|---|
| Product name | 3 | Compound name on the COA matches the label claim |
| Quantity accuracy | 4 | Asymmetric scoring (see section 4) |
| Batch ID | 2 | Batch or lot number documented on the COA |
| Expiration / retest date | 1 | Some date discipline is shown |
Maximum 10 points, applied at 30% weight in the composite.
6. Chain of custody (20%)
Whether the sample's path from manufacturer to lab is documented.
This component is about whether a buyer can audit what happened to the sample before testing. Multi-vial submissions, dated receipts, and tamper-evident seals all increase confidence that the test result actually reflects what's in the buyer's vial — not a hand-picked best sample.
| Element | Points | Purpose |
|---|---|---|
| Batch ID present on vial | 15 | Manufacturing traceability |
| Single vial tested | 15 | Baseline; one sample point |
| Two vials tested | 25 | Cross-vial consistency check |
| Three or more vials | 35 | Statistical sampling |
| Receiving date documented | 15 | Custody timeline |
| Tamper-evident seal documented | 15 | Vendor → lab integrity |
| Lab custody seal applied | 20 | Lab → buyer integrity |
| Vial image matches retail photo | 0–15 | Same vial actually arrived |
Raw maximum is 115 points (the elements can stack), normalized to 10 before the 20% weight applies.
7. Conformance Index (10%)
Data anomalies that suggest the COA is wrong, manipulated, or inconsistent.
The Conformance Index is a 0–100 score built by deducting points for specific anomalies. Each anomaly has a documented code so flagged records can be audited and disputed. We publish every code we use.
Data integrity anomalies
| Code | Indicator | Penalty |
|---|---|---|
DI-01 | Purity reported above 100% (impossible) | −20 |
DI-02 | Purity reported as exactly 100.000% (improbable) | −8 |
DI-03 | Suspiciously round purity (.000 or .500) | −3 |
DI-04 | Content measurement missing entirely | −5 |
DI-05 | Content exceeds label by >50% (likely error) | −8 |
DI-06 | Class A purity below 98% (atypical) | −5 |
Temporal anomalies
| Code | Indicator | Penalty |
|---|---|---|
T-01 | Sample received and tested same day | −10 |
T-04 | Test date before receive date (impossible) | −20 |
T-05 | Test date is a weekend | −3 |
Note: a 1-day turnaround (received one day, tested the next) is normal lab workflow and carries no penalty. T-01 flags same-day-only because that's the pattern associated with fabricated COAs.
Statistical and documentation anomalies
| Code | Indicator | Penalty |
|---|---|---|
S-01 | Purity outlier >2.5σ from vendor's historical mean | −8 |
S-04 | Duplicate purity across separate samples | −3 |
D-01 | Vendor identified only by an email address | −5 |
D-02 | Very short vendor name (<4 characters) | −3 |
D-03 | First name only as vendor | −4 |
D-04 | Missing batch ID | −3 |
How the CI score maps to the composite
| CI score | Classification | Contribution to composite |
|---|---|---|
| 95–100 | Excellent (no anomalies) | 0.95–1.00 pts |
| 85–94 | Good (minor flags) | 0.85–0.94 pts |
| 70–84 | Moderate (review recommended) | 0.70–0.84 pts |
| <70 | Poor (multiple flags) | <0.70 pts |
8. BS detection
A defensive tripwire that scans every COA for pseudoscientific claims. In 10,044 records to date, zero have triggered.
Some COAs contain claims that aren't measurable scientific properties — "quantum purity," "vibrational frequency," "energy alignment." These claims are not analytical results; they are marketing language inserted into a document that should contain only analytical results. Records containing them would receive zero credit for the disputed metric and a public flag.
The validator has scanned every record in the database against the categories below. To date, no submission has triggered a BS flag. The detection logic remains active as a tripwire — both because submission patterns change over time, and because the absence of triggers is itself useful information about the labs the community is sourcing from.
| Category | Example terms |
|---|---|
| Quantum claims | quantum purity, quantum alignment, quantum resonance |
| Energy claims | energy alignment, vibrational frequency, energy certified |
| Unverifiable claims | bio-optimized, nano-enhanced, cellular harmony |
| Marketing language | premium grade, ultra pure, supreme quality |
| Fake certifications | "FDA approved" (research peptides are not FDA approved) |
Labs that accumulate two or more BS detections across separate records receive a "frequent invalid claims" badge attached to their lab profile. The badge is removable when subsequent records show no further pseudoscientific claims.
9. Credibility modifiers
The final composite score is multiplied by a modifier based on testing source.
| Source type | Modifier | Reasoning |
|---|---|---|
| Third-party laboratory | 1.0 | Baseline; independent of the vendor |
| ISO/IEC 17025 accredited lab | 1.1 | Formal quality system, audited periodically |
| Dual verified (two independent labs) | 1.2 | Cross-validation between independent sources |
| In-house vendor testing | 0.7 | Conflict of interest; vendor tests its own product |
| Manufacturer QC | 0.7 | Self-certification by the producer |
The modifier is applied after the composite is calculated, so it scales the entire score rather than any one component.
10. Worked example, end to end
A real Janoshik COA, scored from raw measurements to final composite.
Sample inputs
- Compound: TB-500 (Thymosin Beta-4) — Class A small peptide
- HPLC purity: 99.085%
- Label: 10 mg; measured content: 11.38 mg (+13.8% overfill)
- Batch ID present, single vial tested, receiving date documented
- No mass-spec, NPC, sterility, or endotoxin testing on this COA
- No tamper seal, no lab custody seal, no vial image
- Third-party lab (Janoshik), not ISO 17025 accredited
Component calculations
# Testing protocol (40% weight) Purity 99.085% (Class A, Tier 2) = 3.5 pts Additional tests: none = 0.0 pts Raw total: 3.5 / 11 max → normalized = 3.18 / 10 # Label alignment (30% weight) Product name matches = 3 pts Quantity: +13.8% overfill (full credit) = 4 pts Batch ID (20260428) present = 2 pts Expiration date absent = 0 pts Raw total: 9 / 10 = 9.00 / 10 # Chain of custody (20% weight) Batch ID on vial = 15 pts Single vial tested = 15 pts Receiving date documented (04 MAY '26) = 15 pts No tamper seal, no custody seal, no img = 0 pts Raw total: 45 / 115 → normalized = 3.91 / 10 # Conformance Index (10% weight) D-01: vendor field is an email address = −5 pts FORENSIC-02: moderate manipulation flag = −5 pts Base 100 − 10 = 90 (Good) = 9.00 / 10 # Weighted composite (3.18 × 0.40) + (9.00 × 0.30) + (3.91 × 0.20) + (9.00 × 0.10) = 1.27 + 2.70 + 0.78 + 0.90 = 5.65 / 10 # Credibility modifier: third-party lab (×1.0) Final RV Score = 5.65 / 10
This record scores in the mid range — solid purity, good label discipline (the overfill helps), but limited testing depth and minimal custody documentation. If the same vendor had submitted multi-vial testing with mass-spec confirmation and an endotoxin screen, the score would lift into the 7s. That's exactly the signal a buyer would want to see when comparing two vendors of the same compound.
11. What this rubric does NOT yet do
Honest acknowledgment of where the methodology is incomplete.
A scoring rubric is only as credible as its acknowledged limitations. ResearchVerify is open about what it currently is and isn't.
No independent sample purchasing
All COAs in the database are submitted by users (vendors or community contributors). We do not currently purchase samples ourselves and submit them for independent testing. That means coverage is uneven — popular vendors have many submissions; smaller vendors may have only a few or none.
Limited cross-lab verification
Most records are verified against a single testing lab. Cross-validation between independent labs is currently a bonus (the credibility modifier rewards it) but it isn't the default.
Authenticity scoring is statistical, not forensic
The Conformance Index and BS detection are pattern-based heuristics. They flag suspicious records for human review; they don't issue legal judgments. A record can pass all our anomaly checks and still be fabricated; conversely, a real record from a sloppy lab can trigger flags it doesn't deserve. Both happen. Every flagged record is open to community dispute.
Compound class is heuristic
The three-class system (small peptides / large proteins / lipidated peptides) is a simplification. Some compounds sit on boundaries (e.g., 50–100 amino acids). The rubric uses the class that best matches typical manufacturing process; edge cases are documented in individual compound profiles.
If you find a record where the rubric appears to score something wrong, the right action is to submit a community note on that record. Disputed records are reviewed; the rubric itself updates when systematic gaps are found.
12. Version history
The methodology has been iterated openly. Every change is documented.
| Version | Date | Changes |
|---|---|---|
| 4.2 | 2026-01-24 | Added Compound Class System (A / B / C). BS Detection section. IU/mg conversions for Class B proteins. |
| 4.1 | 2026-01-16 | Clarified temporal indicators: 1-day turnaround is normal lab workflow and not penalized. |
| 4.0 | 2026-01-12 | Updated weights to 40 / 30 / 20 / 10. Integrated Conformance Index directly into the composite score. |
| 3.0 | 2026-01-12 | Unified the PeptideWatch and Adaptive Scanner methodologies into a single rubric. |
| 2.0 | 2026-01-04 | Introduced the Tier Modifier System. Introduced asymmetric overfill/underfill scoring. |
| 1.0 | 2025-12-27 | Initial methodology, weights, and scoring layers. |
Methodology questions, dispute submissions, and proposals for rubric changes can be sent through the community channels linked in the main site footer.