GPC Trace Analyzer

Compute Mₙ, Mw, Mz and Đ from a raw chromatogram, and see how far they move when you move the limits

What this does

Every other molecular weight tool on this site asks you for Mₙ and Mw as though those were things you measured. They are not. They are things your chromatography software computed, from a trace, using a calibration and a pair of integration limits somebody chose. This page does that computation in the open, on your own data, so you can see what the choices were worth.

The arithmetic is the standard slice summation. A GPC concentration detector reads a signal proportional to the mass of polymer eluting at each moment, so after subtracting a baseline, each slice i contributes a mass hi at a molecular weight Mi read off the calibration:

Mₙ = Σhi ÷ Σ(hi/Mi)     Mw = Σ(hiMi) ÷ Σhi     Mz = Σ(hiMi2) ÷ Σ(hiMi)

Nothing in those three expressions is difficult. What makes GPC numbers soft is everything around them: where the baseline sits, where the integration starts and stops, and whether the calibration was ever measured in the region you are reading. This page reports all three alongside the answer instead of behind it.

Analyze a trace

Chromatogram

Column 1 is always the x axis. Choose the concentration detector – usually RI. The slice sums assume the signal is proportional to mass, which a UV channel is only for a homopolymer with a constant chromophore, and a light-scattering channel is not at all.

Calibration
Baseline and limits

What the limits are worth

Integrate down toWindowMₙMwĐArea kept

A worked example with a known answer

The trace the page loads with is not a real injection. It was generated from an exact log-normal distribution with Mₙ = 20,000 g/mol and Đ = 1.300, sampled every 0.025 mL, and given a gently rising baseline so the baseline correction has something to do. That matters: it means the right answer is known before the page computes anything, so the gap between the right answer and the reported one is measurable rather than arguable.

Integrate the whole trace and the summation returns Mₙ = 20,000 and Đ = 1.3000, which is the check that the arithmetic is right. Then cut the tails off, the way every real integration does:

Integrate down toMₙMwĐ (4 dp)Mₙ errorĐ error
10% of peak height20,40025,4001.2440+2.2%−4.3%
5%20,20025,7001.2689+1.2%−2.4%
2%20,10025,8001.2844+0.6%−1.2%
1%20,10025,9001.2914+0.3%−0.7%
0.5%20,00026,0001.2955+0.2%−0.3%
the whole trace20,00026,0001.30000.0%0.0%

Two things fall out of that table, and both are worth carrying to a real sample.

The error only ever runs one way. Integration limits discard tail, and a distribution with its tails clipped is narrower than the one you injected. So Đ is always reported low and Mₙ always high, never the reverse. A sample integrated at 10% of peak height reads Đ = 1.244 when it is really 1.300 – and there is nothing in the chromatogram to tell you that, because the trace looks perfectly clean. This is the mechanism behind the well-known observation that two analysts integrating one raw file disagree: they are not making random errors in opposite directions, they are both clipping, by different amounts.

Đ is about twice as sensitive as Mₙ. At every row above, the dispersity error is roughly double the Mₙ error, because Đ is a ratio of two moments that move in opposite directions when you clip – Mₙ rises as the low-M tail goes, Mw falls as the high-M tail goes, and the ratio takes both hits. If you are comparing dispersities between samples, matching integration limits matters more than anything else you could do to the method.

It is worth putting that next to the opposite result from the calibration converter. There, Đ is the robust number: converting between polymer scales transforms it as Đtrue = Đapparent(1+αstd)/(1+αsample), which contains no K at all, so a badly chosen calibration constant leaves dispersity untouched. Here it is the fragile one. The two are not in tension: dispersity survives a wrong molecular weight axis and does not survive a wrong integration window, because the first rescales the axis and the second throws material away.

What this cannot do for you

Related tools