Skip to content
gohacks.dev
APIs

MessagePack Converter

Convert JSON to MessagePack bytes (hex or base64) and decode MessagePack back to JSON, with every type including binary, extensions and timestamps.

Free · No sign-up · Your inputs stay in your browser

Input

Encode and decode MessagePack

Output

MessagePack

54 bytes (JSON: 79)

MessagePack is binary JSON: the same data model in fewer bytes, used by Redis' Lua scripting, Fluentd, SignalR and many RPC systems. Integers and short strings pack into a single type byte. Binary and extension values have no JSON form, so decoding shows them as a placeholder with their size; the timestamp extension (-1) is decoded to a date.

Runs in this browser. Nothing you paste is sent to a server.

Binary JSON

MessagePack has the same data model as JSON in fewer bytes and is faster to parse. Redis scripting includes cmsgpack, Fluentd and Fluent Bit use it for records, SignalR offers it as a protocol, and many RPC systems and caches store values in it. The format is defined in the MessagePack specification.

Debugging payloads

When a cache holds MessagePack values or a websocket carries it, the bytes are unreadable in a log. Pasting them here as hex or base64 shows the structure.

Share

Frequently asked questions

Is MessagePack smaller than JSON?
Usually by 10 to 50%, mostly from integers and short strings. Text-heavy data shrinks less, and gzip on JSON often closes the gap.
How are integers larger than JavaScript can hold shown?
64-bit values beyond 2^53 are shown as strings so no precision is lost.
Is what I paste sent anywhere?
No. The tool runs entirely in your browser with JavaScript. Nothing you type or paste is sent to our server or stored.

Keep planning

Similar tools