Skip to content

Hex dump

Turn text into a classic hexdump with offsets and an ASCII gutter, or read one back.

Input

Hex dump

A hex dump is how a file looks when you stop trusting what an editor shows you and read the raw bytes instead. This tool lays out the UTF-8 bytes of your text in the familiar hexdump -C layout: an 8-digit offset on the left, sixteen bytes per row written as two-digit hex pairs, and an ASCII gutter on the right where every printable byte shows as itself and everything else — tabs, newlines, control codes, the high bytes of a multi-byte character — shows as a dot. An extra space splits each row down the middle, the way xxd and hexdump do, so you can count to the eighth byte without losing your place.

Reading a dump is the job it does best. A stray zero-width space, a non-breaking space masquerading as a normal one, a Windows CRLF where you expected a bare newline, an emoji that is quietly four bytes long — all of them are invisible in ordinary text and obvious the moment you see the bytes. The offset column tells you exactly how far into the input a surprising byte sits, which is what you need when a parser rejects line 1 for no reason you can see.

Switch the mode to go the other way: paste a dump — from this tool, from xxd, from hexdump -C, or just loose hex like 48 65 6c 6c 6f — and get the original text back. The parser ignores the offset column and the ASCII gutter, tolerates the 2-byte grouping xxd uses, and strips 0x or \x prefixes, so a copy-paste out of a terminal usually just works. The uppercase option writes A-F instead of a-f for formats that expect it.

Everything runs locally in your browser using its built-in UTF-8 encoder. Nothing is uploaded, which matters when the bytes you are inspecting came from a token, a payload or a private file. The tally under the output counts bytes and rows so multi-byte characters are easy to spot.

FAQ

What is a hex dump?
A hex dump is a byte-by-byte view of data: each byte written as two hex digits, sixteen to a row, with an offset on the left and a readable ASCII column on the right. It is the standard way to inspect the exact contents of text or a file, including characters an editor hides.
What do the dots in the ASCII column mean?
Each byte that is a printable ASCII character (0x20 to 0x7e) is shown as itself; every other byte — a control code, a newline, or one part of a multi-byte UTF-8 character — is shown as a dot so the columns stay aligned. The hex on the left always shows the real value.
Can it read xxd and hexdump output back to text?
Yes. Switch to decode mode and paste output from xxd, hexdump -C, this tool, or plain space-separated hex. The offset column and the ASCII gutter are ignored, the 2-byte grouping xxd uses is handled, and 0x or \x prefixes are stripped before decoding.
Why is my text more bytes than characters?
Text is encoded as UTF-8, where ASCII characters are one byte each, accented letters take two, and most emoji take four. A hex dump makes that visible: the byte count under the output is usually higher than the character count for any non-English text.
Is my text uploaded anywhere?
No. The dump is built entirely in your browser and nothing you paste is sent to a server or stored, so it is safe to inspect bytes from a token, a payload or a private file.