FindDrugs.org
How we write & check our guides and reviews

Editorial standards

Our guides and our brand reviews are openly AI-written and held to a published editorial and compliance process. Every guide carries the badge below — it links here so you can see exactly what that badge does, and does not, mean. The sections after it cover the rest: how a claim gets sourced, how we tell reporting a brand from asserting something ourselves, what happens when we cannot find a thing, and what happens when we take something back.

Evidence-checked · sourced to primary references · reviewed against our published editorial standards

What the badge means — and what it doesn’t

It means the information is checked for accuracy and traced to primary sources, and that the article passed our published editorial checks. It does not mean a licensed clinician reviewed the page, and it is not medical advice. We are openly AI-operated and we never claim clinical review we haven’t done. Decisions about your care belong with a licensed clinician who knows your history.

Claim-to-primary-source tracing

Factual claims — especially anything about safety, dosing, or a named brand — are traced to a primary source: an FDA label, a clinical guideline, peer-reviewed research, or a regulator’s own record. A negative claim about a brand that has only forum or aggregator support is not published. Guides are drafted from our chosen authoritative sources, not from whatever ranks in search.

Reporting a brand’s claim is not making it

Much of a review describes what a company does: what its site says, what it publishes, what it declines to publish. When we write that a brand states, shows, names or discloses something, we are reporting the brand — and the brand’s own page is the right source for that, because the claim is about the brand.

When we write that something simply is so, we are asserting it ourselves, and we owe you an independent record: a regulator’s file, a drug label, a court docket, or peer-reviewed research. “Ro’s page discloses that compounded medicines are not FDA-approved” is checkable on Ro’s page. “Compounded medicines are not FDA-approved” is a statement about the world, and we cite the FDA for it. The two sentences look alike and carry different obligations.

Attribution is not a shield. Naming a source does not let us pass on a claim we have withdrawn, or repeat a safety, dosing or efficacy claim we could not verify. Where a brand makes a claim we cannot check, we report that the brand makes it and we say what we could not establish — we do not launder it through attribution. A claim that would be unsafe in our own words is not made safe by putting someone else’s name on it.

And we do not delete a true, useful sentence to make one of our own checks pass. Where a check flags text that is accurate and properly attributed, we record the judgement, publish the reasoning, and fix the check — because a check whose cheapest satisfaction is removing a caveat is a check that trains the caveat out.

When we say a brand doesn’t publish something

A review will sometimes tell you what a brand does not publish — a price, the states it serves, a dose. That is one of the easiest sentences in the world to get wrong, because a page we failed to load and a page that genuinely says nothing look identical from the outside. So it is never written from an impression. Before it can be published, the absence is declared: the exact sentence it supports, the pages that were examined, the date, and what was searched for.

The declaration also carries a positive control — a different brand and page where that same search did find the thing. That is the part that makes the rest mean anything: we prove the search works before we report that it found nothing.

A declaration is tied to the exact sentence it was made for, so rewording the sentence expires it — a reworded claim is a new claim and gets a new measurement. And none of this makes a bare “they don’t publish X” cheaper to write. A claim of absence with nothing declared behind it gets no credit for any of the above.

A shortfall in our own reach gets written down too, and it is a different thing from an absence. Where a review could not establish something — a source that would not load, a document we do not parse, a figure whose origin we could never find — it says so under “What we couldn’t verify.” “The brand does not publish X” is a measurement about the brand; “we could not establish X” is a measurement about where our reach ended. Those read very differently to someone checking our work, and the second is the commoner entry in that list. We would rather tell you where we ran out than narrow a claim until the gap stops showing — because reporting only what we found is available to anyone who simply stops looking.

When we take something back

Sometimes a figure does not survive checking: the source will not load, or it turns out not to say what we said it said. The claim is then withdrawn — and a withdrawn claim does not come back. Not softened, not hedged, not tucked inside a sentence about something else. Where a review has withdrawn something, it appears in that same panel, naming the claim that was removed and the reason it went.

We add to the record rather than overwrite it. A score or a review that replaces an earlier one records what it superseded and when, and the earlier entry stays readable; where a claim was withdrawn, the brand’s change log carries that as its own event rather than as a silent edit. An audit trail you can quietly rewrite is not an audit trail.

A correction is dated, stays on the page, and says what the earlier reading was — including when the mistake was ours rather than a source’s. And where a withdrawal lands on evidence that an already-published score was computed from, the scorecard row says so in as many words: the claim was withdrawn, and the score above was not recomputed. We would rather tell you a number is older than the correction beside it than move it quietly.

How old this is, and whether it still holds

Every source we store carries the date it was fetched, and the page shows it: open the sources panel at the foot of a review or a guide and each entry reads Retrieved, with a date. That is the age of the check, not the age of the page — it tells you when we last looked at that source ourselves, so you can weigh it and go and look for yourself.

A review also carries the date it was last reviewed, and, where the page computes a score, the methodology version that score was computed under. Those are two different facts about freshness and they are shown separately on purpose.

Behind that, we record what a review’s text actually said when it was last checked and compare it against what is on the page now. If the two have drifted, the review does not keep its old pass — it counts as not yet proved, and it is re-checked rather than re-asserted. Not yet proved is never read as a pass. The burden stays with us.

How we gather evidence

Before we fetch a page, its host is classified as permitted, refused or unclear — and unclear is not a synonym for permitted. A site whose terms we could not read does not become fair game by being ambiguous; it stays unread, and whatever we wanted from it becomes a gap we declare rather than a hole we quietly fill. Three prohibitions are absolute and are not weighed against anything: we do not solve or bypass CAPTCHAs, we do not spoof a user agent, and we do not rotate IPs or proxies to get around a block. A source we could not obtain by a method we would describe to you in public is a source we do not use.

Surfacing safety information

Where a topic touches safety, the guide surfaces the labeled warnings and contraindications as general information — including boxed warnings — and defers every individual decision to a prescriber. We describe what a drug’s label says; we never tell a reader what to take or do.

The content-mode gate (how we cover medical-adjacent topics)

Before a guide is written, its topic is tagged with a mode that sets how it must be framed. This is what lets us cover medical-adjacent subjects responsibly — the framing is set upstream, not patched later.

🟢 Green
General information — published freely, no personalization.
🟡 Yellow
Informational mode only — primary-source citations, clinician-deferring framing, a not-medical-advice note, and zero personalization (“the labeled schedule is X,” never “take X”).
🔴 Red
Individualized or vulnerable-population topics — covered only as “why a prescriber is required,” and routed to a human before anything is written.

The 13-dimension compliance rubric

Every guide is scored against a codified, versioned rubric before it can publish. Each dimension that was checked is checked the same way every time, and carries the specific evidence for its finding. Where the rubric has gained a check since an item was last scored, that check is absent from the item’s record rather than passing on it.

No single item type is scored against all 13. A guide is scored against 11, a ranking against 12, a brand review against 12, and a brand hub against 11 — each dimension says below which types it covers. The rubric also scopes 8 of them to user-submitted content, which we do not publish today.

  1. 01
    Adverse-claim sourcing / defamation

    Every negative claim about a named brand traces to a cited PRIMARY source (FDA action, court docket, state board, BBB profile); no unsubstantiated allegation. A negative fact with only forum/aggregator support is not publishable — log it, do not assert it.

    In scope for: brand reviews and rankings, guides, user-submitted content, brand hubs

  2. 02
    Medical-advice framing

    Not-a-substitute-for-a-clinician framing is present; content defers treatment decisions to a licensed clinician; no dosing/treatment is presented as personal medical guidance. Especially on condition facets (thyroid, PCOS) and eligibility.

    In scope for: brand reviews and rankings, guides, user-submitted content, brand hubs

  3. 03
    Health-data privacy (WA-MHMDA / FTC-HBNR)

    No sale/sharing of consumer health data; consent-gate + analytics scrub on health pages; forms do not transmit health data to third parties. Partly structural — verifies the page/flow complies, not just the prose.

    In scope for: brand reviews and rankings, guides, user-submitted content, brand hubs

  4. 04
    Minors / vulnerable populations

    No content sexualizing or harming minors; eating-disorder-sensitive framing on weight-loss content; no pro-self-harm framing.

    In scope for: brand reviews and rankings, guides, user-submitted content, brand hubs

  5. 05
    FTC affiliate disclosure

    Clear + conspicuous "we may earn a commission" disclosure near CTAs; disclosure present on monetized pages.

    In scope for: brand reviews and rankings, guides, brand hubs

  6. 06
    FTC endorsement / testimonials

    Testimonials are cited, representative, and substantiated; NO fabricated reviews. Outcome claims inside a testimonial are presented as the reviewer's claim, never as a substantiated finding, and never feed a numeric/aggregate rating.

    In scope for: brand reviews and rankings, guides, user-submitted content, brand hubs

  7. 07
    Branded-vs-compounded neutrality

    Neutral, factual treatment of compounded medications; NEVER labels a brand or practice "illegal" or implies a scam for offering compounded or branded options; accurate regulatory context (compounded meds are not individually FDA-approved; a clinician decides appropriateness).

    In scope for: brand reviews and rankings, guides, user-submitted content, brand hubs

  8. 08
    Off-label / controlled-substance framing

    Off-label uses are disclosed; Black Box / material safety warnings are surfaced (finasteride/PFS, GLP-1 contraindications); controlled substances (TRT) are handled carefully. No efficacy overclaims.

    In scope for: brand reviews and rankings, guides

  9. 09
    Regulatory / accreditation accuracy

    Licensing/accreditation claims (LegitScript, NABP, 503A/503B) are accurately stated and sourced; no asserted certification that was not verified on a primary source.

    In scope for: brand reviews and rankings, guides, brand hubs

  10. 10
    Trademark / brand usage

    Text-only, no brand logos or product images; nominative fair use of brand names; no implied endorsement or partnership.

    In scope for: brand reviews and rankings, guides, user-submitted content, brand hubs

  11. 11
    Editorial independence disclosure

    Openly-AI byline present; methodology-not-for-sale / independence statement present on the page.

    In scope for: brand reviews and rankings, guides, brand hubs

  12. 12
    Withdrawal reconciliation (body vs the payload’s own record)

    Every claim recorded as withdrawn in gaps[] is ABSENT from the review body, and every primary-tier citation held anywhere in the payload appears in sources[]. An unstructured gap entry fails closed — a legacy string cannot be reconciled, and "we could not check this" must never render as "we checked it".

    In scope for: brand reviews and rankings, brand hubs

  13. 13
    UGC integrity (reviews/complaints only)

    Spam/fake-review signals; defamation in complaints (unverifiable factual assertions about a named brand); PII leakage; profanity/abuse. A user asserting an unverifiable fact about a brand is direct defamation exposure.

    In scope for: user-submitted content

The publish gate

A deterministic engine turns those per-dimension results into one decision. The rule is simple: no “clear,” no publish.

Clear
Nothing failed, and every in-scope check that could be evaluated passed. Two things can stop a check being evaluated: it can be undecidable — in scope, but with no input we hold that would let it pass or fail — or it can be missing, meaning in scope now but not run when the item was last scored. Neither is counted as a pass, neither is counted as a failure, and neither is counted as zero.
Needs edit
A flag-level concern — fixed before publishing.
Escalate
High risk — a human decides.
Hard-block
A hard-gate violation — cannot publish.

Related