REM to Percent Converter
Convert rem to percent, with a warning about the difference the two units measure against.
Browsers default to 16px. Use 10 if your CSS sets html { font-size: 62.5% }.
About this conversion
The same value at other root sizes
| Root size | Result |
|---|
Common conversions at 16 px
| rem | % |
|---|
What It Does
The arithmetic here is simple — 1rem becomes 100% — but the two units are not interchangeable, and that is the point of this page. rem always measures against the root element, while a percentage measures against whatever the immediate parent happens to be. The conversion below assumes the parent and the root are the same size, which is true at the top of a document and stops being true the moment any ancestor sets its own font size. The tool says so on every result rather than leaving you to discover it in a nested component.
When to Use It
- You are converting a design handed over in rem into a stylesheet that uses percent (%) for accessibility.
- You inherited a codebase that mixes units and you need the % equivalent of an existing rem value.
- You want to check what a rem value becomes when the user changes their browser's default font size.
- You are writing a design-token scale and need the same step expressed in both units.
Worked Examples
1.5
1.5rem converts to 150% — but only inside an element whose parent is at the root size.
1
1rem is 100% at the top level. Inside a 0.875em card, the same 100% renders smaller while 1rem does not move.
0.625
0.625rem is 62.5%, which is 10px on a default root.
Features
How to Use
1. Enter the rem value you want to convert. 2. Set the root (or parent) font size the value should be measured against — 16px is the browser default. 3. Read the percent (%) result, or copy the whole conversion table for the sizes you use.
Common Mistakes
- Assuming the conversion is fixed. 1rem is 100% only when the parent element's font size matches the root's — the same rem value converts differently depending on that size.
- Confusing em with rem. `em` is relative to the *parent* element's font size and therefore compounds when nested; `rem` is always relative to the root element and does not.
- Setting a px font size on the root element. That overrides the user's browser font-size preference, which defeats the accessibility reason for using relative units at all.
- Rounding too early. Keep the fraction (1.375rem, not 1.4rem) — the browser resolves sub-pixel values fine and the rounding error compounds across a scale.
Frequently Asked Questions
Related Tools
The conversion runs entirely in your browser. Nothing is uploaded and nothing is stored.