Hex Bytes to File Converter

Converts one continuous hex string, with optional spaces stripped, into a binary file by strictly reading it two hex digits at a time (one byte per pair). This is the standard hex-to-binary conversion, and it errors clearly on an odd digit count rather than guessing. A free online tool from Staaarter, right in your browser.

Runs locallyUpdated 2026-07-26

Overview

Introduction

The most common hex-to-binary task is the simplest one: you have one continuous run of hex digits (maybe copied straight from a hexdump or a spec) and you just need the raw bytes it represents.

This tool does exactly that, strictly two digits at a time, with no guessing about value sizes or leading zeros, and hands you back a real downloadable binary file.

What Is Hex Bytes to File Converter?

A strict hex-string-to-binary converter: it strips any whitespace from your input, then reads what remains two hex digits at a time, each pair becoming exactly one byte.

It's the fixed-width counterpart to this category's Hex Values to File Converter, which instead splits input into separate whitespace-delimited tokens and sizes each one independently by its integer value.

How Hex Bytes to File Converter Works

All whitespace is stripped from the input first, so spaced-out hex (like "1a 2f ff") and unbroken hex ("1a2fff") behave identically.

The remaining string is validated as hex digits only, and its length is checked for being even; an odd count is rejected with a specific error rather than silently padded.

Each consecutive two-character pair is parsed with `parseInt(pair, 16)` into one byte, in order, producing the final Uint8Array offered as a downloadable file.

When To Use Hex Bytes to File Converter

Use this tool whenever you have one continuous hex string, copied from a hexdump, a spec, or a data field, that should map byte-for-byte, two digits per byte, with no value-based resizing.

If instead you have a list of separate hex values of varying width that should each be sized to their own magnitude, use the Hex Values to File Converter tool instead.

Features

Advantages

  • Strict and predictable: exactly two digits always means exactly one byte, with no ambiguity.
  • Clear, specific error messages when the input can't be a valid byte string (odd digit count, invalid characters).
  • Accepts optional whitespace so hexdump-style spaced hex pastes directly, without manual cleanup.

Limitations

  • Requires an even number of hex digits; there's no automatic padding for an odd count, by design, since guessing which end to pad could silently produce the wrong bytes.
  • Only hex digits and whitespace are accepted; other separators like commas or "0x" prefixes on individual bytes aren't stripped automatically.
  • Very large inputs may be slow to process in the browser; there's no hard size cap, but extremely long strings aren't recommended.

Examples

Converting a greeting to bytes

Input

48656c6c6f2c20776f726c6421

Output

48 65 6C 6C 6F 2C 20 77 6F 72 6C 64 21 (13 bytes total)

Each byte pair maps directly to one byte; this particular string is the ASCII encoding of "Hello, world!".

Odd digit count is rejected

Input

1a2

Output

Error: odd number of hex digits (3): each byte needs exactly two hex digits, so the total must be even.

Three hex digits can't cleanly split into whole bytes, so the tool reports the exact digit count rather than guessing how to pad it.

Best Practices & Notes

Best Practices

  • Paste hex exactly as copied, including any spaces, since whitespace is stripped automatically before conversion.
  • If you get the odd-digit-count error, check for a stray extra or missing character rather than assuming the tool will pad it for you.
  • Use the Hex Values to File Converter tool instead if your input is really a list of separately-meaningful values rather than one continuous byte stream.

Developer Notes

Whitespace is stripped with `/\s+/g` before validation; the cleaned string is checked against `/^[0-9A-Fa-f]+$/` and for even length before converting, so invalid characters and odd lengths each get a distinct, specific error message rather than one generic failure.

Hex Bytes to File Converter Use Cases

  • Converting a hex string copied from a hexdump's hex column back into the original file
  • Reconstructing a binary payload from a hex string found in documentation or a spec
  • Quickly building a test binary fixture from a known hex byte sequence
  • Decoding hex-encoded data from a log line or API response into its raw bytes

Common Mistakes

  • Pasting a hex string with an odd number of digits and expecting automatic padding; the tool reports the error instead so you can fix the source data.
  • Confusing this tool with Hex Values to File Converter when the input is actually a list of independently-sized values rather than one continuous byte string.
  • Including separators other than whitespace (like commas) between byte pairs, which will trigger the invalid-character error.

Tips

  • Spaced hex copied straight from a hexdump's hex column works as-is; there's no need to remove the spaces manually first.
  • Check the resulting byte count in the preview panel against what you expect, half the number of hex digits you pasted.

References

Frequently Asked Questions