AssayIndex
Supplier scorecard

TFS — Thermo Fisher Scientific (China) Co., Ltd.

Shanghai, CN · established 2006. The index holds 188 assay reports across 33 batches and 18 compounds, contributed by 6 laboratories. Every figure below is computed from those records and from nothing else.

188 reports33 batchesmedian purity 99.24 %documentation 95/100

Where TFS sells

Thermo Fisher Scientific (China) Co., Ltd. sells from its own storefront. The link is marked nofollow and sponsored: it exists so the figures on this scorecard can be read against what the supplier itself publishes. The index is paid nothing for it and a link is not an assessment.

Visit TFS at thermofisherpeptides.com →

Every figure above describes lots the index has seen. It says nothing about the lot you are offered, and the only check that does is the one on the certificate against the vial.

Block 1

Identification

Business facts, held constant across the index and not derived from the data. The index sells nothing and takes no supplier payment for placement; the storefront link below is marked nofollow and sponsored so a record can be checked against the seller, and is not a recommendation.

Legal name
Thermo Fisher Scientific (China) Co., Ltd.
Short code in this index
TFS
Also known as
TFS · Thermo Fisher · Thermo Fisher Scientific · 赛默飞世尔科技(中国)有限公司
City
Shanghai
Region
Shanghai
Country
CN
Established
2006
First record in index
21 Jan 2024
Most recent record
07 Oct 2026
Block 1b

Dispatch and regional stock

Counted from the chain-of-custody line on this supplier's own records, which names the route each vial travelled to the laboratory, and from the on-record reviews below. The index has no sight of any supplier's warehouse network and publishes none.

Domestic-warehouse route 20.2% n=188
Retail, shipped to the buyer 75.5% n=188
Direct to the laboratory 0.5% n=188
Median courier leg, direct despatch suppressed n=1 n<3 — see individual records
Route to the laboratoryRecordsShare
Domestic warehouse despatch3820.2%
Retail purchase, shipped to the buyer11460.6%
Retail purchase via a third-party forwarder2814.9%
Supplier despatch direct to the laboratory10.5%
Laboratory retained-sample archive73.7%

Every record here carries a chain-of-custody line and that line names the route the vial travelled. Of the 188 TFS records the index holds, 38 reached the contributing laboratory from a domestic warehouse rather than as a cross-border consignment, covering 12 of the 18 compounds TFS is represented by here — CJC-1295 with DAC, Cagrilintide, Tirzepatide, BPC-157, Kisspeptin-10, Retatrutide and 6 further compounds. Those are the TFS lines this index has actually seen arrive from regional stock, and they are a count of consignments rather than a stock listing: a line missing from them may simply never have been submitted for assay.

No contributor to this index has named a regional stock location for TFS. 38 of its records nevertheless arrived by a domestic-warehouse route, so stock is held somewhere; the index does not know where and will not guess.

The index measures nothing about lead time — it assays material, it does not buy it. What it has is TFS's own reviewers: 0 of the 12 on-record reviews state a quoted window and what happened against it. The reviews are reproduced in full in Block 11.

Block 2

Headline statistics

Each figure carries the n it was computed from. The n= badge next to a statistic is the number of records it was computed from. Below n=8 the badge is amber. Below n=3 the statistic is suppressed and the individual values are shown instead.

Median purity 99.24% n=188
Interquartile range 0.89pp n=188
10th percentile 98.37% n=188
Pass rate vs index spec 98.9% n=188
Median recovery vs claim 98.7% n=100
Median water 4.51% n=188
Median |mass error| 2.5ppm n=158
Records carrying a flag 25.5% n=188
013263992.093.094.095.096.097.098.099.0100.092.00–92.25 %: n=092.25–92.50 %: n=092.50–92.75 %: n=092.75–93.00 %: n=093.00–93.25 %: n=093.25–93.50 %: n=093.50–93.75 %: n=093.75–94.00 %: n=094.00–94.25 %: n=094.25–94.50 %: n=094.50–94.75 %: n=094.75–95.00 %: n=095.00–95.25 %: n=095.25–95.50 %: n=095.50–95.75 %: n=095.75–96.00 %: n=096.00–96.25 %: n=096.25–96.50 %: n=096.50–96.75 %: n=096.75–97.00 %: n=297.00–97.25 %: n=197.25–97.50 %: n=197.50–97.75 %: n=197.75–98.00 %: n=298.00–98.25 %: n=798.25–98.50 %: n=1198.50–98.75 %: n=1698.75–99.00 %: n=2699.00–99.25 %: n=2899.25–99.50 %: n=2399.50–99.75 %: n=2799.75–100.00 %: n=43median 99.24 Purity (% area) Reports
Figure 1. Purity distribution for all 188 TFS records carrying a purity figure. Domain fixed at 92–100 % area and bin width 0.25 pp on every purity histogram on this site, so this figure can be compared by eye with any other supplier's. Dashed line is the TFS median, 99.24 %; the index median is 99.08 %.
Block 3

Reproducibility across independent tests of one lot

Where the same physical lot was assayed more than once, the spread between those results is a property of the material and the fill, not of the market. It is the rarest and most informative statistic on this page, and it exists only for lots someone tested twice.

Median within-batch spread 0.50pp n=23
Index median spread 0.67pp n=28
Lots tested 3+ times 23 n=33

Across the 23 TFS lots in the index with three or more independent assays, the median spread between the highest and lowest purity result on one lot is 0.50 pp. Interpreting that number requires the laboratory repeatability figures: the best contributing laboratory here repeats to 0.16 pp and the worst to 0.34 pp, so a within-lot spread under about 0.5 pp is indistinguishable from measurement noise and a spread above 1 pp is a statement about the material.

Block 4

Supplier certificate against independent measurement

The supplier's own COA purity figure for a lot, minus the median of the index's independent observations of the same physical lot. Positive means the certificate reads higher than the measurement. Rule AX-R05 fires above 1.5 pp.

Median COA divergence +0.07pp n=33
Index median divergence +0.06pp n=28
Divergences in the supplier's favour 58% n=33
Divergences beyond 1 pp 0% n=33
Block 5

Provenance — where the tested material came from

Supplier-supplied samples are weaker evidence than independently purchased ones, because the supplier chose the vial. The index measures the size of that effect rather than assuming it.

Buyer-sourced median 99.26% n=180
Supplier-supplied median suppressed n=1 n<3 — see individual records
Supplier-supplied share of records 0.5% n=188

Too few records in one or both provenance classes (buyer-sourced n=180, supplier-supplied n=1) to compute a provenance gap for TFS. The index-wide effect is +0.31 pp and applies until measured otherwise.

96.697.297.898.499.099.6100.2Buyer-sourcedBuyer-sourced: Q1 98.83, median 99.26, Q3 99.72, n=180outlier 96.84outlier 96.95outlier 97.06outlier 97.34n=180Laboratory-retainedLaboratory-retained: Q1 98.81, median 99.00, Q3 99.11, n=7outlier 98.24outlier 99.72n=7 Purity (% area)
Figure 2. TFS purity by sample provenance. Tukey box plots: box spans Q1–Q3, the heavy rule is the median, whiskers reach the extreme observations inside 1.5 IQR of the box, and points outside the fences are plotted individually. The vertical line is the TFS overall median. Groups with fewer than two observations are omitted rather than drawn as a line.
Block 6

Documentation completeness

The score is not an opinion about paperwork. Each component is the share of TFS batches in the index whose certificate carries that field, weighted as set out on the scoring rubric.

Documentation score 95/100 n=33
Index median score 85/100 n=28
Certificate fieldBatches carrying itRubric weight
Purity figure stated100%25 points
Analytical method stated (column, gradient, wavelength)82%25 points
Peptide content stated48%20 points
Endotoxin stated45%15 points
Named impurities rather than a total78%15 points
Block 7

Coverage by compound

The delta column is this supplier's median minus the index-wide median for the same compound, which is the only comparison worth making: comparing a supplier's aggregate against another supplier's aggregate compares their product mixes as much as their process control.

CompoundClassReportsMedian %Index median %Δ (pp)Index specPass %
BPC-157Tissue-repair3199.5799.16+0.4198.0100
CJC-1295 with DACGrowth-hormone2898.8698.95-0.0997.5100
TirzepatideIncretin1998.7398.55+0.1897.089
SemaglutideIncretin1598.3898.89-0.5197.0100
RetatrutideIncretin1498.6898.37+0.3196.5100
SelankNeuroactive1399.8799.59+0.2899.0100
CagrilintideIncretin1399.3498.69+0.6696.5100
TB-500Tissue-repair1199.7299.53+0.1998.5100
CJC-1295 (no DAC)Growth-hormone1098.9499.09-0.1598.0100
Kisspeptin-10Melanocortin-receptor999.1099.28-0.1898.5100
MOTS-cMetabolic6 n=699.9399.13+0.8098.0100
SS-31 (Elamipretide)Metabolic5 n=599.7199.53+0.1798.5100
EpitalonShort4 n=499.9399.56+0.3799.0100
5-Amino-1MQNon-peptide4 n=499.8299.45+0.3698.0100
MK-677 (Ibutamoren mesylate)Non-peptide3 n=399.1499.49-0.3598.5100
L-CarnosineShort1 n=1n<399.5899.0100
Humanin (HNG)Metabolic1 n=1n<399.1297.5100
NAD+Non-peptide1 n=1n<399.2897.0100

Full per-compound breakdown with distributions and caveats →

96.697.297.898.499.099.6100.2BPC-157BPC-157: Q1 99.34, median 99.57, Q3 99.81, n=31n=31CJC-1295 with DACCJC-1295 with DAC: Q1 98.64, median 98.86, Q3 99.09, n=28n=28TirzepatideTirzepatide: Q1 98.15, median 98.73, Q3 99.06, n=19n=19SemaglutideSemaglutide: Q1 98.24, median 98.38, Q3 98.94, n=15n=15RetatrutideRetatrutide: Q1 98.27, median 98.68, Q3 98.83, n=14n=14SelankSelank: Q1 99.76, median 99.87, Q3 99.93, n=13n=13CagrilintideCagrilintide: Q1 99.20, median 99.34, Q3 99.54, n=13outlier 98.59n=13TB-500TB-500: Q1 99.69, median 99.72, Q3 99.92, n=11n=11CJC-1295 (no DAC)CJC-1295 (no DAC): Q1 98.87, median 98.94, Q3 99.11, n=10n=10Kisspeptin-10Kisspeptin-10: Q1 98.98, median 99.10, Q3 99.28, n=9n=9MOTS-cMOTS-c: Q1 99.93, median 99.93, Q3 99.93, n=6outlier 99.84n=6SS-31 (Elamipretide)SS-31 (Elamipretide): Q1 99.55, median 99.71, Q3 99.75, n=5n=5EpitalonEpitalon: Q1 99.88, median 99.93, Q3 99.93, n=4outlier 99.72n=45-Amino-1MQ5-Amino-1MQ: Q1 99.67, median 99.82, Q3 99.93, n=4n=4 Purity (% area)
Figure 3. TFS purity by compound, for the 14 compounds with at least four TFS records. Compounds are not equally difficult to make or to measure, so the vertical offsets between rows are largely a compound effect and only partly a supplier effect. Compare a row against the same compound on another supplier's page, never against the row above it.
Block 8

Quarterly trend

Submission volume is not market share and a quarterly median is not a trend unless the compound mix held still. Both caveats apply to every row below.

Median purity by quarter

Quarters with fewer than two purity records are gaps in the line rather than zeroes.

Coverage growth

Records added per quarter. Growth here is index coverage, not supplier volume.

QuarterBatchesReportsMedian purityRangeFlagged
2024-Q11698.7298.49–99.140
2024-Q211n<30
2024-Q31699.9399.84–99.930
2024-Q41499.8299.54–99.931
2025-Q131399.0698.83–99.3610
2025-Q253298.7596.84–99.7022
2025-Q321299.4598.18–99.930
2025-Q422099.6398.71–99.934
2026-Q153199.2897.90–99.935
2026-Q2105799.3497.55–99.935
2026-Q32699.0698.68–99.791

Full quarterly timeline, batch by batch →

Block 9

Which laboratory produced these numbers

Laboratories disagree with each other by a measured amount. A supplier tested mostly by one laboratory carries that laboratory's offset in its aggregate, and the adjusted column removes it.

LaboratoryReportsMedian purityLab bias (pp)Bias-adjusted
Janoshik9299.23+0.0099.23
PeptideMeter3299.16-0.0599.21
Medutest2999.37+0.0899.29
VendorInvestigate1398.89-0.1199.00
Nordanalyt1499.07+0.0299.05
Kestrel899.75+0.2499.51

Bias figures are estimated from paired same-lot comparisons and are published with their confidence intervals on inter-lab agreement.

Block 10

What this data does and does not show

Block 11

On-the-record reviews 12

Reviews are signed statements from index contributors about their own testing of this supplier's material. They are opinions attached to evidence, and they are not used in any statistic on this page.

95.0/ 100738 ratings across the index network
s.bakker99/100

Lot history: the certificate for the superseded lot on this line is still published beside its replacement. Retrieved both, confirmed the lot strings differ and the issue dates are four months apart, and compared them. Two tenths.

a.balogun99/100

Multiplicity: four independent services hold records against lot TFS-RT10-5306 and two were retrieved from the issuers rather than from the supplier. Both reconciled to the same lot string.

l.rahimi99/100

Peptide content is reported on a line separate from area percent, so the declared mass and the chromatographic figure are not conflated. On a trifluoroacetate salt the difference is material.

s.nilsen98/100

Certificate carries the column, the gradient and the integration threshold as issued. A submitted figure can therefore be compared against a declared one on stated conditions.

z.kowalski97/100

Documentation outside the lyophilised lines is thinner. The oral-tablet certificate held here carries purity and appearance and no dissolution determination; one was supplied on request and is recorded separately.

re.chukwu99/100

Karl Fischer water and bacterial endotoxin by LAL present as issued on the lyophilised lines, neither requested by the submitter.

ka.roos99/100

Blind submission of BPC-157 10 mg returned 99.1 per cent area against a declared 98.0. The declared figure was the conservative one, consistent with the rest of the set held here.

m.laurent98/100

Dispatch note carried the lot string and it matched the vial and the certificate. Transit Shanghai to the EU, nine days, tracked throughout.

y.ndiaye97/100

Warehouse rotation is not published. The lot dispatched was not the lot carrying the most recent certificate; it was identified on request before payment.

o.novak99/100

Related substances itemised by retention time rather than aggregated, which permits a submitted impurity profile to be compared line by line against the declared one.

l.nwosu99/100

Two lots of the same catalogue line held here, four months apart, mean difference 0.2 per cent area. Within the repeatability of the method as stated on both certificates.

b.abubakar98/100

Custom-sequence quotation took four working days against same-day acknowledgement on catalogue enquiries. Recorded as an operational interval, not an assay finding.

Block 12

Most recent records

The 25 most recently submitted TFS records. All 188 are listed on the full record listing.
ReportCompoundLotLabQuarterPurity %Water %Recovery %ProvenanceFlagsResult
AX-2026-041681CJC-1295 with DACTFS-{CAT}-9675PeptideMeter2026-Q398.823.67Buyer-sourced0PASS
AX-2026-041766BPC-157TFS-{CAT}-1156Janoshik2026-Q399.546.34Buyer-sourced1MARGINAL
AX-2026-041682CJC-1295 with DACTFS-{CAT}-9675Nordanalyt2026-Q398.943.24Buyer-sourced0PASS
AX-2026-041683CJC-1295 with DACTFS-{CAT}-9675Medutest2026-Q398.683.4697.0Buyer-sourced0PASS
AX-2026-041765BPC-157TFS-{CAT}-1156Janoshik2026-Q399.796.01Buyer-sourced0PASS
AX-2026-041680CJC-1295 with DACTFS-{CAT}-9675Medutest2026-Q399.182.85100.4Buyer-sourced0PASS
AX-2026-041691SemaglutideTFS-{CAT}-9744Janoshik2026-Q298.316.0791.4Buyer-sourced0PASS
AX-2026-041700SS-31 (Elamipretide)TFS-{CAT}-1142Medutest2026-Q299.752.2796.3Buyer-sourced0PASS
AX-2026-041672SS-31 (Elamipretide)TFS-{CAT}-9733Janoshik2026-Q299.714.63102.7Buyer-sourced0PASS
AX-2026-041701SS-31 (Elamipretide)TFS-{CAT}-1142Kestrel2026-Q299.903.10Buyer-sourced0PASS
AX-2026-041759SelankTFS-{CAT}-1712Janoshik2026-Q299.938.13102.2Buyer-sourced0PASS
AX-2026-041740CagrilintideTFS-{CAT}-1681Kestrel2026-Q299.935.15104.9Buyer-sourced0PASS
AX-2026-041743CagrilintideTFS-{CAT}-1681Medutest2026-Q299.284.75105.8Buyer-sourced0PASS
AX-2026-041702BPC-157TFS-{CAT}-9814Medutest2026-Q299.084.95Buyer-sourced0PASS
AX-2026-041760SelankTFS-{CAT}-1712Janoshik2026-Q299.827.70Buyer-sourced0PASS
AX-2026-041733MK-677 (Ibutamoren mesylate)TFS-{CAT}-1096PeptideMeter2026-Q299.073.9395.1Laboratory-retained0FAIL
AX-2026-041752SelankTFS-{CAT}-1712Medutest2026-Q299.637.43Buyer-sourced1FAIL
AX-2026-041746CagrilintideTFS-{CAT}-1681PeptideMeter2026-Q299.205.1498.9Buyer-sourced0PASS
AX-2026-041673SS-31 (Elamipretide)TFS-{CAT}-9733Janoshik2026-Q299.515.34100.9Buyer-sourced0PASS
AX-2026-041748CagrilintideTFS-{CAT}-1681Janoshik2026-Q299.414.49107.2Buyer-sourced0PASS
AX-2026-041686SemaglutideTFS-{CAT}-9744PeptideMeter2026-Q298.216.58Buyer-sourced0PASS
AX-2026-041744CagrilintideTFS-{CAT}-1681Janoshik2026-Q299.725.23Buyer-sourced0PASS
AX-2026-041675RetatrutideTFS-{CAT}-9709Janoshik2026-Q298.203.37Buyer-sourced0PASS
AX-2026-041693SemaglutideTFS-{CAT}-9391Janoshik2026-Q299.154.92Laboratory-retained0PASS
AX-2026-041708BPC-157TFS-{CAT}-9814Medutest2026-Q299.394.21Buyer-sourced0PASS
Block 13

Contributor annotations on TFS records 361

Annotations are this index's only discussion surface: signed technical comments attached to a specific record by a named contributor. They are not moderated for agreement with the index's own arithmetic. The most recent on TFS material are below, each linked to the record it sits on.

The isotope pattern is consistent with the elemental composition of BPC-157. That is a second, independent check on identity and it agrees with the mass.
Purity usually falls between gram and kilogram scale. A figure of 99.54 % on a commercial lot rather than a laboratory batch is the more informative version of this result.
Baseline on this trace is flat enough that the reporting threshold is doing real work rather than hiding peaks in noise. That is a precondition for believing 99.54 % and it is not always met.
A single result at 99.54 % is one draw. What makes a supplier's process legible is the spread across its lots, and that is on the scorecard rather than here. This record is one good point in a distribution worth reading whole.
Purity usually falls between gram and kilogram scale. A figure of 99.79 % on a commercial lot rather than a laboratory batch is the more informative version of this result.
One result at the top of the distribution should not move anybody's estimate much on its own. Purity distributions are compressed at the top and long-tailed at the bottom, so the informative observations are the low ones.
Four slots — water, counter-ion, residual and peptide — are exhaustive and mutually exclusive. Anything that does not fit one of them is a fifth thing nobody measured, and on this record there is no remainder.
Where the close neighbour is an aggregate rather than a related substance, size exclusion separates them trivially and reverse phase never will.

Every annotation the index holds on TFS material sits on its own record; the full set is reachable from the record listing and from each contributor's page. To read them against what TFS itself publishes, open thermofisherpeptides.com → alongside.

Block 14

Where to buy TFS

Thermo Fisher Scientific (China) Co., Ltd. sells direct from thermofisherpeptides.com. Everything on this page describes lots the index has already seen; the certificate that matters is the one that arrives with the vial you order, and the lot code on it should match the vial. Ask for the lot-specific document rather than the batch-level summary, and ask for the integration report if you intend to reconcile the figure yourself.

Go to the TFS store at thermofisherpeptides.com →

Marked nofollow and sponsored. The index is paid nothing for it, takes no commission, and a link is not an assessment. Research compounds. Not medical advice. Nothing on this site is a safety assessment and nothing on it is approved for human use.