Hex Dump Viewer
View any text or file as a classic hex dump — byte offset, hexadecimal bytes and printable-ASCII columns side by side, like xxd or hexdump -C. Configure bytes per row, byte grouping and a hex or decimal offset.
Input
Any file type. Read locally in your browser. Used only when the text box is empty.
Options
Output
Guides
A hex dump viewer turns text or a file into the classic three-column layout every low-level developer recognizes: a byte offset on the left, the raw bytes as hexadecimal in the middle, and a printable-ASCII rendering on the right. It is the same view you get from xxd or hexdump -C at the command line — but in your browser, with no install and no upload.
How to use it
Paste text into the Text Input box, or drop a file into the uploader to inspect its raw bytes. The dump updates automatically. Text is encoded as UTF-8 before being dumped, so accented letters, emoji and other multi-byte characters show up as the actual bytes a program would read from disk.
Three options control the layout:
- Bytes per row — 8, 16 (the default) or 32 bytes on each line. 16 matches the traditional
hexdump -Cwidth. - Byte grouping — how many bytes are joined without a space.
1gives fully space-separated bytes (48 65 6c),2givesxxd-style pairs (4865 6c6c),4gives 32-bit words. - Offset format — show the running offset in hexadecimal (the convention) or decimal.
Copy the result or download it as a .txt file using the buttons on the output.
Reading a dump
Take the line 00000000: 4865 6c6c 6f2c 2057 6f72 6c64 21 Hello, World!. The 00000000 is the offset of the first byte on that row. 48 is the hex value of H (72 in decimal), 65 is e, and so on. On the right, each byte that falls in the printable ASCII range (0x20–0x7E) is shown as its character; anything else — control codes, high bytes, the parts of a multi-byte UTF-8 sequence — is drawn as a . so the columns stay aligned.
Common uses
- Inspecting file magic numbers and headers (PNG, ZIP, ELF, PDF) to confirm a file's true type.
- Spotting invisible characters: a stray tab, a
0x00NUL, CRLF vs LF line endings, or a byte-order mark (EF BB BF) at the start of a UTF-8 file. - Seeing exactly how a string is encoded as bytes — useful when debugging character-set mismatches.
- Teaching or learning how text maps to ASCII and how UTF-8 encodes non-ASCII characters.
Is my data uploaded anywhere?
No. Both the text and any file you drop in are processed entirely in your browser — nothing is sent to a server. You can disconnect from the network and the tool still works.
What counts as a "printable" character?
Bytes from 0x20 (space) through 0x7E (~) are rendered as their ASCII character. Every other byte — control characters, 0x7F, and all bytes above 0x7F — is shown as . in the ASCII column, while its true value is always visible in the hex column.