🦉 UnitOwl

Rem to Pixels

1 Rem (rem) = 16Pixel (px)

By KAMP Inc. / UnitOwl · Last reviewed:

Result
16 px
1 rem = 16 px
Ad Slot (horizontal)

How to Convert Rem to Pixels?

To convert rem to pixels, multiply the rem value by the root element's font size (16px by default). Since rem always references the root html element, the conversion is straightforward and does not depend on nesting. At a 16px root, 1rem = 16px, 0.5rem = 8px, and 3rem = 48px. This conversion is frequently needed for verifying rendered sizes, debugging CSS layouts, creating design documentation in pixels, and building email templates where rem is not supported. Unlike em, rem conversion requires only one number (the root font size), making it predictable and easy to calculate. This simplicity is why rem became the preferred relative unit in modern CSS. It also makes rem-to-px translation a common part of design QA, where teams compare a live component against a pixel-based mockup or audit whether a spacing token is being applied correctly. Once you know the root size, every rem value on the page becomes easy to interpret. That predictability is what makes rem-based token systems easier to audit than deeply nested em-based ones.

How to Convert Rem to Pixel

  1. Check the root font size (html element's font-size, default: 16px).
  2. Multiply the rem value by the root font size to get pixels.
  3. The formula is: px = rem x root-font-size.
  4. Common conversions at 16px root: 0.25rem = 4px, 0.5rem = 8px, 1rem = 16px, 1.5rem = 24px, 2rem = 32px.
  5. If your project uses the 62.5% trick (10px root), multiply rem by 10 instead.

Real-World Examples

A spacing utility class uses gap: 1.5rem. What is the pixel value?
1.5 x 16 = 24px. Consistent 24px gap regardless of nesting depth.
A font-size: 2.25rem heading. What pixel size does it render at?
2.25 x 16 = 36px. A large heading suitable for hero sections.
A component has padding: 0.75rem 1rem.
Vertical: 0.75 x 16 = 12px. Horizontal: 1 x 16 = 16px.
With the 62.5% trick (root: 10px), a width: 32rem container.
32 x 10 = 320px. With the 62.5% trick, rem math becomes simply "move the decimal."
A design token sets border-radius at 0.375rem. What is that in pixels at the default root?
0.375 x 16 = 6px. This is a common medium-radius value in design systems.

Quick Reference

Rem (rem)Pixel (px)
116
232
580
10160
25400
50800
1001,600
5008,000
1,00016,000

History of Rem and Pixel

The rem unit was proposed to solve the cascading complexity of em. While em forced developers to track font-size inheritance through every level of the DOM, rem provided a single, stable reference point. After gaining browser support in 2011-2012, rem quickly became the preferred unit for CSS frameworks. Bootstrap switched to rem in version 4 (2018), and Tailwind CSS uses rem for virtually all spacing and sizing utilities. The rem unit exemplifies how web standards evolve to address real developer pain points.

Common Mistakes to Avoid

  • Confusing rem with em. Rem is always relative to the root (html) element. Em is relative to the parent element. In deeply nested structures, em values compound while rem values remain constant. If a value seems wrong, check whether the stylesheet uses rem or em.
  • Forgetting to account for custom root font sizes. If the CSS sets html { font-size: 62.5%; }, the root is 10px, and 1.6rem = 16px (not 1rem = 16px). Always check the root before converting.
  • Assuming rem values from one project apply to another. Different projects may use different root font sizes. Always verify the root font-size before applying rem-to-px conversions.
  • Comparing rem values to a pixel spec without checking whether browser settings or project CSS changed the root size. If the root is no longer 16px, the same rem token resolves to a different pixel number than your design file shows.
Ad Slot (auto)

Frequently Asked Questions

Is rem supported in email clients?
Not reliably. Many email clients (especially Outlook) do not support rem. For email templates, convert all rem values to px before sending. This is one of the main practical reasons developers need rem-to-px conversion.
How do CSS frameworks define their spacing scales in rem?
Tailwind CSS uses a scale where 1 unit = 0.25rem (4px). So p-4 = 1rem (16px), p-8 = 2rem (32px). Bootstrap uses a similar system. These scales are designed so that common sizes fall on whole or half rem values.
What happens to rem if the user changes their browser font size?
All rem-based values scale proportionally. If a user sets their browser default to 20px, 1rem becomes 20px, 1.5rem becomes 30px, etc. This is exactly the accessibility benefit of using rem — your layout adapts to user preferences.
Why do teams still convert rem back to px if rem is better for CSS?
Because many design reviews, tickets, and client conversations still happen in pixels. Converting rem to px makes it easier to compare live code to Figma specs, legacy documentation, screenshots, and email-safe fallbacks without changing the underlying CSS strategy.
What is 2.5rem in pixels?
At the default 16px root, 2.5rem = 40px because 2.5 x 16 = 40. If the project uses a 10px root, the same 2.5rem would be 25px instead.
Quick Tip

For the fastest mental math with the standard 16px root: every 0.25rem = 4px. So 0.5rem = 8px, 0.75rem = 12px, 1rem = 16px, 1.25rem = 20px, and so on. This quarter-rem-to-4px pattern covers most practical spacing values. For the 62.5% trick (10px root), it is even simpler: just move the decimal point.

Sources & References