methodology manual

Methodology

This page documents how the archive is built: how contributors are reached, what's collected, how it's reviewed, and how statistics are calculated. It is versioned — see the change history at the end — because a method that can't be checked or revised in public isn't one worth trusting.

Recruitment

Contributors find this archive through search, our YouTube channel, and word of mouth. We do not pay for submissions, incentivize particular outcomes, or recruit through channels associated with any peptide seller or manufacturer.

What is collected

A structured form collects age range, broad region, sex, the peptide used, whether use was medically supervised, reason for use, duration, current-use status, reported effects, time to effect, discontinuation reason, concurrent substances, broad preexisting-condition categories, overall experience, and a free-text description. No name, email, phone number, address, username, or wallet address is ever requested.

Moderation

Every submission passes through an automated review for identifying details, promotional content, purchase or supplier information, dosing instructions, and disease-cure claims — then a human moderator makes the final decision. Nothing publishes automatically. Flagged submissions enter a queue with one of seven statuses: pending review, approved, rejected, needs redaction, suspected duplicate, safety escalation, or withdrawn.

Duplicate detection

Submissions are compared against recent entries using a combination of matching structured fields (peptide, region, age range, duration) and text similarity in the free-text description. A match above a set threshold is flagged as a suspected duplicate for a moderator to judge — it is never auto-rejected, since two people can legitimately report near-identical experiences.

Categorizing free text

Moderators assign standardized benefit and adverse-effect categories to each approved observation based on its free-text description, using a controlled vocabulary maintained in the administrative system. This lets the dashboard aggregate reported patterns without exposing raw free text.

How statistics are calculated

Dashboard percentages are calculated only from approved observations matching the selected filters. Every figure is shown with its sample size. Subgroup counts below the configured minimum (20, by default) are suppressed rather than displayed, to reduce the risk that a small group could be re-identified.

Suppression rule (exact specification)

The minimum-report threshold is 20 eligible observations, configurable by an Administrator but never lower than what protects individual contributors. It is enforced in two passes, before any figure reaches the dashboard's API response — never in the browser, and never by hiding a value with styling:

  • Eligible-count gate. If a filter combination narrows the eligible observation count below 20, nothing is computed or returned for that combination beyond the fact that too few observations are available — not a single statistic, however small the apparent risk.
  • Primary cell suppression. Within a shown breakdown (for example, overall experience split into positive/mixed/neutral/negative), any individual category below 20 is hidden rather than shown as a small number.
  • Complementary suppression. If hiding one category in a breakdown would let its value be recovered by subtracting the visible categories from the already-known eligible total, we additionally hide the next-smallest visible category — so subtraction reveals only a combined total for two or more hidden categories, never one individually.

Ranked lists (reported benefits and adverse effects) omit below-threshold entries entirely rather than showing a placeholder at their rank position, since a visible “(hidden)” row at a specific rank would itself disclose an approximate size.

What suppression does not fully solve

We're stating this limitation directly rather than implying broader protection than exists: an attacker able to issue many different filtered queries over time, and who can reason about the relationship between them, may in some cases reconstruct a suppressed value by differencing two independently permitted, individually-safe responses (for example, comparing a broad filter against a slightly narrower one). Per-query suppression, however complete, cannot close this entirely without tracking cumulative disclosure risk across many requests — a query-auditing system we consider future hardening rather than something already built. The dashboard limits how many queries can be made in a short period, but that is friction against automated abuse, not a privacy guarantee — we don't want to overstate what it does.

The minimum-report threshold (20) is a governance and privacy decision, not a scientifically fixed number — it will be revisited by our Ethics & Privacy Advisory Board as the archive grows, not treated as permanent by default.

Missing data

Optional fields left blank are excluded from the relevant statistic rather than treated as a negative response. We do not impute or estimate missing values.

Bias and uncertainty

This archive is not a randomized or representative population study. Contributors self-select, which introduces selection bias; free-text recall introduces recall bias; reported effects may include placebo effects; product quality varies and is unverified; and duplicate participation, though actively screened for, cannot be fully ruled out. Every public statistic is shown alongside this disclosure, not in a separate footnote.

Corrections

Errors identified in published statistics, directory pages, or prior reports are corrected publicly, with a dated entry describing what was wrong and what changed, in our correction log. We do not silently edit prior publications.

Requesting withdrawal

Contributors receive a one-time withdrawal code immediately after submitting. Entering that code on the Withdraw a Submission page removes the observation from public view and from future dashboard totals. Because submissions are anonymous, this code is the only way to identify a submission for withdrawal — we cannot recover a lost code.

What this archive is not

This is not a randomized controlled trial, not a representative sample of anyone who has used a given peptide, and not a substitute for published, peer-reviewed research or regulatory review. See our Research and Evidence section for how we treat scientific evidence separately from this archive.

version history

  • v1.0 — Initial methodology, to be published alongside the archive's public launch.