How many CSS properties are there, actually?

A joke on Twitter about listing every CSS property has evolved into an actual npm package. All it takes is a single terminal command to discover what it believes is the full set of CSS properties:

npx get-all-css-properties

The package reveals 259 properties, with the underlying data pulled from quackit.com.

But that number fluctuates wildly depending on where you check. A quick console query on MDN's CSS reference produces 584 entries — though that count is skewed by selectors, at-rules and other non-property items. Even MDN's own dedicated properties reference only covers 72 documented properties and is labeled incomplete.

The numbers vary across other resources as well: W3Schools has 228 properties, HTML Dog lists 125, and CSS-Tricks' almanac documents 176 (intentionally omitting shorthands like separate margin-left entries, filed under the parent margin property instead).

What does the W3C — the ultimate authority — say? Its records show 520 distinct property names across 66 technical reports and 66 editors' drafts. That's likely the definitive count, though it too remains subject to ongoing specification updates.