Tool Guides 2 min read

Why the same emoji produces a different number of groups in two different tools here

This guide goes with the Binary / Hex Converter.

Open the tool

What each group actually represents

The Binary / Hex Converter converts each character of the input to its UTF-16 code unit — the number JavaScript itself uses internally to represent that character — and writes it out in base two or base sixteen. Plain English text produces values from 32 to 126, matching ASCII exactly, which is why binary and hex representations of ordinary text look so familiar.

Why every group is padded to a fixed width

Binary output is padded to eight digits per character and hex to two, so that every group is the same width and can be read positionally rather than needing to be counted out digit by digit. Without that padding, a space and a lowercase z would print as different-length numbers with nothing to show where one character’s code ends and the next begins.

Hex is the identical value, written more compactly

Each hexadecimal digit stands for exactly four binary digits, so a two-digit hex group and an eight-digit binary group carry precisely the same information in a different notation — converting between them loses nothing and adds nothing, only changes how many characters it takes to write the number down.

Why an emoji produces two groups here

Characters outside the Basic Multilingual Plane are stored as two UTF-16 code units rather than one, so the conversion works per code unit and an emoji becomes two separate groups, neither of which is meaningful read alone. That count is specific to UTF-16: the same emoji encoded as UTF-8 bytes, which is what the Binary Translator uses, needs four bytes rather than two code units — a different, equally correct number arrived at through a different encoding.

A representation, not a form of protection

Converting text to binary or hex changes only how it is written, not what it says — anyone can reverse either form in seconds with no key and no effort required. It obscures text from a glance and nothing more.

One direction only, by design

This tool converts text into binary or hex and stops there. Going the other way — from binary back to text — needs validation that whole bytes were actually supplied and that the result forms valid text, which is a separate job the Binary Translator handles specifically.

Try it yourself

Every tool mentioned here runs in your browser — nothing is uploaded.

Keep reading

Why frame count limits this tool, not video length

A twenty-minute video is comfortable at one frame a second and impossible at every frame, because time and memory scale with frames captured rather than minutes of footage. Why Firefox can occasionally repeat or skip a frame, and why JPEG beats PNG here almost every time.

Leave a reply

Your email address will not be published. Required fields are marked *

Subscribe to receive notifications about new tools, features, and productivity tips.