MessagePack Converter
Free online MessagePack converter. Encode JSON to msgpack and decode msgpack hex, base64 or .bin files back to readable JSON, with a size comparison. No upload, runs in your browser.
What is MessagePack and what does this converter do?
MessagePack is a compact binary serialization format that follows the same data model as JSON — objects, arrays, strings, numbers, booleans and null — but stores them in fewer bytes. This tool encodes JSON text into MessagePack and decodes MessagePack data back into readable JSON, both directions entirely in your browser.
Why is MessagePack smaller than JSON?
Instead of writing everything as text, MessagePack uses short binary type markers. Small integers fit in a single byte, short strings and arrays need no length digits, and there is no whitespace or repeated field quoting. Typical JSON payloads shrink by 20-60 percent, and parsing on machines is faster too.
Is my data uploaded to a server?
No. Encoding and decoding run completely locally with a MessagePack library bundled into the page. Nothing you paste or drop is transmitted anywhere, so the tool is safe for API payloads, tokens and internal data.
What input formats can I decode from?
Three: hex text (with optional spaces, commas or colons between bytes), base64 text (standard or URL-safe, missing padding is repaired), and raw binary files such as .bin dropped onto the upload area. Detection is automatic — hex is tried first, then base64.
What happens when decoding fails?
The tool scans the byte stream structurally and reports the byte offset where the MessagePack structure breaks, such as a truncated file or a corrupted byte. That offset tells you exactly where in the payload to look instead of just showing a generic error.
How are very large 64-bit integers handled?
Values that fit in unsigned 64-bit range are supported. When decoded data contains integers beyond JavaScript's safe integer range (±9,007,199,254,740,991), they are preserved exactly as BigInt internally and printed as full decimal numbers in the JSON output.
Does it work with non-ASCII text like Chinese or emoji?
Yes. Strings are UTF-8 encoded on the way in and decoded as UTF-8 on the way out, so Chinese, Japanese, Cyrillic, Arabic and emoji round-trip correctly. The size comparison counts real UTF-8 bytes, not characters.
Where do I usually encounter MessagePack files?
Common sources include Redis and Memcached entries, msgpack.org APIs, Fluentd and other log shippers, game and IoT network protocols, Cache APIs and RPC frameworks. Dump the bytes to a .bin file, or copy the hex/base64 representation, and drop it here to read the contents.
How to Use MessagePack Converter
This converter encodes JSON into MessagePack and decodes MessagePack bytes back into readable JSON — from hex, base64 or an uploaded .bin file. Everything runs locally in your browser, so nothing you paste or upload is sent anywhere. A size comparison shows exactly how many bytes MessagePack saves versus plain JSON.
- Pick the Encode tab, paste your JSON into the input box (or click Sample to load a demo), and the byte counter shows the size of your JSON.
- Press Encode: the size bar compares JSON bytes with MessagePack bytes, and the result appears in the HEX or Base64 sub-tab — switch tabs to change the representation.
- Use Copy to grab the current representation, or Download .bin to save the raw MessagePack bytes as a file.
- Switch to the Decode tab and paste hex (spaces, commas and colons are fine) or base64 (URL-safe and missing padding are repaired), or drop a .bin file onto the upload area — uploaded files decode immediately.
- Press Decode to get formatted JSON with a Copy button and a Download .json option. If the bytes are broken, the error box tells you the exact byte offset where the structure fails.
Debugging a Redis value or a msgpack.org API response? Dump the bytes to a file and drop it here — the decoded JSON appears even for payloads containing 64-bit integers, floating point numbers and non-Latin text.
Related Tools
- Base64 Encode/Decode Free online Base64 encoder and decoder. Convert text to Base64 and Base64 to text instantly. No server upload, 100% private - runs entirely in your browser.
- Hex Viewer View file contents in hex dump format with search, offset navigation, and virtual scrolling
- JSON Prettify Format and beautify JSON with customizable indentation. Instantly prettify compressed JSON online in your browser.
- Binary to Text Convert binary code to readable text. Decode binary strings (0s and 1s) into ASCII text instantly.
- YAML to JSON Instantly convert YAML to JSON format online. Paste YAML, get clean JSON output with validation and formatting.
- TOML ↔ JSON Converter Free online TOML to JSON converter and JSON to TOML converter. Live conversion with error line/column hints, configurable indent. Runs entirely in your browser, no upload.
- AES Encryption / Decryption AES encrypt/decrypt with CBC, CFB, CTR, OFB, ECB modes, Pkcs7/ZeroPadding/NoPadding, 128/192/256-bit keys, Base64 output, auto-detect key/IV format
- Brotli Compressor Free online Brotli compressor. Compress files to .br with quality 0–11 or decompress .br back to the original. Runs entirely in your browser — no upload, no install.