Free clinical tool

Cholesterol Unit Converter

Total, LDL, HDL, non-HDL and triglycerides between mg/dL and mmol/L — with the right factor applied to each, because cholesterol and triglycerides do not share one.

Reviewed by
Alpha Health Finder Editorial Team
Last reviewed

One report, two conversion factors

A lipid panel is a mass of substance in a volume of blood. The United States reports it in milligrams per decilitre; the United Kingdom, Europe, Australia and Canada report the same blood in millimoles per litre, which counts molecules instead. Getting from one to the other means dividing by the mass of one mole — and that is where a lipid panel differs from almost every other blood test, because a lipid panel reports two different molecules and therefore needs two different factors.

Everything on the report with "cholesterol" in its name — total cholesterol, LDL-C, HDL-C, non-HDL-C — is the same molecule, C27H46O, measured inside different particles. It converts one way. Triglycerides are not cholesterol at all: they are a mixture of triacylglycerols, conventionally priced as triolein, C57H104O6, which is 2.29 times heavier. Use the cholesterol factor on a triglyceride and the answer is out by that same factor, in whichever direction you are going: too high on the way into mmol/L, too low on the way back out. The second is the one that does damage. A genuinely raised triglyceride of 1.7 mmol/L is 151 mg/dL; with the cholesterol factor it comes out at 66 mg/dL, which looks unremarkable. That is the failure direction, and it is why the converter above asks which line of the report you are reading before it will answer.

The factors themselves come from the molar masses. One mg/dL is 10 mg/L; divide by the molar mass in g/mol and you have mmol/L. Cholesterol at 386.65 g/mol gives 0.0258632, printed as 0.0259. Triolein at 885.4 g/mol gives 0.0112943, printed as 0.0113. Those two molar masses are the same ones this site's LDL calculator uses, deliberately, so that the two pages cannot print different mmol/L for one reading.

We then audited the four numbers that actually get printed, the way this site's testosterone and estradiol converters audit theirs. NIST publishes standard atomic weights as intervals rather than points, because the isotopic composition of ordinary terrestrial material genuinely varies: carbon is [12.0096, 12.0116], hydrogen [1.00784, 1.00811], oxygen [15.99903, 15.99977]. Run those through C27H46O and cholesterol's molar mass is anywhere from 386.619 to 386.686 g/mol; through C57H104O6 and triolein's is 885.357 to 885.503. So each factor is an interval, and a printed factor is either the correct rounding of that interval or it is not.

Three of the four are. 0.0259 and 0.0113 are the correct four-decimal-place roundings of their molar masses, and 38.67 is the correct two-decimal rounding of cholesterol's: the derived value is 38.6652, which rounds to 38.67, and the printed number clears the top of the permitted interval by 0.0036% — which is what rounding to two decimals does. The triglyceride divisor 88.57 is the odd one out. Triolein's divisor interval is [88.5357, 88.5503] and every value in it rounds to 88.54. 88.57 is not a rounding of that molar mass; it sits 0.0222% above the top of the interval, six times further out than 38.67 is, and on the wrong side of the rounding.

Where did it come from? We could not source an answer and this page will not invent one. What we can show is arithmetic anyone can repeat: the forward factor at four significant figures is 0.01129 — one digit finer than the 0.0113 usually printed — and 1 ÷ 0.01129 = 88.5740, which rounds to 88.57. A reciprocal of an already-rounded number is not the same thing as a rounding of a molar mass, and the size of the gap is exactly what you would expect from compounding one rounding through another. That is an observation about the numbers, not a sourced account of how the figure entered the literature, and the difference matters.

AND IT DOES NOT MATTER CLINICALLY, WHICH IS THE OTHER HALF OF THE FINDING. At a triglyceride of 10 mmol/L — far above anything a routine report carries — 88.57 gives 885.7 mg/dL against 885.4 from the molar mass. That is 0.30 mg/dL, 0.034%. Nobody has ever been misclassified by it. The reason to publish the audit is not that the number is dangerous; it is that a converter which cannot say where its own constants come from has no way of telling you which of its numbers are dangerous and which are not. The one on this page that is worth 2.29× is the analyte, and it is the one every other converter leaves to the reader.

One more limit, stated because it is larger than everything argued about above. "Triglycerides" on a lipid panel is not one compound. It is the total of a mixture whose fatty-acid chains differ from person to person and from sample to sample, and the convention is to price the whole mixture as if it were triolein. There is no molar mass of "serum triglyceride" to look up. We found no source giving a mean composition for human serum, so this page puts no figure on how far a real sample departs from triolein — that assumption, not the second decimal place of the divisor, is the real limit on any triglyceride conversion, and every converter including this one inherits it.

WHAT THIS PAGE WILL NOT TELL YOU. Whether your number is good. The cut points converted in the last chart below are band boundaries and equation validity limits from two named papers, each labelled with what it actually is; none of them is a target, and there is no row at all for total cholesterol or HDL because no source we opened attributes a normal or optimal value for those to a named population. Changing the notation of a result does not change the result. What it means is a conversation with the clinician who ordered it.

The formula

Cholesterol — total, LDL-C, HDL-C, non-HDL-C (one molecule, one factor)

mmol/L = mg/dL × 10 / M M = molar mass of C27H46O, 386.65 g/mol

= mg/dL × 0.0258632 (printed as × 0.0259)

mg/dL = mmol/L × M / 10 = mmol/L × 38.665

= mmol/L × 38.67 (as printed)

Triglycerides (a different molecule, priced as triolein)

mmol/L = mg/dL × 10 / M M = molar mass of C57H104O6, 885.4 g/mol

= mg/dL × 0.0112943 (printed as × 0.0113)

mg/dL = mmol/L × M / 10 = mmol/L × 88.540

= mmol/L × 88.57 (as printed — see the audit chart)

non-HDL-C = total cholesterol − HDL-C (converts as cholesterol)

The two factors differ by M(triolein) / M(cholesterol) = 2.2899

M is the only constant in any of this, and there are two of them because a lipid panel reports two molecules. The printed pairs are not exact reciprocals of each other — 0.0259 × 38.67 = 1.001553 and 0.0113 × 88.57 = 1.000841 — so a round trip through them does not land where it started: 200 mg/dL of cholesterol comes back as 200.31, and 250 mg/dL of triglycerides as 250.21. The factors derived from M are exact reciprocals by construction, so the same trip through them is lossless. This is the usual reason two websites hand you two answers for one reading.

Worked example

A common US panel — total cholesterol 200, LDL-C 120, HDL-C 50, triglycerides 150 mg/dL — converted in one pass, because a report is issued in one unit system throughout:

  • Total cholesterol: 200 × 0.0258632 = 5.17 mmol/L
  • LDL-C: 120 × 0.0258632 = 3.10 mmol/L — the same factor, because LDL-C is cholesterol
  • HDL-C: 50 × 0.0258632 = 1.29 mmol/L
  • non-HDL-C: 200 − 50 = 150 mg/dL = 3.88 mmol/L — subtract first, then convert
  • Triglycerides: 150 × 0.0112943 = 1.69 mmol/L. With the cholesterol factor by mistake it would read 3.88 mmol/L — 2.29 times too high, and identical to the non-HDL-C figure above for the plain reason that both are 150 mg/dL run through the cholesterol factor. It is the only error on this panel big enough to notice.
  • For contrast, the printed × 0.0113 instead of the molar mass moves that same triglyceride by 0.0009 mmol/L, or 0.050%. Two errors, four orders of magnitude apart, and the small one is the one every converter warns you about.

Cholesterol conversion chart — mg/dL to mmol/L

For total cholesterol, LDL-C, HDL-C and non-HDL-C, which are all the same molecule and all convert identically. NOT for triglycerides — use the next chart for those.

On a US reportmmol/Lfrom molar massmmol/L× 0.0259Differencemmol/L
40 mg/dLtotal, LDL, HDL or non-HDL1.031.040.0015
55 mg/dLtotal, LDL, HDL or non-HDL1.421.420.0020
70 mg/dLtotal, LDL, HDL or non-HDL1.811.810.0026
100 mg/dLtotal, LDL, HDL or non-HDL2.592.590.0037
116 mg/dLtotal, LDL, HDL or non-HDL3.003.000.0043
130 mg/dLtotal, LDL, HDL or non-HDL3.363.370.0048
155 mg/dLtotal, LDL, HDL or non-HDL4.014.010.0057
160 mg/dLtotal, LDL, HDL or non-HDL4.144.140.0059
190 mg/dLtotal, LDL, HDL or non-HDL4.914.920.0070
200 mg/dLtotal, LDL, HDL or non-HDL5.175.180.0074
240 mg/dLtotal, LDL, HDL or non-HDL6.216.220.0088
300 mg/dLtotal, LDL, HDL or non-HDL7.767.770.0110

NO ROW HERE IS MARKED NORMAL, OPTIMAL OR HIGH, and that is deliberate: the sourced cut points are in the last chart, each labelled with what it actually is. The 116 and 155 mg/dL rows are there because 3.0 and 4.0 mmol/L are round numbers in SI and neither is round in mg/dL. The difference column is the whole cost of the printed 0.0259 rather than the molar mass — it reaches only 0.0110 mmol/L at the very bottom row. Every figure computed by the same function the converter above calls, which is also the one /tools/ldl-calculator uses.

Triglyceride conversion chart — mg/dL to mmol/L

Triglycerides take their own factor. The third column is what you get if you use the cholesterol factor by mistake, which is the commonest error on a lipid panel.

On a US reportmmol/L× 0.0113 (correct)mmol/Lwith the cholesterol factorOverstated by
50 mg/dLtriglycerides0.561.290.73 mmol/L
75 mg/dLtriglycerides0.851.941.09 mmol/L
100 mg/dLtriglycerides1.132.591.46 mmol/L
150 mg/dLtriglycerides1.693.882.19 mmol/L
200 mg/dLtriglycerides2.265.172.91 mmol/L
250 mg/dLtriglycerides2.826.473.65 mmol/L
300 mg/dLtriglycerides3.397.764.37 mmol/L
400 mg/dLtriglycerides4.5210.355.83 mmol/L
500 mg/dLtriglycerides5.6512.937.28 mmol/L
600 mg/dLtriglycerides6.7815.528.74 mmol/L
800 mg/dLtriglycerides9.0420.6911.65 mmol/L
1000 mg/dLtriglycerides11.2925.8614.57 mmol/L

The middle column is wrong on every row, by a constant factor of 2.2899 — the ratio of the two molar masses. Going the other way the error inverts and becomes the dangerous one: a triglyceride of 1.7 mmol/L is 151 mg/dL, but converted as cholesterol it reads 66 mg/dL, turning a raised result into an ordinary-looking one. The 400 mg/dL row is the Friedewald equation criterion and the 800 the top of the range the Sampson equation was validated over; both are in the last chart with their sources. No row here is a target.

Cholesterol and triglyceride conversion chart — mmol/L to mg/dL

The other direction, for a UK, European, Australian or Canadian report. One number, two answers, depending entirely on which line of the report it came from.

On an SI reportAs cholesteroltotal, LDL, HDL, non-HDLAs triglyceridesTG onlyGapmg/dL
0.8 mmol/L31 mg/dL71 mg/dL40
1.0 mmol/L39 mg/dL89 mg/dL50
1.3 mmol/L50 mg/dL115 mg/dL65
1.7 mmol/L66 mg/dL151 mg/dL85
2.0 mmol/L77 mg/dL177 mg/dL100
2.6 mmol/L101 mg/dL230 mg/dL129
3.0 mmol/L116 mg/dL266 mg/dL150
3.4 mmol/L131 mg/dL301 mg/dL170
4.0 mmol/L155 mg/dL354 mg/dL199
4.5 mmol/L174 mg/dL398 mg/dL224
5.2 mmol/L201 mg/dL460 mg/dL259
6.0 mmol/L232 mg/dL531 mg/dL299
9.0 mmol/L348 mg/dL797 mg/dL449

The two columns are 2.2899 times apart at every row, which is the ratio of triolein's molar mass to cholesterol's and not a rounding of anything. This is the direction in which the error does harm: read a triglyceride with the cholesterol factor and a result that should have raised an eyebrow does not. The converter above will not let that happen, because it asks which line of the report you are reading before it converts.

The four printed conversion factors, audited against the molar mass

Every printed lipid conversion factor is a rounding of a molar mass, and NIST publishes atomic weights as intervals, so the rounding is checkable. Three of these four check out. One does not.

Printed factorPermitted intervalfrom NIST atomic weightsDerivedinterval midpointCorrect roundingat the printed precisionVerdict
Cholesterol × 0.0259mg/dL → mmol/L · C27H46O0.025861–0.0258650.0258630.0259Correct rounding+0.1430% vs derived
Triglycerides × 0.0113mg/dL → mmol/L · C57H104O60.011293–0.0112950.0112940.0113Correct rounding+0.0536% vs derived
Cholesterol × 38.67mmol/L → mg/dL · C27H46O38.6619–38.668638.665238.67Correct rounding+0.0123% vs derived
Triglycerides × 88.57mmol/L → mg/dL · C57H104O688.5357–88.550388.543088.54NOT a rounding of it+0.0305% vs derived

None of the four sits INSIDE its interval, and none should: they are roundings, and a rounding lands outside the thing it rounds almost every time. The question the last column answers is whether each is the CORRECT rounding at the precision it is printed to, and 88.57 is the one that is not — triolein's divisor interval is [88.5357, 88.5503] and every value in it rounds to 88.54. An independent check agrees: ChEBI lists triolein's average mass as 885.453 g/mol, which gives 88.5453 — still not 88.57 — while its cholesterol average mass of 386.664 gives 38.6664, which rounds to the printed 38.67. WHERE 88.57 CAME FROM IS NOT SOURCED AND THIS PAGE DOES NOT CLAIM TO KNOW. The arithmetic that is available to anybody: 1 ÷ 0.01129 = 88.5740, the reciprocal of the forward factor already rounded to four significant figures, which rounds to 88.57. AND IT COSTS NOTHING: at 10 mmol/L of triglycerides, higher than a routine laboratory reports, the printed divisor moves the answer by 0.30 mg/dL — 0.034%. Keep using it. The factor on this page worth 2.29× is the analyte, not the decimal place.

Lipid decision points from the literature, in both units

The numbers the papers behind the LDL equations actually state, converted with the right factor for each. Each row says what it is; none of them is a target.

Figuremg/dLmmol/LWhat it isand where it comes from
LDL cholesterolLDL-C · Martin 2013; Sampson 202070 mg/dL1.81 mmol/LLowest band of the US guideline classification used in Martin 2013; also a treatment threshold in Sampson 2020
LDL cholesterolLDL-C · Martin 2013; Sampson 2020100 mg/dL2.59 mmol/LUS guideline band boundary; also a treatment threshold in Sampson 2020
LDL cholesterolLDL-C · Martin 2013130 mg/dL3.36 mmol/LUS guideline band boundary
LDL cholesterolLDL-C · Martin 2013155 mg/dL4.01 mmol/LEuropean guideline band boundary — the US list has no equivalent
LDL cholesterolLDL-C · Martin 2013160 mg/dL4.14 mmol/LUS guideline band boundary
LDL cholesterolLDL-C · Martin 2013; Sampson 2020190 mg/dL4.91 mmol/LTop band in both lists; a treatment threshold in Sampson 2020
TriglyceridesTG · Martin 2013400 mg/dL4.52 mmol/LThe Friedewald equation criterion — above this LDL-C is not calculated that way
TriglyceridesTG · Sampson 2020800 mg/dL9.04 mmol/LUpper limit of the range the Sampson equation was validated over

THERE IS NO ROW HERE FOR TOTAL CHOLESTEROL OR HDL, and that absence is the point. Martin 2013 classifies LDL-C into bands — verbatim, "(<70, 70–99, 100–129, 130–159, 160–189, and ≥190 mg/dL)" for the US list and "(<70, 70–99, 100–154, 155–189, and ≥190 mg/dL)" for the European one, which is why 155 appears above and has no US equivalent — and Sampson 2020 reports misclassification "at LDL-C treatment thresholds of 70, 100, and 190 mg/dL". Neither paper, and no other source we opened, attributes a normal or optimal total cholesterol or HDL-C to a named population, so this page states none rather than repeating a number it cannot trace. A band boundary is not a target either: what your own figure means depends on your overall cardiovascular risk and belongs to the clinician who ordered the test.

Frequently asked questions

How do I convert cholesterol from mg/dL to mmol/L?
Multiply by 0.0259. A total cholesterol of 200 mg/dL is 5.17 mmol/L; an LDL-C of 100 mg/dL is 2.59 mmol/L; an HDL-C of 50 mg/dL is 1.29 mmol/L. The same factor applies to total, LDL, HDL and non-HDL cholesterol, because they are all the same molecule measured in different particles — it is 10 divided by cholesterol's molar mass of 386.65 g/mol. To go back, multiply mmol/L by 38.67. Triglycerides do NOT use this factor.
Why do triglycerides use a different conversion factor?
Because a triglyceride is a different and far heavier molecule than cholesterol. Cholesterol is C27H46O at 386.65 g/mol; serum triglyceride is conventionally priced as triolein, C57H104O6, at 885.4 g/mol — 2.29 times heavier, so the factor is 2.29 times smaller: 0.0113 rather than 0.0259. Triglycerides of 150 mg/dL are 1.69 mmol/L, not the 3.88 the cholesterol factor gives. This is not a rounding difference, it is a factor of more than two, and it is the commonest error on a lipid panel.
What is a total cholesterol of 5.2 mmol/L in mg/dL?
201 mg/dL. Multiply mmol/L by 38.67, or by the molar mass over ten, 38.665 — the two agree to well under a mg/dL. For the other common SI figures: 4.0 mmol/L is 155 mg/dL, 3.0 mmol/L is 116 mg/dL, and 1.3 mmol/L is 50 mg/dL. If the figure you are converting is a triglyceride, none of those apply — 5.2 mmol/L of triglycerides is 460 mg/dL instead.
Is the 88.57 triglyceride conversion factor correct?
It is not the correct rounding of the molar mass, and it does not matter. Triolein's molar mass derived from NIST's standard atomic weight intervals is 885.357–885.503 g/mol, so the divisor interval is 88.5357–88.5503 and every value in it rounds to 88.54, not 88.57. ChEBI's independently listed average mass gives 88.5453, which is also not 88.57. What 88.57 is, arithmetically, is 1 ÷ 0.01129 = 88.5740 — the reciprocal of the forward factor already rounded. We found no source stating how it entered the literature and do not claim to know. At 10 mmol/L it changes the answer by 0.30 mg/dL, or 0.034%, so keep using it.
Why do two cholesterol converters give me slightly different answers?
Because the printed factors are not exact reciprocals of one another. 0.0259 × 38.67 = 1.001553 rather than 1, so a cholesterol of 200 mg/dL converted out and back comes home as 200.31 — 0.31 mg/dL adrift. Triglycerides drift too: 250 mg/dL returns as 250.21. A site that rounds at each step, or that rounds to one decimal place, compounds that further. The factors derived from the molar masses are exact reciprocals, so this converter round-trips losslessly.
How do I convert non-HDL cholesterol?
Subtract first, then convert. Non-HDL-C is total cholesterol minus HDL-C, and because both are cholesterol the subtraction is valid in either unit — but doing it before converting avoids compounding two roundings. On a panel of total 200 and HDL 50 mg/dL, non-HDL-C is 150 mg/dL, which is 3.88 mmol/L at the cholesterol factor. The converter above derives it for you whenever you enter both a total and an HDL, and refuses to derive it when HDL is not below total, because that panel was mistyped and guessing which field is wrong would be inventing a result.
Is a "triglyceride" a single molecule with one molar mass?
No, and this is the real limit on the conversion. The triglycerides line on a lipid panel is the total of a mixture of triacylglycerols whose fatty-acid chains differ between people and between samples; there is no molar mass of "serum triglyceride" to look up. The convention, which every laboratory and every converter including this one follows, is to price the whole mixture as if it were triolein at 885.4 g/mol. We found no source giving a mean composition for human serum, so this page puts no figure on how far a real sample departs from that assumption — it simply says that the assumption, not the fourth decimal place of the factor, is where the uncertainty actually lives.
What is a normal cholesterol level in mmol/L?
This page will not give you one, because no source it opened attributes a normal or optimal value to a named population. What it can convert are the figures the literature actually states, and they are band boundaries rather than targets: Martin 2013's US LDL-C classification runs <70, 70–99, 100–129, 130–159, 160–189 and ≥190 mg/dL, which in SI are under 1.81, 2.59, 3.36, 4.14 and 4.91 mmol/L. There is no equivalent list here for total cholesterol or HDL-C at all. What your own figure means depends on your overall cardiovascular risk, and that is a conversation with your clinician.

Sources

  1. [1]Martin SS, Blaha MJ, Elshazly MB, et al. Comparison of a novel method vs the Friedewald equation for estimating low-density lipoprotein cholesterol levels from the standard lipid profile. JAMA. 2013;310(19):2061–2068 — Table 1 footnote: "SI conversion factors: To convert HDL-C, LDL-C, and total cholesterol, multiply by 0.0259; triglycerides, multiply by 0.0113."
  2. [2]Rakotonjafiniarivo FH, Antsonantenaina T, Rakotomalala MS, Andriambelo RD, Ranaivosoa MK. Friedewald and Martin–Hopkins formulae for estimating low-density lipoprotein cholesterol in a Malagasy population. Afr J Lab Med. 2026;15(1):3012 — Methods, "Unit conversion": "For total cholesterol, HDL-C, and LDL-C: 1 mmol/L = 38.67 mg/dL" and "For triglyceride: 1 mmol/L = 88.57 mg/dL"
  3. [3]NIST Atomic Weights and Isotopic Compositions — standard atomic weights of carbon [12.0096,12.0116], hydrogen [1.00784,1.00811] and oxygen [15.99903,15.99977]
  4. [4]ChEBI entry CHEBI:16113 (cholesterol) — Formula "C27H46O", Average Mass 386.664, Net Charge 0
  5. [5]ChEBI entry CHEBI:53753 (triolein) — Formula "C57H104O6", Average Mass 885.453, Net Charge 0
  6. [6]Sampson M, Ling C, Sun Q, et al. A New Equation for Calculation of Low-Density Lipoprotein Cholesterol in Patients With Normolipidemia and/or Hypertriglyceridemia. JAMA Cardiol. 2020;5(5):540–548 — "treatment thresholds of 70, 100, and 190 mg/dL" and TG "up to 800 mg/dL"

Embed this calculator

Free to use on your own site, no permission needed and no account. The widget resizes itself to fit your layout. Keeping the credit line underneath is appreciated, but the calculator works exactly the same if you delete it.

Paste this
<!-- Cholesterol Unit Converter — by Alpha Health Finder. Free to embed; keeping the credit line below is appreciated but not required. -->
<iframe src="https://alphahealthfinder.com/embed/tools/cholesterol-unit-converter"
        title="Cholesterol Unit Converter"
        width="100%" height="2840" loading="lazy"
        style="border:1px solid #e2e8f0;border-radius:12px;max-width:680px;width:100%"
        data-ahf-embed="cholesterol-unit-converter"></iframe>
<p style="max-width:680px;margin:8px 0 0;font:13px/1.5 system-ui,-apple-system,sans-serif;color:#64748b">
  <a href="https://alphahealthfinder.com/tools/cholesterol-unit-converter">Cholesterol Unit Converter</a> by <a href="https://alphahealthfinder.com">Alpha Health Finder</a>
</p>
<script src="https://alphahealthfinder.com/embed/resize.js" async></script>

Next steps

Related calculators

Educational reference, not medical advice. Converting units changes the notation and not the result. Nothing on this page interprets a lipid panel, and no normal or optimal value is stated anywhere on it, because no source opened for this page attributes one to a named population. Read your figures against the range printed by the laboratory that ran them, and discuss them with your clinician.