Glow Peptides · Research Journal
Glow Peptides Research Team · 2026-09-17
For research use only. Not for human or veterinary use, diagnostic use, or in any therapeutic application.
Two strings are printed on every vial we ship, and they look like the same kind of code without being one. The first is a catalog code — a short block such as BC10, KL80 or GT1500. The second is a lot number, a longer string such as 260320HPKL80 that changes with every batch. People arrive at this site having typed one of those codes into a search box, because it is the only thing on the label that looks like it ought to mean something. This guide explains what each character encodes, which of the two strings you need in order to pull the correct certificate out of the quality and COA directory, and what it tells you when a supplier's numbering does not survive the same reading.
If what you actually want is the field-by-field walkthrough of the certificate once you have found it, the shorter guide on how to read a peptide certificate of analysis covers the document itself, and the longer article on what a certificate of analysis establishes covers what it can and cannot prove. This page is about the label — the part that has to match before any of that matters.
A catalog code identifies the product. It says what the material is and how much of it the container holds. It is stable: every BC10 vial we have ever shipped is BPC-157 at 10 mg of total peptide content, regardless of when it was made. A catalog code cannot identify a batch, because thousands of containers share it.
A lot number identifies one production run. It changes every time. It is the only string on the label that resolves to a single certificate, because the analysis was performed on that run and no other. Two vials that are identical products, made three months apart, carry the same catalog code and different lot numbers.
The practical consequence: the catalog code tells you what you are holding, the lot number tells you which one. To match a vial to a certificate you need the whole lot string. Searching the catalog code alone will find the product page; it will not find the document.
Our catalog codes are built the same way every time — a short letter abbreviation for the compound, immediately followed by a number giving the total peptide content of the container in milligrams.
The letter block is an abbreviation, usually two characters taken from the compound name: BC for BPC-157, TB for TB-500, KP for KPV, GH for GHK-Cu, EP for Epithalon, SK for Selank, SX for Semax, PT for PT-141, MT for MT-II, TE for Tesamorelin, MS for MOTS-C, AD for AOD-9604, CP for the CJC/Ipamorelin pairing, ND for NAD+, GT for glutathione. Blends get their own abbreviation rather than a concatenation of their components: GL for the GLOW blend, KL for KLOW, WV for the BPC-157 and TB-500 combination sold as Wolverine.
The scheme is an internal shorthand rather than a standard. No industry body issues these codes. Another supplier's BC10 is not our BC10, and there is no registry where the two could be reconciled.
The number is the total peptide content of the container, in milligrams. BC10 is 10 mg. GH50 is 50 mg. KL80 is 80 mg. ND1000 is 1000 mg. GT1500 is 1500 mg.
Two clarifications matter here, and they matter most on the blends. First, on a multi-component blend the figure is the total across every component in the container, not the amount of any single one — KL80 is 80 mg of total peptide content spread across the four materials in the KLOW blend, not 80 mg of each. Second, a milligram figure on one of our labels is a statement about the contents of the container and nothing else. It describes what was put in. It is not a per-unit figure, it is not a quantity of anything, and it cannot be read as a measure of time or of anything outside the vial.
Read the digits as a single number rather than digit by digit. ND1000 is one thousand milligrams; it is not ND100 with a stray zero. This becomes important when we get to trailing batch sequences below.
A trailing -C marks the encapsulated form of the same material. KL80-C is the capsule form of the KLOW blend. ND500-C is the capsule form of NAD+. The suffix is the only difference in the code, and it is carrying real information: the container is a bottle of capsules rather than a lyophilised vial, so the figure in the base code refers to the vial family the capsule is derived from, and the per-capsule content is stated separately. A capsule figure is the content of one capsule. A bottle holds a count of capsules — a number of units, never a period of time.
This is the complete index of the codes appearing on released material with published certificates. If the code on your label is not in this table, it is not one of ours, or it belongs to a lot that has not been released.
| Code | Material | Total peptide content per container | Format |
|---|---|---|---|
| BC10 | BPC-157 | 10 mg | Lyophilised vial |
| TB10 | TB-500 | 10 mg | Lyophilised vial |
| WV20 | BPC-157 & TB-500 | Lot record shows 10 mg | Lyophilised vial |
| KP10 | KPV | 10 mg | Lyophilised vial |
| GH50 | GHK-Cu | 50 mg | Lyophilised vial |
| GL70 | GLOW blend | 70 mg total across components | Lyophilised vial |
| KL80 | KLOW blend | 80 mg total across components | Lyophilised vial |
| KL80-C | KLOW blend, capsules | 3.5 mg per capsule | Capsule bottle |
| ND500 | NAD+ | 500 mg | Lyophilised vial |
| ND1000 | NAD+ | 1000 mg | Lyophilised vial |
| ND500-C | NAD+, capsules | Stated on the lot record | Capsule bottle |
| EP10 | Epithalon | 10 mg | Lyophilised vial |
| EP50 | Epithalon | 50 mg | Lyophilised vial |
| CP10 | CJC/Ipamorelin | 10 mg total across components | Lyophilised vial |
| TE10 | Tesamorelin | 10 mg | Lyophilised vial |
| MS40 | MOTS-C | 40 mg | Lyophilised vial |
| SK10 | Selank | 10 mg | Lyophilised vial |
| SX10 | Semax | 10 mg | Lyophilised vial |
| PT10 | PT-141 | 10 mg | Lyophilised vial |
| MT10 | MT-II | 10 mg | Lyophilised vial |
| AD10 | AOD-9604 | 10 mg | Lyophilised vial |
| GT1500 | Glutathione | 1500 mg | Lyophilised vial |
| BAC10 | Reconstitution Solution, 10 mL | Not a peptide — no mg figure | Sealed solution vial |
WV20 is the one code in the list where the digits and the printed content figure do not line up: the lot record for the combination vial shows 10 mg while the code reads 20. A combination material carries more than one component, and a single printed figure cannot tell you on its own whether it describes one of them or the pair. This is exactly the case where the code is a starting point and not an answer — open the certificate and read the per-component results rather than inferring the contents from the digits.
BAC10 is the one code in the list where the digits are not a peptide content. There is no peptide in the container, so the number tracks the 10 mL volume of the vial instead. It is still a released lot with its own published certificate, which is the point of including it here: the numbering is applied to everything that ships, not only to the peptides.
The lot number is longer because it has to answer more. A typical one — 260320HPKL80 — decomposes into four parts, read left to right.
They are YYMMDD. 260320 is 20 March 2026. 260130 is 30 January 2026. 260807 is 7 August 2026. This is the single most useful thing in the string, because it is the part you can sanity-check without any inside knowledge: a lot number whose leading digits do not form a plausible date is not a date-stamped lot number, whatever else it is.
The capsule lots are the exception. Both of ours — 2605-SXH-KL35-01 and 2605-SXH-ND500-01 — lead with four digits rather than six, giving year and month without a calendar date. If you are holding a capsule bottle and counting six digits that are not there, that is why.
Four appear across our released lots: QL, HP, ZJ and SXH. They identify the production site the run came from. We publish the codes because they are printed on the label and people match against them; we do not publish what each one expands to, and you should be sceptical of anyone who tells you they know. Read them as opaque tokens whose only job is to match between the label and the certificate.
What the site code is genuinely useful for is spotting that a material has been made in more than one place. BPC-157 appears under QL in lot 260202QLBC10 and under HP in 260406-HP-BC10-4. Same product, same catalog code, different run at a different site — and therefore two separate certificates, neither of which describes the other's material.
After the site code, the lot repeats the catalog code: 260320HPKL80, 260421HPND1000, 260722-HP-GT1500. This redundancy is deliberate and it is what makes the two strings on your label checkable against each other. If the label says catalog code GH50 and the lot number says 260203QLGH50, the two agree. If they disagree, something has been mislabelled and neither string should be trusted until it is resolved.
Some lots carry extra digits after the catalog code. 260406-HP-BC10-4. 2605-SXH-ND500-01. These are a sequence number distinguishing runs that would otherwise collide — they are part of the lot number and no part of the catalog code.
The clearest case is AOD-9604, where lot 260410HPAD1002 sits under catalog code AD10. Read naively the string ends in "AD1002", which looks like a code we do not have. It is AD10 followed by sequence 02. This is why the safe procedure is to match the full lot string rather than to parse it: parsing requires knowing where the catalog code ends, and against ND1000 or GT1500 that boundary is not obvious from the digits alone.
| Lot number | Date | Site | Catalog code | Sequence | Certificate |
|---|---|---|---|---|---|
| 260202QLBC10 | 260202 | QL | BC10 | — | View |
| 260406-HP-BC10-4 | 260406 | HP | BC10 | 4 | View |
| 260410HPWV20 | 260410 | HP | WV20 | — | View |
| 260320HPKL80 | 260320 | HP | KL80 | — | View |
| 2605-SXH-KL35-01 | 2605 | SXH | see below | 01 | View |
| 260402HP-GL70 | 260402 | HP | GL70 | — | View |
| 260123ZJND500 | 260123 | ZJ | ND500 | — | View |
| 260421HPND1000 | 260421 | HP | ND1000 | — | View |
| 260410HPAD1002 | 260410 | HP | AD10 | 02 | View |
| 260722-HP-GT1500 | 260722 | HP | GT1500 | — | View |
| 260807-HP-BAC10 | 260807 | HP | BAC10 | — | View |
| 260416HPSX10 | 260416 | HP | SX10 | — | View |
Look down the left column of that table and the irregularity is obvious. 260202QLBC10 runs together with no separators. 260406-HP-BC10-4 hyphenates every boundary. 260402HP-GL70 hyphenates one boundary and not the other. 260722-HP-GT1500 hyphenates two of three.
We would rather say that plainly than pretend the format is rigid. The components are consistent — date, site, catalog code, optional sequence, always in that order. The punctuation between them is not, and it varies between batches of the same material: one BPC-157 lot is unhyphenated, the next is fully hyphenated. This is the most common reason a lookup fails. Somebody reads 260406-HP-BC10-4 off a label, types 260406HPBC104, gets nothing, and concludes the certificate does not exist. The rule that survives the variation: compare the characters, ignore the hyphens. Strip every separator from both strings and they should be identical. If the alphanumerics match and only the punctuation differs, you have the right document.
There is a single exception in the current catalog and it is better stated than discovered. The KLOW capsule bottle carries catalog code KL80-C, and its released lot is 2605-SXH-KL35-01. The lot string carries KL35, not KL80-C.
Both are correct for what they are. The catalog code names the product family, carried over from the KL80 vial with the capsule suffix appended; the lot string was assigned at the production site and reflects the capsule the run produced, which holds 3.5 mg of total peptide content. If you are matching character by character and expecting KL80 inside the lot number, it will not be there, and the correct conclusion is not that the certificate is wrong. The NAD+ capsule lot behaves normally by comparison — ND500-C, lot 2605-SXH-ND500-01 — which is the reminder that this is a labelling artefact rather than a pattern.
The reason to decompose a lot number at all is that each part answers a different question, and each part is silent on the others. Confusing what the date establishes with what the catalog code establishes is how people end up over-reading a label.
| Component | What it establishes | What it cannot tell you |
|---|---|---|
| Catalog code letters | Which material the container holds | Nothing about this particular batch — thousands of containers share the code |
| Catalog code digits | Total peptide content of the container, in milligrams | Nothing about any individual component of a blend, and nothing outside the container |
| "-C" suffix | That the format is capsules rather than a lyophilised vial | The per-capsule content, which is stated separately |
| Six-digit date | When the run was produced | When it was analysed — the report date is on the certificate, not the label |
| Site code | That two lots did or did not come from the same place | What the code expands to — it is an opaque token |
| Trailing sequence | Which run, among runs that would otherwise collide | Anything about quality, ordering of preference, or revision |
| The full string | Exactly one certificate | Anything about material stored or handled after the analysis date |
These are the three most-searched codes off our own labels. Each one resolves to a published record rather than a product-level document.
BC10 is BPC-157, 10 mg of total peptide content, in a lyophilised vial. Two released lots carry it. 260202QLBC10 was produced on 2 February 2026 at the QL site and has its own certificate. 260406-HP-BC10-4 was produced on 6 April 2026 at the HP site, fourth in its sequence, and has a separate certificate. Identical products; different batches; two documents that do not substitute for one another.
KL80 is the KLOW blend at 80 mg of total peptide content across its components — not 80 mg of any one of them. The released vial lot is 260320HPKL80, with its certificate here. The capsule form is catalog code KL80-C, lot 2605-SXH-KL35-01, at 3.5 mg of total peptide content per capsule, with its own certificate. If you want the composition comparison rather than the numbering, the article on GLOW 70 and KLOW 80 covers it, and GL70 works the same way — two released lots, 260130HPGL70 and 260402HP-GL70.
BAC10 is the Reconstitution Solution in the 10 mL vial. It contains no peptide, so the digits track volume rather than milligrams. It is documented on the same terms as everything else we ship: the released lot is 260807-HP-BAC10, produced on 7 August 2026, and its certificate is published.
Five materials in the current catalog carry a catalog code across more than one released lot, and they are the clearest illustration of why the two strings are not interchangeable. BC10 spans 260202QLBC10 and 260406-HP-BC10-4. GL70 spans 260130HPGL70 and 260402HP-GL70. CP10 spans 260202QLCP10 and 260410HPCP10. ND500 spans 260123ZJND500 and 260413HPND500. Epithalon does the opposite — one material, two catalog codes, EP10 and EP50, distinguished only by the content figure.
Peptide synthesis is a batch process: each run is purified and analysed on its own, and the output of one run is not the output of the next. That is the entire reason the lot number exists, and the reason a certificate presented as covering a product line rather than a batch is describing material nobody sampled. If you are working backwards from a compound name rather than from a code, the certificate lookup by compound guide starts from the other end.
Because the scheme is internal, you cannot validate another supplier's codes against ours. You can still tell a lot number that carries information from one that is decoration.
Every released lot's certificate is public at /quality and at its own /coa/ address. No account, no request, no support conversation. The QR code on a vial opens the record for that specific lot rather than a product page, which removes the transcription step entirely.
If you are typing it in instead, the sequence is short. Read the full lot number off the label, including any trailing sequence digits. Search it in the quality directory. Ignore hyphen differences between what you typed and what is listed — compare the alphanumerics. Then check that the catalog code printed on the label also appears inside the lot number on the certificate, which is the redundancy doing its job. The analysis you will find on that record was performed by Freedom Diagnostics, the independent laboratory named on the certificates, using reverse-phase HPLC for purity and mass spectrometry for identity, against a published purity specification of ≥99.2% — a floor every released lot has to clear rather than a number some of them reach.
One limit worth stating in the same breath: a certificate records what was measured, on a stated date, under a stated method. Matching the lot number proves the document belongs to your container. It does not extend the measurement forward in time, and storage and handling after the analysis sit outside what any certificate can speak to.
BC10 is a catalog code, not a lot number. BC is our internal abbreviation for BPC-157 and 10 is the total peptide content of the vial in milligrams. Because it identifies the product rather than the batch, every BC10 vial we have shipped carries the same code — so it will find the product page but not a certificate. For that you need the full lot number printed alongside it, such as 260202QLBC10 or 260406-HP-BC10-4, each of which resolves to its own published record.
A catalog code identifies the product: the material and how much of it the container holds. It is stable across every batch, so it cannot identify one. A lot number identifies a single production run and changes every time. It carries a six-digit YYMMDD date, a site code, the catalog code repeated inside it, and sometimes a trailing batch sequence. Only the lot number resolves to a certificate, because the analysis was performed on that run and no other.
Peptide manufacturing is a batch process. Each run is synthesised, purified and analysed separately, and the output of one run is not the output of the next. BPC-157 at 10 mg has shipped as lot 260202QLBC10 from the QL site and as 260406-HP-BC10-4 from the HP site — the same product under the same catalog code, from two runs, with two separate certificates. Neither document describes the other's material, which is why the lot number rather than the product name is the unit that matters.
KL80 is the KLOW blend at 80 mg of total peptide content across all components in the vial — not 80 mg of any single one. The capsule form carries catalog code KL80-C, inherited from that vial family with a capsule suffix, but its released lot number is 2605-SXH-KL35-01, which reflects the 3.5 mg of total peptide content in one capsule. It is the one place in our numbering where the lot string does not repeat the catalog code. Both refer to the same released lot.
BAC10 is the catalog code for our Reconstitution Solution in the 10 mL vial. It is the one code where the digits are not a milligram figure — there is no peptide in the container, so the number tracks the vial volume. It is documented on the same terms as everything else: the released lot is 260807-HP-BAC10 and its certificate is published at /quality alongside the peptide lots, reachable without an account or a request.