COA checker
Your certificate, read line by line. Upload a peptide certificate of analysis and we check its identity, purity, quantity and endotoxin evidence, then confirm it with the testing lab where we can.
One certificate. A clear grade.
- 01Upload your certificate
The PDF from the testing lab, or a clear photo of every page.
- 02We read it and check it with the lab
Two independent reads, then the lab's own copy where we can fetch it.
- 03See your grade free, unlock the full report with your email
The full checklist, item by item. No account needed.
Uploads and reports are kept for 30 days on an unlisted link.
A grade describes the evidence in the certificate, not whether the product is safe. Automated reads can make mistakes, so check the findings against the original.
How the COA checker works
What the checker reads in a certificate, how it sets the grade, and what a grade can and can't tell you.
What it checks
- Identity: the mass-spectrometry ions, compared with the peptide's known mass, within the certificate's stated tolerance or ±0.5 Da.
- Purity: the HPLC figure, and how its method is described.
- Quantity: a measured amount per vial, not just the amount on the label.
- Endotoxin: an endotoxin test, for injectables.
- The lab: whether a testing lab is named, and whether it confirms the report.
Lab verification
For certificates from Freedom Diagnostics and BioRegen, the checker fetches the lab's own copy of the report and compares it with your upload. Other labs can't be checked automatically yet, so their certificates can grade no higher than A-.
How grades work
An A means identity, purity and a measured amount are supported, and the lab's own record matches. An A+ also needs complete method details, printed limits, impurity characterization, a mass balance and the full safety panel.
Lower grades come from what's missing or wrong:
- No measured amount, or no purity figure: C.
- No endotoxin test on an injectable: D at best.
- No testing lab named: D at best.
- F: a result outside its printed limit, a wrong mass, no identity test, a test run by the seller or manufacturer itself, or a lab record that contradicts the certificate.
The full report's checklist shows which finding set the grade.
Two independent reads
Every certificate is read twice, independently, and the key fields of the two reads are cross-checked. When they disagree, the certificate is read a third time.
Injectables only
The checker grades certificates for injectable peptides. Capsules, sprays and topicals aren't graded yet, because they need different safety tests.
Your upload
Your upload and its report are kept for 30 days on an unlisted link. Anyone with the link can view the report and the original certificate, so upload only documents you have permission to share. Report pages carry no analytics or ad trackers.
The grade is free, and so is the full report: add your email to see it, with no account needed. Upload privacy
Limits
A grade is about the document, not the product in your vial. It does not establish that a product is safe to use, that every vial matches the tested sample, or that a vendor is trustworthy.
Automated reads can make mistakes, so review the findings against the original certificate.
How to read a certificate of analysis
By Jay Spall
Eight short chapters, in order, no chemistry degree required. By the end you will know why a 97 percent certificate can beat a 99 percent one, and what to look for before you trust one.
Start here
A certificate of analysis, explained from zero
No chemistry needed. Read the chapters in order: each one uses the thing the last one taught you. Every technical word gets translated the first time it shows up, and the two worked examples are synthetic test documents built for teaching, not real products.
Here is the whole page in four sentences. A lab tested a sample of something and wrote down what it found. Almost everyone reads only one number on that page, the purity, and that number cannot tell you how much peptide you actually have. A second number, buried somewhere further down, can. Most of the work of reading a certificate is finding the second number, doing the arithmetic nobody did, and then asking whether the paper itself is worth believing.
Two examples run through the whole page, and both are synthetic test documents built for teaching, not real products:
- The sermorelin vial. A vial labelled 10 mg. The certificate is honest and detailed. The vial still holds about 7.1 mg of peptide.
- The semaglutide batch. A certificate reporting 96.80 percent purity, where every single impurity is named and explained. It is a better document than a 99 percent certificate that explains nothing, and by the end of chapter 6 you will see exactly why.
Chapter 1
What a COA even is
A lab tested a sample and wrote down what it found. That is the entire idea. The rest is knowing which part of the page you are looking at.
COA stands for certificate of analysis. Somebody mailed a lab a small amount of powder. The lab ran a set of tests on it, printed the results, and signed the page. That is all a certificate is: a test record for one sample, on one day, using the methods named on the page.
It is not a licence, not an approval, and not a promise about the vial you were shipped. It is a record. The value of the record depends entirely on who made it, what they actually measured, and whether the numbers were judged against anything.
Every certificate you will ever see has the same five zones, in roughly the same order. Learn the zones and a six-page document stops being intimidating.
One word from that diagram is worth learning now, because the rest of the page keeps using it. A lot number(sometimes called a batch number) is the serial number of one production run. It is printed on the certificate and printed on your vial. If those two do not match, the certificate is about somebody else's material, no matter how good the numbers look.
The dates in the header need the same care. Received, tested, completed, reported and released are different events, and a useful certificate labels each one. Do not read a report date as a test date, or a test date as an expiration date.
Chapter 2
What is actually in the vial
A vial labelled 10 mg does not contain 10 mg of peptide. It never did, and that is not a scandal. Here is where the missing weight goes.
Peptides are shipped as a freeze-dried powder, called a lyophilized powder: the liquid was frozen and then pulled off as vapour, leaving a dry cake in the bottom of the vial. That cake is never pure peptide. Four other things are in there by design:
- Water. Peptide powder holds onto water. A few percent is normal and expected. The test for it is called Karl Fischer, which is just the name of the method.
- The counterion. A peptide carries electrical charge, so it has to be shipped as a salt, paired with something of the opposite charge. That partner is the counterion, and it is real weight sitting on the balance. Acetate is the light one, trifluoroacetate (TFA) is the heavy one, which is why the same peptide as a TFA salt always shows a lower peptide percentage than as an acetate salt. Think of it as the packaging weight that cannot be removed.
- Leftover solvents. Traces of the chemicals used to build and clean the peptide. Measured in parts per million, so almost never a large mass.
- Ash and mineral residue. What is left if you burn the sample: salts and other non-organic material.
The number that tells you how much of the powder is peptide is called net peptide content. For freeze-dried research peptides it typically runs 60 to 90 percent, and TFA salts commonly sit at 60 to 85 percent. A 65 percent result is a normal number, not a bad one.
Now the worked example, on the sermorelin vial.
The arithmetic is one multiplication. The lab weighed 9.86 mg of powder in the vial and measured the powder as 72.1 percent peptide, so:
9.86 mg x 0.721 = 7.11 mg of peptide
The label says 10 mg. Nothing on the certificate failed. Every single row passed the limit it was given. And the vial still holds about 7.1 mg of peptide, because the label strength and the peptide mass were never the same quantity.
Adding the measured pieces together is called a mass balance: does everything in the vial add up to 100 percent? Here, 72.1 plus 6.4 plus 6.2 plus 1.1 plus 0.20 comes to 86.0 percent, which leaves 14.0 percent, about 1.38 mg, that the document never accounts for. A point or two of gap is ordinary measurement slack. Fourteen points is a question for the lab: an unexplained fraction above roughly 10 percent has to be answered before the document can be trusted.
One line on the certificate even points at a candidate. Trifluoroacetate, the heavy counterion, is listed as not tested, because the client did not ask for it. That is precisely the kind of heavy, invisible weight that could be sitting in the gap, and nobody looked.
Chapter 3
The two numbers everyone confuses
Purity and quantity are different questions with different denominators. Mixing them up is the single most expensive mistake a buyer makes.
Purity is reported as an area percent. It answers: of the peptide-like material the instrument could see, what share was the right molecule. It says nothing about how much material there is. It is a percentage of a percentage.
Quantity is milligrams. It answers: how much of the right molecule is physically in this vial. That is the number that decides what you actually bought.
A gold analogy helps, and it is the clearest one there is. Purity is the karat. Quantity is the grams. A 24-karat ring that weighs almost nothing is still almost no gold. A certificate can honestly report 99 percent pure and 72 percent content on the same page, because the two numbers are answering different questions.
Where does 7.06 come from, when chapter 2 ended at 7.11? One more step:
9.86 mg fill x 0.721 peptide content = 7.11 mg of peptide. This counts every peptide-like molecule in the vial, including the slightly wrong ones.7.11 mg x 0.9931 purity = 7.06 mg of sermorelin itself. This second step is an estimate, not a measurement, because area percent is not the same thing as a mass fraction. Treat it as an estimate.
So 7.06 mg against a 10 mg label is about 71 percent of what the label implies. If you measured everything off the label, every draw would be roughly 29 percent light: a nominal 300 microgram draw from a 3 mL reconstitution actually carries about 212 micrograms. That is a description of the arithmetic, not an instruction, and this particular vial is labelled for research use only.
Over-potent and under-potent, more or less than the label says, are both misses: a vial that measures 12 mg against a 10 mg label is not a bonus, since every draw measured off the label carries more than you meant, and a result outside either end of its stated range fails. A content result of zero, or "not detected", is not a quantity problem at all but an identity one, which chapter 5 takes up.
Why nobody catches it
On this certificate the purity result sits in the summary table on page 1, in bold. The peptide content sits on page 2, underneath the solvents table, in the same small type as everything else. Page 1 carries no content figure at all. The layout is not a trick, but the effect is the same: the number that changes your dose is the one you have to go looking for. The lab also tested that number against a floor the buyer's own client had set, not less than 70 percent, and wrote plainly that it did not evaluate whether that floor supports the 10 mg printed on the label.
How common is the shortfall
Trade coverage of one laboratory's own 2024 data reported that roughly 43 percent of submitted peptides did not meet their own label claims once identity, quantity and purity were assessed together. Treat that as directional, not as a peer-reviewed statistic. The line commonly used to flag a shortfall is below about 90 percent of label claim.
Chapter 4
Reading the squiggly line
The purity number is not measured directly. It is calculated from a picture, and the picture is where the honesty lives.
To measure purity, the lab dissolves the sample and pushes it through a long tube packed with tiny particles. Different molecules stick to the packing for different lengths of time, so they come out one at a time. A detector at the far end draws a bump every time something comes out. That drawing is the chromatogram.
The peak positions carry meaning. Greasier molecules stick longer and come out later. Chemists describe the position of a peak relative to the main one and call it RRT: RRT 1.00 is the main peak, RRT 0.88 came out earlier, RRT 1.38 came out much later.
The purity number is then just arithmetic on areas: the area of the main bump divided by the total area of all the bumps. Which is why how the areas were drawn matters as much as the number itself.
Four honest questions get asked of every purity number, and all four are about the picture:
- What colour of light was the detector using? At 214 nanometres the detector sees the peptide backbone, so it sees essentially every peptide-related species. At 280 nanometres it only sees a few specific building blocks. A purity number measured at 280 nm on a peptide with few of those building blocks is blind to most of its own impurities.
- How long did the run last? The greasiest leftovers come out last. Stop early and they are never counted.
- Where was the cut-off set? Two separate settings exist: the level above which a peak must be listed, and the level above which it must be identified. A generous cut-off deletes real impurities from the arithmetic.
- Was the picture printed at all? Without it, there is no way to see a shoulder, a wandering baseline or a peak drawn to the wrong edge.
Chapter 5
Is it the right molecule?
Purity says how clean the main peak is. It does not say what the main peak is. That takes a different instrument.
Everything so far has assumed the main peak really is the peptide on the label. The chromatogram cannot promise that on its own. A peak at 27.86 minutes is a bump at 27.86 minutes, and unless the lab ran a known reference sample alongside it, a different molecule coming out at the same moment would draw the same bump and earn the same purity number.
The usual identity test is mass spectrometry, written MS. The instrument weighs molecules. Every peptide has a known mass, fixed by its chain of building blocks and measured in daltons (Da), and the MS line on a certificate reports what the instrument actually saw. It often prints a few charged versions of the molecule, called ions, instead of the mass itself; each one should work back to the same known mass.
This is where labels get caught out. Products sold as TB-500 are sometimes the short fragment Ac-LKKTETQ, about 889 Da, and sometimes full-length thymosin beta-4, about 4963 Da. Only the MS line tells you which one the lab measured. Read the MS line, not the product title.
Three questions, three kinds of evidence, and none of them stands in for another:
- Purity, from the chromatogram, says how the detected signal splits between peaks. It does not prove identity.
- Identity, from mass spectrometry, says whether the molecule has the right mass. It does not prove purity, and it does not say how many milligrams are in the vial.
- Content, from the weight arithmetic or an assay, says how much is there. It says nothing about what it is unless identity was shown too.
And a matching mass is strong evidence, not the last word. The same building blocks in a different order weigh exactly the same, so a mass match cannot tell those apart.
Chapter 6
Why 97 percent can beat 99 percent
This is the most important idea on this page. A higher number from a weaker experiment is not a better product, and the report has to be able to say that with a straight face.
Take the semaglutide batch. Purity reported at 96.80 percent. The missing 3.20 percent is not a mystery. Seven peaks, each one named, each one with the evidence for the name printed next to it:
- 0.44 percent oxidised at one building block (the same chemistry that browns a cut apple)
- 0.48 percent aged at position 17, one building block slowly changing form
- 0.31 percent a mirror-image version of the first building block, made during synthesis
- 0.39 percent a copy missing the last building block
- 0.46 percent a copy with a short side arm instead of the full one
- 0.35 percent the side arm attached in the wrong place
- 0.22 percent two molecules stuck together
Add the seven and you get 2.65 percent, plus 0.55 percent spread over seven very small peaks that all sit below the 0.10 percent naming line. Every named one is a version of semaglutide itself: mis-built during manufacturing or slowly changed with age. None of them is a foreign substance. The largest is 0.48 percent, comfortably under the 1.0 percent level at which anyone would have to go find safety data.
Now the comparison, and this second certificate is a made-up teaching example: 99.30 percent purity, measured at 280 nm, on a 12-minute run, with a cut-off set at 1.0 percent, no impurity named, no method disclosed and no picture printed.
Certificate B's 0.7 percent is not evidence of a cleaner product. It is an artefact of a method arranged so that nothing shows up: the wrong colour of light, a run too short for the greasy leftovers, and a cut-off high enough to erase anything that made it through anyway. Two purity numbers from methods that are not equivalent are not comparable, full stop.
The rule to apply every time: impurity identity outranks the headline number.Three percent of named, expected, well-behaved relatives of the same molecule is a well-made product honestly measured. Half a percent of unnamed peaks is an unknown, and on our checker, an impurity above the lab's own identification limit that isn't named stops the grade at C+.
Chapter 7
The safety tests
Four tests, four different questions. None of them is about whether the peptide works, and two of them are usually missing.
Endotoxin: bacterial debris, and why your dose changes the answer
Endotoxin is debris from bacteria. Even if the bacteria are long dead and gone, the debris survives, and injecting enough of it causes a fever reaction. It is measured in endotoxin units, EU.
Here is the part almost every certificate gets wrong. There is no universal endotoxin limit. The limit is calculated for each product and each dose:
limit in EU per mg = K divided by M
K is 5.0 EU per kilogram of body weight for anything injected other than into the spine (0.2 EU per kilogram for the spine). M is your dose in milligrams divided by your body weight in kilograms. So a bigger dose means a stricter limit, because you are receiving more of everything. So an endotoxin result can only be judged against your own dose and body weight. Our checker reports whether an endotoxin test was run and how it compared with the certificate's own limit; the formula above is how you check the ceiling for your dose. A certificate that prints a flat limit as though it were the standard is telling you something about the people who wrote it.
Sterility: usually not tested, and never assume it
Sterility asks a completely different question from endotoxin: is anything alive in there. The two are separate tests and neither substitutes for the other, because endotoxin debris survives the heat that kills the bacteria that produced it. Neither can be read off a purity or mass-spectrometry result either, however clean.
Research-grade material is almost never certified sterile, and that is normal rather than sinister: the certificate is usually written on the bulk powder, before anyone filled a vial. The semaglutide batch says so outright: sterility was not performed, the substance is not sterile, and it is meant to be sterilised in a later step by whoever uses it. The sermorelin vial is the exception, because it was aseptically filled by a contract manufacturer who ran the 14-day sterility test and reported no growth.
Two things follow. Check whether the certificate covers sterility before you act on anything else it says. And bacteriostatic water does not fix it: it slows microbial growth in a solution, it does not sterilise a powder and it does nothing at all about endotoxin.
Metals and solvents: two one-liners
Trace metals are leftovers from manufacturing equipment and catalysts. The safety limits are written as micrograms allowed per day, but certificates report micrograms per gram of powder. Those two are not comparable until you convert through the dose, and skipping that conversion produces false alarms constantly. On the semaglutide batch, once converted through a 2.4 mg dose, every element lands below 0.01 percent of its allowance for injection.
Residual solvents are traces of the chemicals used to build and purify the peptide. Acetonitrile is the one you should expect to see, because the final purification step uses it: the limit is 410 parts per million, and the two certificates here report 96 and 74. Finding it is normal. Not finding any solvent panel at all just means nobody ordered the test.
Chapter 8
Can you trust the paper at all
Before any number is worth reading, one question comes first: is this document a real test record of the material actually in your hands?
Interpreting a fabricated chromatogram to three decimal places is worse than saying nothing, so our checker asks the lab itself wherever it can. It never accuses anyone of forgery. It reports one of three answers:
- The lab's own copy matches.The checker fetched the lab's stored report, from the lab and not from the seller, and it matches your upload. That path exists today for certificates from Freedom Diagnostics and BioRegen.
- Couldn't be checked.There is no automatic path for that lab yet, or the lab's report wasn't found. This is the honest and common answer for most documents. It is not an accusation and it is not a step toward the third answer. Janoshik runs a public check page at verify.janoshik.com that you can use yourself.
- Contradicted.The lab's own record disagrees with the certificate. That is an F, however good the numbers look.
Who ran the test matters as much as what the test said, so our checker sorts every certificate onto a single four-rung ladder. Each rung carries a ceiling on the letter grade a certificate can reach, no matter how beautiful the chemistry is.
One caveat holds even at the top of the ladder, and it is the reason a grade never says a product is safe. A lab check compares a document against the lab's stored record for a sample somebody submitted. By construction it cannot tell you which vial shipped. It cannot rule out a seller publishing a genuine certificate and shipping a different, untested batch, or submitting only the cleanest batches, or publishing only the results they liked. The one thing that closes that gap is sending a vial from the batch in your hand to a lab yourself.
So finish every certificate the same way: write down what it supports and, just as plainly, what it leaves blank. The blanks are what people forget once the numbers look good.
A matching lot is context, not custody
Check the lot match character by character, prefixes, suffixes and punctuation included, along with the form and the amount. Even a perfect match only links two pieces of paper. Custody is the separate question of who picked the sample, whether it was sealed, who handled it, and whether it was bought off a shelf or handed over by the seller. A lab lookup or QR code proves a report exists in the lab's system, not that your vial was the sample.
Paperwork about the manufacturer does not close that gap either. The FDA's Import Alert 66-80 is a detention-without-physical-examination (DWPE) policy for GLP-1 receptor agonist bulk drug substances, and its Green List names firms and products that appear to meet the cGMP criteria for exclusion. That documents apparent manufacturing compliance, not purity, and a manufacturer named on a certificate does not prove your vial came from that facility, because relabelling chains are common. Geography is not the test either. And looking a lot up in FDA recall and enforcement records is a separate check from reading its certificate.
Reference
Glossary
Every term used above, in one place, in plain words.
| Term | What it means |
|---|---|
| COA (certificate of analysis) | A lab's written record of what it found when it tested one sample, on one day, with named methods. |
| Lot number / batch number | The serial number of one production run. It is on the paper and on your vial, and the two must match. |
| Lyophilized | Freeze-dried. The liquid was frozen and pulled off as vapour, leaving a dry cake in the vial. |
| Purity (area percent) | Of the peptide-like material the instrument could see, how much was the right molecule. A percentage of a percentage. |
| Net peptide content | How much of the powder in the vial is peptide at all, by weight. Typically 60 to 90 percent. |
| Assay | A direct measurement of how many milligrams of the target peptide the vial holds, weighed against a known reference. When it exists, it is the answer, and you do not discount it twice. |
| Counterion (acetate, TFA) | The salt the peptide is shipped as. Real weight in the vial, not the active part. Acetate is light, trifluoroacetate is heavy. |
| Karl Fischer | The name of the water measurement. Nothing more mysterious than that. |
| Mass balance | Adding the measured pieces (peptide, water, salt, solvents, ash) to see whether they reach 100 percent. The only check that catches an undeclared filler. |
| Chromatogram | The picture of peaks on a timeline. The evidence behind the purity number. |
| RRT | Where a peak showed up relative to the main one. RRT 1.00 is the main peak; below 1 came out earlier, above 1 came out later. |
| Related substance | A leftover piece or a slightly wrong version of the same molecule, made during manufacturing or formed with age. Not a foreign contaminant. |
| Bacterial endotoxin | Debris from bacteria that can cause a fever reaction. Its limit is calculated from your dose and your body weight, not fixed. |
| Sterility | Whether anything living is in the vial. A separate test from endotoxin, and usually not performed on research material. |
Reference
Questions
Short answers to what people ask most often, where the chapters above don't already answer it.
What should a peptide COA include?
The product and the lot that was tested, the lab that tested it and when, each test with its method, the limit it was judged against and the result, and who signed it. A result with no limit beside it is a data point, not a pass. The exact requirements depend on the material and where it is sold.
Should every peptide batch be tested for fentanyl?
Not automatically. A test panel should follow the material, how it was made and any credible contamination risk, such as a shared facility or shared equipment; used as a blanket marketing badge, a fentanyl test can stand in for the more basic questions of identity, amount, sterility, endotoxin and custody. A negative result also speaks only to the tested sample, method and detection limit, and does not prove the product is safe.
Does no fentanyl test mean the peptide is unsafe?
No. A missing fentanyl test means the certificate offers no fentanyl-specific evidence, and whether that test belongs there depends on a credible contamination risk. Identity, amount, impurities, sterility, endotoxin and custody still need their own evidence either way.
Does third-party testing prove a peptide is sterile?
No. 'Third-party tested' is a marketing phrase, not a result: ask which tests were run, what they found, and how the sample connects to your vial. Purity and mass spectrometry say nothing about sterility or endotoxin, which need tests of their own.
Is a forged COA the same as a missing test?
No. A missing test is a blank: that quality was never measured or reported. A forged or reused certificate is worse, because it actively misrepresents what exists, and on our checker a lab record that contradicts the certificate grades F.
What is the FDA Green List / Import Alert 66-80?
Import Alert 66-80 is the FDA's detention-without-physical-examination (DWPE) policy for GLP-1 receptor agonist bulk drug substances, and its Green List names firms and products that appear to meet the cGMP criteria for exclusion from it. Being on the list documents apparent manufacturing compliance for that firm and product. It is not a purity contest, and it does not prove a retail research vial came from that manufacturer.
Does 'factory direct' or country of origin prove peptide quality?
No. Geography is not the test: 'China', 'USA' and 'factory direct' say nothing about whether the lot connects to a named, documented manufacturer. A claim of origin does not establish custody, matching tests, or that the vial came from the facility a certificate or sales page names.
Is a COA still valid if the site has been posting it for months?
A certificate is evidence for the sample and lot it names, not for every unit shipped since. If the lot on the posted PDF does not match the lot on the vial you received, it describes an earlier batch; sites often leave one certificate up long after that batch has sold out.
What does endotoxin 'Pass' mean?
Only that the result came in under whatever limit the lab used, and that limit rests on an assumed dose and body weight. A useful endotoxin line gives the result in EU per mg (or per mL), the limit, and the dose assumption behind it; a bare 'Pass' cannot be checked against your own dose.
Does USP 71 sterility testing prove my vial is sterile?
No. A pass under USP 71, the usual pharmacopeial sterility test, covers the sample tested under the stated conditions, not every retail unit. The number of units sampled is part of the result, and sterility testing says nothing about identity, amount or endotoxin.
Does one COA prove multi-vial conformity?
No. A single-vial certificate is evidence for the tested sample. 'Batch tested' or 'conformity' without the number of vials tested, the acceptance criteria and how the results spread is marketing.
For the longer answer on fentanyl testing, read Should every peptide batch be tested for fentanyl?
Reference
Sources
The FDA guidance and records behind the regulatory points on this page.
- FDA, Q7A: Good manufacturing practice guidance for active pharmaceutical ingredients
- FDA, Q2(R2): Validation of analytical procedures
- FDA, Q6A: Specifications, test procedures and acceptance criteria for new drug substances and products
- FDA, Pyrogen and endotoxins testing: questions and answers
- FDA, Import Alert 66-80
- FDA, Industry FAQs on import alerts