Conversion calculator

px to pt Converter

Points, picas and millimetres convert exactly. Em, rem and percentages do not convert at all until something says what they are relative to — and that is the interesting half.

Calculator

Try:

12 pt

16 px

Every figure below is exact rather than approximate — CSS defines an inch as exactly 96 pixels, 72 points and 6 picas, so 12 pt is exactly 16 px.

The units that have a fixed size

Absolute units, converted from your figure
UnitValueWhat it is
CSS pixel16Defined as 1/96 inch. A reference pixel, not a hardware one — see the device pixel ratio below.
point (PostScript)12Exactly 1/72 inch. What CSS, Figma, Sketch and every modern design tool mean by a point.
pica1Twelve points. Column widths in print are still measured in these.
inch0.166667Exactly 96 CSS pixels, by definition rather than by measurement.
millimetre4.2333The inch is exactly 25.4 mm, so this is exact too.
centimetre0.423333Ten millimetres.
quarter-millimetre16.9333A CSS unit of a quarter millimetre, used in Japanese typography.
point (traditional American)12.0450The older 1/72.27 inch point. Only in historical typographic tables, and 0.375% smaller than the PostScript one.
Didot point11.2589The continental European point, about 0.376 mm. Twelve of them make a cicero.

Two rows are traps. The traditional American point is 1/72.27 inch rather than 1/72 — 0.375% smaller, and the one older typographic tables use. The Didot point is different again at about 0.376 mm, and twelve of them make a cicero. Modern design tools and CSS all mean the PostScript point.

The units that do not

1.5em on a 16 px base24 px18 pt · resolves against the element's own font size
The same 1.5em, on different bases
Base font sizeResolves toIn points
12 px18 px13.5000
14 px21 px15.7500
16 px24 px18
18 px27 px20.2500
20 px30 px22.5000
24 px36 px27

One value, six lengths. That is why em and rem are in their own panel rather than in the dropdown above — putting them beside points and millimetres would imply they have a size, and they do not until an element supplies one.

Why rem exists: em compounds

Each level multiplies the level above it
LevelRuleResolves toIf it were rem
Root16 px16 px
Level 11.25em20 px20 px
Level 21.25em25 px20 px
Level 31.25em31.2500 px20 px

The em column compounds and the rem column does not. Three nested 1.25em rules on a 16 px root give 31.25 px, not 20 — each multiplier applies to the already-multiplied size above it. A rem always resolves against the root, so it gives the same length at any depth. That difference is the entire reason rem was added to CSS.

A CSS pixel is not a device pixel

16 CSS px at DPR 232 device px4× the pixels by area
What a CSS pixel becomes on real hardware
DeviceDPRDevice pixelsBy area
Standard desktop monitor1161×
Typical laptop or tablet2324×
High-density phone3489×
Windows at 125% scaling1.25201.5625×

CSS defines a pixel as 1/96 inch — a reference pixel, chosen so that a page is a similar physical size on every screen. Hardware pixels are a separate thing, and a 3× phone paints nine of them for every CSS pixel of area. That squared figure is the one that decides image asset weight, and it is the one people halve by mistake.

What this converter covers

Nine absolute units including all three points, plus em, rem and percentages resolved against a base you supply.

  • px, pt, pica, inch, mm, cm and the Q unit, all exact by specification
  • The PostScript, traditional American and Didot points, listed apart
  • em, rem and percentages against any base font size
  • The compounding an em chain produces, level by level
  • CSS pixels against device pixels at any device pixel ratio
Exact by spec em is not a length CSS vs device px Three points

Free, no signup — exact by definition, not an estimate.

Updated 8 September 2026

At a glance

Formula shown
1in = 96px = 72pt = 6pc = 25.4mm · em px = value × element font size · rem px = value × root font size
Scenario support
12 pt is exactly 16 px · three nested 1.25em rules give 31.25 px, not 20
Educational estimate
Planning support from the values you enter — not professional advice.

The absolute chain is exact

CSS fixes the relationship between its absolute units by definition rather than by measurement, which makes this one of the few conversion tables with no rounding anywhere in it.

One inch, exactly
UnitPer inchIn pixels
CSS pixel961
Point721.3333
Pica616
Millimetre25.43.7795
Q (quarter-mm)101.60.9449

Two consequences worth carrying. 12 pt is exactly 16 px, which is why the browser default body size and the print default body size are the same size wearing different numbers. And a pica is exactly 16 px, which makes it a surprisingly convenient unit for a design grid.

The exactness is narrower than it looks, though, and the next section but two explains why: a CSS inch is 96 pixels by definition, and only a real inch when the display happens to make it one.

An em is not a length

“How many pixels is 1.5em?” has no answer, in the same way that “how many pounds is 50%?” has none. An em is a multiple of the element’s own font size, so it is a different length on every element.

1.5em, on six different elements
Element font size1.5em is
12 px18 px
14 px21 px
16 px24 px
18 px27 px
20 px30 px
24 px36 px

That is not a limitation to work around — it is the point of the unit. A margin set in em scales with the text it sits beside, so a heading gets proportionally more space than a caption without anyone writing two rules.

A rem is the same idea measured against the root font size instead, so it is the same length everywhere on the page. And a percentage is relative too, but to a different thing depending on the property — which is the part that catches people out.

What a percentage is a percentage of
PropertyResolves against
font-sizeThe parent’s font size
widthThe containing block’s width
heightThe containing block’s height
padding, margin — all sidesThe containing block’s WIDTH

The last row is the surprise: padding-top: 10% is ten per cent of the container’s width, not its height. It reads like a bug and is deliberate — and it is the trick behind the aspect-ratio padding hack that held responsive video embeds together for a decade.

Why rem exists

The difference between em and rem is easy to state and easy to underestimate: em compounds through nesting, and rem does not.

Three nested elements, each set to 1.25 of its parent, on a 16 px root
LevelWith 1.25emWith 1.25rem
Root16 px16 px
One20 px20 px
Two25 px20 px
Three31.25 px20 px

The em column nearly doubles over three levels of ordinary markup — a list inside a card inside a section is three levels. Nobody wrote a rule saying “31.25 px”, and nobody would.

It compounds downwards just as hard. Three nested 0.8em rules take 16 px to 8.19, which is how text ends up unreadably small in a deeply nested component that looked fine in isolation.

rem was added to CSS precisely for this. It always resolves against the root element, so nesting has no effect and the same declaration means the same length anywhere. The working practice most teams settle on is rem for anything that should be consistent across the page — type scale, spacing scale — and em for anything that should track its own local context, like the padding inside a button that scales with the button’s label.

A CSS pixel is not a device pixel

CSS defines a pixel as 1/96 inch. That is a reference pixel — a nominal size chosen so that a page comes out roughly the same physical size on different screens — and it is not the same thing as a pixel on the panel.

What one CSS pixel becomes on real hardware
DeviceDPRDevice pixels acrossBy area
Standard monitor11
Windows at 125%1.251.251.56×
Laptop or tablet22
High-density phone33

The area column is the one that matters for images and the one people get wrong. A 3× screen needs nine times the pixels for the same picture, not three — which is why 2× and 3× asset exports exist and why an image budget is not a linear thing.

It also explains two familiar oddities. A one-pixel border on a 3× phone is drawn a third of a device pixel thick, so browsers approximate it and hairlines look inconsistent between devices. And fractional ratios — 1.25 and 1.5 are common on Windows — mean CSS pixel boundaries do not land on hardware pixel boundaries at all, which is why some edges look soft at those scalings and crisp at 2×.

Three different points

The point is older than computing and was standardised more than once, so there are three of them in circulation.

The three points
PointDefinitionIn mmWhere
PostScript / desktop1/72 inch0.3528CSS and every modern design tool
Traditional American1/72.27 inch0.3515Typographic references predating PostScript
Didot≈ 0.376 mm0.3760Continental Europe, historically

The first two differ by 0.375%, which is invisible on a single character and adds up over a page of set text — about 0.016 mm on a 12-point body size, but a measurable fraction of a millimetre over forty lines. The Didot is 6.6% larger than the PostScript point, which is not subtle at all.

In practice this only matters when reading older material. Anything produced since desktop publishing means the PostScript point, and CSS says so explicitly. But a typographic table from before the 1980s may well be in American points, and European typographic literature in Didot — twelve of which make a cicero, the continental equivalent of a pica.

One last thing the arithmetic cannot settle: two fonts set at the same point size look different sizes. The em box a designer draws letters inside is a design decision rather than a measurement, so a 16 px Georgia and a 16 px Helvetica have noticeably different visible heights. Point size fixes the box, not the letters in it.

Related calculators

Other screen, print and length tools:

Pixel DensityPPI, dot pitch and physical size from any resolution — plus pixels per degree, which is what decides whether you can see the pixels.
Paper SizeA4, Letter and the rest in mm, inches and pixels at any DPI — plus what printing one on the other actually costs.
Aspect RatioExact ratio from any resolution, the missing dimension, and what letterboxing costs — flagging the resolutions that are not the ratio they claim.
LengthMillimetres to miles on the exact 1959 factors, with the mil kept clearly apart from the millimetre — they differ 25-fold.
Paper Weightgsm to US basis weight and back — asking which grade, because 65 lb is 244 gsm as bond and 96 as text. With caliper and book spine.
Fractional InchInch fractions, decimals, thou and millimetres — showing the answer at every denominator and what each rounding costs.

More in Conversion, or browse all calculators.

Sources and methodology

The absolute conversions here are exact because CSS defines them rather than measuring them: an inch is 96 pixels by specification, not by any property of a screen. The em/rem distinction and the percentage behaviour are likewise definitional — including the padding rule that resolves top and bottom percentages against the containing block’s width, which reads like a bug and is deliberate.

Conversion note

The absolute conversions are exact within CSS, and that is a narrower claim than it sounds. A CSS inch is 96 pixels by definition, so it is only a real inch when the display's own scaling happens to make it one — a page printed at 100% is close, a page on a phone is not. Physical size on screen depends on the device, its resolution, the operating system's scaling and the browser's zoom, none of which this can know. Design tools differ too: some treat a point as CSS does and some carry their own document resolution, so a value moved between a print layout and a stylesheet may need checking rather than converting. Font metrics add another layer — two fonts set at the same size have different visible heights, because the em box is a design decision by the type designer rather than a measurement of any letter. Where physical size matters, print a test and measure it.

How we calculate · Found an error? email us

Authorship & verification

Written and maintained by , a business operator who builds spreadsheet-based calculators.

What's changed (12 updates)

Published 8 September 2026

  1. Published the px to pt Converter: CSS pixels, points, picas, inches, millimetres, centimetres and the Q unit, with em, rem and percentages resolved against a base font size.
  2. States that the absolute chain is exact by specification rather than by measurement -- an inch is 96 pixels, 72 points and 6 picas by definition -- so 12 points is exactly 16 pixels and a pica is exactly 16.
  3. Keeps the relative units in a separate panel and refuses to convert them without a base, because an em is a multiple of the element's own font size and has no length until an element supplies one: the same 1.5em is 18 pixels on a 12 pixel element and 36 on a 24 pixel one.
  4. Demonstrates the compounding that makes em surprising, level by level: three nested 1.25em rules on a 16 pixel root give 31.25 pixels rather than 20, because each multiplier applies to the already-multiplied size above it.
  5. Shows the same chain in rem for contrast, which gives 20 pixels at every depth -- and states plainly that this difference is the entire reason rem was added to CSS.
  6. Notes the downward case too: three nested 0.8em rules take 16 pixels to 8.19, which is how text becomes unreadable in a deeply nested component that looked fine in isolation.
  7. Records what a percentage actually resolves against, property by property, including the rule that a padding or margin percentage uses the containing block's WIDTH even for top and bottom -- the behaviour behind the aspect-ratio padding hack.
  8. Separates the CSS pixel from the device pixel: CSS defines a reference pixel of one ninety-sixth of an inch, and a 3x phone paints nine hardware pixels per CSS pixel of AREA, which is the squared figure that decides image asset weight.
  9. Explains two familiar oddities from that -- a one-pixel border is drawn a third of a device pixel thick on a 3x screen, and fractional ratios like 1.25 mean CSS boundaries never land on hardware ones.
  10. Lists the three points apart: PostScript at one seventy-second of an inch, traditional American at one seventy-two-point-two-seventh, 0.375 percent smaller, and Didot at about 0.376 millimetres, 6.6 percent larger.
  11. Closes with what the arithmetic cannot settle -- two fonts at the same point size look different sizes, because the em box is a type designer's decision rather than a measurement of any letter.
  12. Verified by 55 automated cases, asserting the specification chain at ZERO tolerance rather than a floating-point budget, that every relative unit refuses without a base, and that the device pixel area ratio is the square of the linear one at every ratio.

Add this calculator to your site

Responsive embed — and private: nothing your visitors type leaves their browser.