How to read a peptide certificate of analysis
A certificate of analysis answers four separate questions: what is in the vial, how much, how clean, and how safe to inject. Most only answer one or two.

A certificate of analysis (COA) is a lab report on one sample. A useful one answers four questions: is this the right molecule, how much of it is there, what else is in the vial, and is it safe to put under the skin. Plenty of COAs answer only the second, and a single “99% pure” figure tells you less than it looks.
We’ll go through each test in the order you’ll usually meet it, with worked numbers from real, anonymised lab reports. Then the red flags.
Identity: is it the right molecule?
Identity testing asks whether the peptide in the vial is the one on the label. The standard tool is mass spectrometry, which weighs molecules. Every peptide has a predictable molecular mass from its amino-acid sequence, so a matching mass is strong evidence you have the right chain. A wrong mass, or a mass that fits a shortened or modified version, is a clear failure.
The best version of this is a blind test. The sample goes in without a name and the lab reports what it found. When a report says a vial labelled as a GLP-1-type peptide was “identified as” that peptide without being told what to look for, that is more convincing than a lab confirming the name it was given.
Purity: what share of the material is the target peptide?
Purity usually comes from HPLC (high-performance liquid chromatography). The sample is pushed through a column, its components separate, and a detector draws a peak for each one. Purity is the target peak’s area as a percentage of all the peaks.
Two limits are worth knowing. HPLC purity says nothing about identity on its own: a single clean peak could be the wrong compound. And it only counts what the detector sees, so things like water, salt and leftover counter-ions from manufacturing don’t appear in the percentage. Synthetic peptides pick up predictable impurities: sequences missing an amino acid, sequences with an extra one, oxidised or rearranged forms, and trifluoroacetate left over from the synthesis [1]. Some of those sit very close to the main peak. A good report shows the chromatogram, not just the number.
Content: how many milligrams are actually there?
Content (sometimes called assay or quantity) is a separate measurement. It compares the sample against a reference standard to work out the actual mass of peptide in the vial.
This is the number that matters if you care whether a “15 mg” vial holds 15 mg. A worked example from a real report: a vial labelled 15 mg measured 16.14 mg, which is about 108% of label, with HPLC purity of 99.9%. Another, a 500 mg vial of NAD+ (not a peptide, but tested the same way), measured 529.18 mg. A little over label is what you’d hope to see. Well under label means you’re paying for, and dosing, less than you think.
Purity and content can disagree sharply, which is why you want both. A 2024 study bought semaglutide vials from illegal online pharmacies and tested them with liquid chromatography and mass spectrometry. The semaglutide content came out 28.6–38.7% above the labelled amount, yet the measured purity was only 7.7–14.4%, against the 99% printed on the labels [5]. A seller quoting just one of those figures could have made the product sound fine.
Endotoxin: the test that matters most for injection
Endotoxins are fragments of the outer wall of certain bacteria. They survive when the bacteria are dead, and even sterile material can carry them. Injected, they can cause fever and inflammation. The standard test uses a reagent made from horseshoe crab blood (the LAL test), which FDA has accepted in place of the older rabbit fever test for decades [2].
The limit comes from a simple formula. The threshold pyrogenic dose in humans is 5 endotoxin units (EU) per kilogram of body weight per dose [3]. For a 70 kg adult that is 5 × 70 = 350 EU per dose. A lighter person has a lower ceiling: 250 EU at 50 kg.
A worked example from a real report: a 15 mg vial measured 1.275 EU for the entire vial. Even if the whole vial were given at once, that is about 275 times under the 350 EU ceiling. By contrast, the illegal semaglutide vials in the 2024 study all contained endotoxin, at 2.2–9.0 EU per milligram [5]. Whether that crosses the limit depends on how many milligrams go into one dose, which is exactly why the result should be expressed per vial or per milligram, not as “pass”.
Watch the units. A result in EU/mg means little until you multiply by the amount in a dose.
Sterility: are there living microbes?
Sterility testing incubates part of the sample in growth media and watches for bacteria, yeasts and moulds. A pass means nothing grew. Two points to bear in mind: it tests the sample sent, not every vial in the batch, and it is separate from endotoxin. A product can be sterile and still carry endotoxin from bacteria killed earlier in the process. The purchased semaglutide vials in the 2024 study were free of living microbes but every one contained endotoxin [5].
Heavy metals
Heavy-metal testing looks for elemental contaminants. The international pharmaceutical guideline on elemental impurities names arsenic, cadmium, mercury and lead as its highest-concern class, because they are human toxicants with little or no use in drug manufacture [4]. A good panel reports each element with a detection limit. “Not detected” is only as meaningful as the limit behind it.
The verification key
A COA is a PDF, and PDFs are easy to edit. Some independent labs (Janoshik Analytical is a well-known example in the peptide world) give each report a task number and a unique verification key. Entering both on the lab’s own website pulls up the original result, so you can check that the numbers in front of you match what the lab issued.
On Janoshik's site the check takes under a minute:
- Open the verification page on janoshik.com, not a link supplied by the seller.
- Enter the task number and the unique key from the bottom of the report.
- Open the report and compare it line by line with the copy you were given: client, sample, manufacturer, batch, results and the date the analysis was conducted.
The client field names whoever ordered the test, which can be a seller, a manufacturer or a buyer. The sample, manufacturer and batch fields describe what was tested.
That proves the report is genuine. It does not prove the tested sample came from the batch you’re holding, or that the batch hasn’t changed since. Look for a batch or lot number on the report that matches your vial, and a test date that is recent. For why a purity figure is only one measurement, see how peptide purity is tested.
A quick checklist
| Test | What it answers | What a good report shows |
|---|---|---|
| Identity (mass spectrometry) | Is it the right molecule? | Measured mass matching the expected mass; ideally a blind test |
| Purity (HPLC) | What share is the target peptide? | A percentage plus the chromatogram |
| Content (assay) | How many milligrams are in the vial? | Milligrams per vial against a reference standard |
| Endotoxin | Is it safe to inject? | EU per vial or per mg, and a limit it was judged against |
| Sterility | Are living microbes present? | Pass or fail for bacteria and for yeasts and moulds |
| Heavy metals | Toxic elements? | Arsenic, cadmium, lead and mercury with detection limits |
Red flags
- Only a purity figure. It says nothing about identity, dose or contamination.
- No lab name, no way to verify. An unverifiable PDF is a claim, not evidence.
- The seller’s own lab. In-house testing isn’t worthless, but independent testing is the point.
- Batch numbers that don’t match, or a single report reused across months of stock.
- Suspiciously round results, such as exactly 10.00 mg and 99.00% on every product.
- Nothing on endotoxin or sterility for a product that will be injected.
- Dates that don’t add up: a test dated before the batch was made, or years old.
Where the report stops
Even a perfect set of results describes one sample, on one date: the right molecule, at the right amount, without detectable contamination. It is a statement about a vial, not about a treatment. Clean material is a floor, and a floor is worth having. If you are weighing whether to commission a test yourself, what testing costs and how a sample is sent covers that side.
What this means
Purity is the number most people check, and it is one of four things that matter. Sterility, endotoxin and heavy metals are the others, and a certificate of analysis reporting purity alone has answered one question out of four.
We are not going to tell you that unregulated peptides are safe to buy. We are going to tell you what is checkable, because almost nobody checks it. A mass, a content figure, an endotoxin result in EU per vial, a sterility pass, and a verification key you can enter on the lab's own site. Add a batch number that matches the vial in your hand. That is twenty minutes of work, and it is the difference between knowing what you were sent and hoping.
This is the highest-return thing a reader of this site can do, and it does not depend on which peptide you are interested in or what the evidence says about it. Whatever a compound does, the thing in the vial has to be that compound first.
Common questions
How do I read a certificate of analysis for peptides?
Look for four answers: identity (is it the right molecule), content (how many milligrams), purity (what share is the target peptide) and safety (endotoxin and sterility). Then check the lab name, the batch number, the test date and a verification key you can enter on the lab's own website.
How do I verify a Janoshik certificate?
Open the verification page on Janoshik's own website, enter the task number and the unique key printed at the bottom of the report, and open the report. Check that the client, sample, batch and results on Janoshik's copy match the certificate you were given exactly.
What does the client field on a Janoshik report mean?
It names whoever ordered the test. That is often the seller, but it can be a manufacturer, a distributor or a buyer who sent in a sample. The sample, manufacturer and batch fields describe what was tested. The client field only tells you who commissioned it.
Does a Janoshik certificate prove my vial is good?
No. It shows one sample from one batch was tested on a given date, with the tests listed. Check that the batch matches your vial, that the date is recent, and which tests were run. A purity test says nothing about endotoxin or sterility, which are ordered as separate tests.
Educational content only — not medical advice. Many peptides discussed on HPR are not approved for human use. Talk to a qualified clinician before making any decision about your health.
References
- [1]D'Hondt M, Bracke N, Taevernier L, et al.. Related impurities in peptide medicines. J Pharm Biomed Anal 2014. doi:10.1016/j.jpba.2014.06.012
- [2]US Food and Drug Administration. Guidance for industry. Pyrogen and endotoxins testing: questions and answers (edition 2). FDA guidance document 2026. www.fda.gov/regulatory-information/search-fda-guidance-documents/guidance-industry-pyrogen-and-endotoxins-testing-questions-and-answers
- [3]Malyala P, Singh M. Endotoxin limits in formulations for preclinical research. J Pharm Sci 2008. doi:10.1002/jps.21152
- [4]International Council for Harmonisation. ICH Q3D(R2) guideline for elemental impurities. ICH harmonised guideline 2022. database.ich.org/sites/default/files/Q3D-R2_Guideline_Step4_2022_0308.pdf
- [5]Ashraf AR, Mackey TK, Vida RG, et al.. Multifactor quality and safety analysis of semaglutide products sold by online sellers without a prescription: market surveillance, content analysis, and product purchase evaluation study. J Med Internet Res 2024. doi:10.2196/65440
Keep reading
How peptide purity is tested, and what a certificate of analysis can't tell you
A purity figure comes from one method on one batch. Here is what each lab test measures, what it misses, and how to check a lot yourself.
Janoshik testing explained: what the lab does, how to verify a report, and what one test can't tell you
Janoshik reports are widely quoted and easy to check, but verification proves a document is unaltered. It does not prove the vial in front of you is what was tested.
Third-party tested peptides: what the phrase means and how to check the claim
Every supplier selling tested peptides says so. The difference between a claim and a proof is a task number, a verification page and a lot that matches.

