49 suppliers scored7 FDA warning letters tracked8 closures on recordUpdated October 2026 · How scoring works
Peptide Ranking
Guide · updated 2026-10-19

How We Collect Supplier Facts: Pages Read, Fields Captured, and the Open Dataset

By the Peptide Ranking editorial team

The data-collection process behind peptideranking.org: pages read, fields captured, how not verified is handled, the CSV and JSON dataset at /data/, corrections.

Every number on this site is computed from a supplier record, and every supplier record is built the same way. This guide documents that process: which pages we read, which fields we capture, how we handle anything we could not verify, where the dataset can be downloaded and how a correction is made. The methodology page explains how records become scores. This page explains how records are made.

Principles

Three rules govern collection.

  1. Read the supplier, not the market. Facts come from the supplier’s own public pages and from public records about it. We do not collect reviews, forum opinions or our own test results.
  2. Every fact has a source. Each non-null value in a record must be traceable to a URL in that record’s sources list. If a fact has no source, it does not go in.
  3. A missing value is a fact. When a supplier does not publish something, the field is null or unknown and stays that way. We do not estimate, infer or fill from another supplier or a third party.

Which pages we read

For each supplier we open the following pages, in order, and record what they state.

Page What we look for
Home Legal or trading name, research-use-only statement, certifications claimed, headline testing statements, country or location cues
Product listings Approximate catalog size, formats (vials, pens, capsules, nasal, bulk, blends), notable products as the supplier names them, whether GLP-class products are listed, listed prices for sample items including the reference item (BPC-157, 5 mg)
Testing or certificate page Whether certificates open without login or purchase, whether they carry lot numbers, which laboratory is named, which methods appear (HPLC, mass spectrometry, endotoxin, sterility), the certificate library URL
About Founding year, stated location, company history, alternate or former names
Contact Email, phone, street address
Shipping Ships-from location, international shipping, carriers, stated dispatch time, free-shipping threshold
Returns and terms Returns policy, guarantee wording, payment methods accepted
FAQ Anything above that was not stated elsewhere

We then check public records: the FDA warning letter database (searched by legal name, brand and domain), the supplier’s trust-site profile if one is linked or findable, and independent testing aggregators where they publish results for the supplier. Aggregator findings are stored separately in trust.third_party_reports and are always attributed on the page; they are never presented as our finding.

If the supplier’s site does not load during collection, fetched_ok is set to false, the record is built only from what could be reached, and the supplier page says plainly that the site did not load and which fields are therefore unverified.

Which fields we capture

The record schema is fixed. Every supplier has every field; the only variation is whether a value is present.

Group Fields
Identity slug, name, domain, url, status (active, closed, fda_warning, unknown), fetched_ok, aka
Location and age hq_country, hq_location, founded_year
Testing third_party (yes, limited, no, unknown), labs_named, coa_public, coa_per_lot, coa_url, hplc, mass_spec, endotoxin, sterility
Catalog approx_product_count, formats, notable_products, sells_glp_class
Pricing bpc157_5mg_usd, sample_prices (up to five, each with a URL), free_shipping_threshold_usd, price_tier
Shipping ships_from, international, carriers, stated_turnaround
Payments payments (card, crypto, zelle, venmo, cashapp, ach, paypal, wire, as stated)
Trust trustpilot_url, trustpilot_score, trustpilot_count, fda_warning_letter (date and URL), reddit_presence, red_flags, green_flags, third_party_reports
Compliance certifications_claimed (as worded by the supplier), ruo_disclaimer_present
Policies and contact returns, guarantee, email, phone, address
Provenance sources (URLs), notes (two to four factual sentences)

Two conventions are worth stating. certifications_claimed records the supplier’s wording, not our assessment; a claim of “ISO certified” is stored as written and is not counted as laboratory accreditation. labs_named records only laboratories the supplier itself names on its certificates or pages; a laboratory we might guess from a logo is not entered.

How “not verified” is handled

A field we could not verify is stored as null (for numbers, dates and URLs) or “unknown” (for yes/no and categorical fields). On the supplier page the prose says the supplier does not publish that item. In the score the field earns zero points. This is deliberate and it cuts in one direction: a supplier that tests every lot but gates its certificates behind a login scores as not public, because we could not open them. The remedy is in the supplier’s hands.

We do not distinguish “we looked and it is absent” from “we could not reach the page” in the score, but we do in the record. The former is a normal null; the latter is a null on a record with fetched_ok: false, and the page says so.

Re-checks and regeneration

Records are re-checked on a rolling basis. When a field changes, the record is updated, the source URL is added or replaced, and the site is regenerated. Every page shows the month of its last regeneration, and each supplier page carries an updated date that moves when its record moves. Status changes (a supplier closing, a warning letter appearing) are applied as soon as the primary source is confirmed. Closed suppliers keep their page with status: closed so that readers who still see old recommendations elsewhere can find what the record shows.

The open dataset

The complete dataset is published on the open data page in two formats: CSV, for spreadsheets, and JSON, which is the native form of the records. Both contain the same fields listed above for every supplier on the site, including the sources lists. The scoring formula on the methodology page is applied to this file to produce the rankings, so anyone can download the data, apply the formula and reproduce the table, or apply a different formula and publish their own.

We publish the data because the alternative is asking readers to trust a number they cannot check. The record is the evidence; the score is one reading of it.

Corrections

Suppliers and readers can correct any field. The route is the contact page. A useful correction includes the supplier name, the field, the correct value and a link to the supplier’s own page (or the public record) that shows it. We verify against that link, update the record, add the link to sources, and the change appears at the next regeneration with a new updated date. We do not accept corrections by assertion alone, and we do not accept documents sent privately as a substitute for public pages, because a reader of the site must be able to follow the same source.

Corrections that remove a red flag follow the same path. A supplier that publishes its certificate library, adds a street address or names its laboratory can send the link, and the record will reflect the change.

What is not collected

We do not collect user reviews, testimonials or ratings, and none appear on the site. We do not run laboratory tests. We do not record anything about the use of any material. We do not track whether a link earns the site a referral fee as part of the record; that is handled separately and disclosed, and it plays no part in collection or scoring. The editorial policy sets out these exclusions in full.

Summary

Each supplier record is built from a fixed list of the supplier’s own pages and a fixed list of public records, into a fixed schema, with a source URL for every fact and a null for every gap. The dataset is downloadable at /data/, the formula is on the methodology page, and the correction route is the contact page. The collection process is the part of this site we most want readers to check.

Frequently asked questions

Where does the data on peptideranking.org come from?

From each supplier's own public pages (home, product, testing or certificate, about, contact, shipping and returns) and from public records such as the FDA warning letter database and trust-site profiles. Every non-null fact in a record is traceable to a URL in that record's sources list.

Does peptideranking.org test peptides or collect reviews?

No to both. We do not run laboratory tests and we do not collect, display or mark up user reviews. We read what suppliers and regulators publish and record it in a fixed set of fields.

What happens when a fact cannot be verified?

The field is stored as null or unknown, the supplier page says the supplier does not publish it, and the field earns no points. A missing value is recorded as missing; it is never estimated or filled in from another source.

Can I download the dataset?

Yes. The full supplier dataset is available as CSV and JSON on the open data page at /data/. It contains the same fields the site uses, so anyone can reproduce the ranking or check a record.

How do I correct a fact about a supplier?

Use the contact page and include a link to the supplier page that shows the correct information. Corrections are applied at the next regeneration, the record's sources list is updated, and the updated date on the supplier page changes.

Related: /methodology/ · /data/ · /editorial-policy/ · /disclosure/ · /contact/ · /guides/how-to-check-an-fda-warning-letter/ · /guides/research-peptide-supplier-red-flags/