The coronary calcium score (CAC)

A fast, cheap, low-radiation CT that counts calcified plaque in your heart's arteries. It's one of the best-value tie-breakers in all of cardiology — and it has one blind spot that matters enormously for younger people.

The power of zero

What the number means

The Agatston score counts calcified plaque. A score of zero means no calcified plaque and, in most people, a very low 10-year risk — a 'warranty period' of roughly 5–10 years that often justifies safely deferring a statin in an intermediate-risk person. Bands: 1–99 mild, 100–399 moderate, >400 high (in the young, your MESA age/sex percentile matters more than the raw number). A CAC reclassifies about half of intermediate-risk people up or down — for ~$100 and under 1 mSv of radiation. Evidence ●●●●●

The blind spot — a zero isn't 'no plaque'

What a zero can't see

A calcium score sees only calcified plaque. Soft, non-calcified, lipid-rich plaque — the vulnerable kind that ruptures and causes many heart attacks, especially in people under 55 — is invisible to it. So a zero is powerfully reassuring in a 65-year-old but can falsely reassure a 40-year-old with early soft plaque or a high Lp(a). It also measures plaque burden, not narrowing: a high score isn't the same as a blockage. This is the exact reason a bare calcium score is not the last word.

When it earns its keep

Best used for

The sweet spot is the intermediate-risk 40–70-year-old deciding whether to start a statin. It adds little if you're already high-risk (you're treating regardless) or genuinely low-risk and young. And repeat scans to 'watch it fall' are mostly unhelpful — calcium can rise even as treatment works, because healing soft plaque calcifies and stabilises (the calcium paradox).

Zero calcium is not zero plaque

A zero calcium score means no calcified plaque — not no plaque. Soft, lipid-rich plaque and a high Lp(a) can still carry real risk in younger people, and a CAC will read them as zero. If you're young with a strong family history or a high ApoB/Lp(a), a zero should reassure you less than the number suggests.