
Paste a .proto schema and a Base64 or hex-encoded binary payload to decode Protocol Buffers into readable JSON — instantly, in your browser.
.proto schema in the left panel, your Base64 or hex binary payload in the right panel, select the root message type, then click Decode. The schema tells the tool how to name each field — without it only field numbers will appear..proto Schema
Binary Payload (Base64 or Hex)
JSON Output
Decoded JSON will appear here
Protocol Buffers (protobuf) are Google's compact binary serialization format — efficient for data transfer but completely unreadable without a decoder. Flipper File's Protobuf to JSON tool lets you paste a .proto schema and a base64-encoded or hex binary payload, then converts the raw bytes into clean, human-readable JSON. No server, no installs, no account — just paste and decode in seconds.
How to Decode Protobuf to JSON
- Paste your
.protoschema into the Schema panel — this tells the decoder how to interpret each field number and data type. - Paste your protobuf payload in the Data panel — either as Base64 (the most common format) or as a hex string.
- Select the root message type from the dropdown that appears after the schema is parsed.
- Click "Decode" — the tool decodes the binary data according to your schema and outputs formatted JSON.
- Copy or download the JSON result with one click for use in debugging, logging, or documentation.
Why Use Flipper File to Decode Protobuf?
- Schema-aware decoding — Paste your actual
.protodefinition and get field names in the output, not just field numbers like raw binary decoders produce. - Supports Base64 and hex input — Accepts both the base64-encoded payloads common in REST APIs and hex strings from packet captures or debug logs.
- Completely client-side — Your binary data and schema definitions never leave your browser. No server uploads, no logs, no data retention.
- No login, no account, no limits — Decode as many payloads as you need. Free forever.
- Pretty-printed JSON output — The decoded output is auto-formatted with proper indentation, ready to read or copy.
- Fast schema parsing — Handles nested messages, repeated fields, enums, maps, and oneof fields without requiring a build step.
Frequently Asked Questions
What is Protocol Buffers (protobuf)?
Protocol Buffers is a binary serialization format developed by Google. Instead of storing data as readable text (like JSON or XML), protobuf encodes data into compact binary form using field numbers and wire types defined in a .proto schema file. This makes it much smaller and faster to parse than text formats, but unreadable without the schema.
Why do I need a .proto schema to decode?
Protobuf binary data contains field numbers and wire types but not field names. Without the schema, a decoder can show you the raw values — "field 1: string 'hello'" — but can't tell you that field 1 is actually user_id. With the schema, the output maps to real field names and proper types, making it genuinely useful for debugging.
What input formats does this tool accept?
The tool accepts both Base64-encoded protobuf (common when protobuf payloads are embedded in JSON APIs or HTTP responses) and hex-encoded binary strings. If you have a raw binary file, you can convert it to Base64 or hex first using a file-to-base64 tool.
Can this decode gRPC messages?
Yes. gRPC uses protobuf as its serialization format. gRPC messages have a 5-byte framing header (1 byte compression flag + 4 bytes length) — if you strip that header and pass the remaining bytes, this tool will decode them correctly with your proto schema.
What protobuf field types are supported?
The tool supports all core protobuf 3 field types: string, int32, int64, uint32, uint64, bool, float, double, bytes, enum, as well as nested messages, repeated fields, map fields, and oneof blocks.
What if my schema has imports or dependencies?
Currently the tool works with self-contained schemas or schemas where you paste all required definitions in one block. If your proto imports other proto files, paste the relevant message definitions inline before decoding.
Is protobuf the same as JSON?
No. Protobuf is a binary encoding format while JSON is a human-readable text format. They serve a similar purpose — representing structured data — but protobuf is smaller and faster at the cost of human readability. This tool bridges that gap by converting protobuf binary into JSON for inspection.
Does the tool support proto2 as well as proto3?
Yes. The parser handles both proto2 and proto3 syntax. Note that proto2 optional/required semantics are respected in the decode logic, but the output JSON format is the same regardless of the syntax version.
