Protobuf Decoder

Binary input

.proto schema (optional)

Parsed 1 message(s): Person

Decoded (28 bytes)

#1namestringlength-delimited
string: Alice
bytes (hex): 41 6c 69 63 65
length: 5
#2idint32varint
uint64: 42
int64: 42
sint64 (zigzag): 21
bool: 42 (not 0/1)
#3emailstringlength-delimited
bytes (hex): 61 6c 69 63 65 40 65 78 61 6d 70 6c 65 2e 63 6f 6d
length: 17

What This Tool Does

Protobuf Decoder is built for deterministic developer and agent workflows.

Decode binary protobuf payloads into structured JSON in your browser. Paste hex or base64, optionally provide a .proto schema, and inspect every field tag, wire type, and nested message.

Use How to Use for execution steps and FAQ for constraints, policies, and edge cases.

Last updated:

This tool is provided as-is for convenience. Output should be verified before use in any production or critical context.

Agent Invocation

Best Path For Builders

Browser workflow

Runs instantly in the browser with private local processing and copy/export-ready output.

Browser Workflow

This tool is optimized for instant in-browser execution with local data handling. Run it here and copy/export the output directly.

/protobuf-decoder/

For automation planning, fetch the canonical contract at /api/tool/protobuf-decoder.json.

How to Use Protobuf Decoder

  1. 1

    Paste your binary payload

    Drop the protobuf bytes into the input as hex or base64. The format toggle controls how the payload is parsed before decoding starts.

  2. 2

    Optionally provide a .proto schema

    Paste your message definitions to get named fields and typed values. Without a schema the decoder still infers wire type, varint width, and nested message candidates.

  3. 3

    Pick the root message

    When multiple messages parse from the .proto, choose which one represents the top-level payload. The selector shows every parsed message name.

  4. 4

    Switch between tree and JSON

    The tree view shows tag, wire type, and every plausible interpretation per field. The JSON view collapses everything into a structured object you can paste into a bug report.

Frequently Asked Questions

What is Protobuf Decoder?
Protobuf Decoder turns binary protobuf payloads into structured output. Paste hex or base64 bytes, optionally pair them with a .proto schema, and inspect each tag, wire type, and nested message.
Can it decode a payload without a schema?
Yes. The schema-less path infers wire types, decodes varints, fixed32, and fixed64, and recursively probes length-delimited fields as candidate nested messages or printable UTF-8 strings.
Which Protobuf wire types are supported?
Varint, length-delimited, fixed32, and fixed64 are decoded. Group start and group end markers are reported as raw wire types since proto2 groups are deprecated and rare in modern payloads.
Does it send my data to a server?
No. The hex or base64 input, the .proto schema, and the decoded output stay inside your browser tab. Decoding runs synchronously on the same JavaScript thread that renders the page.
Is Protobuf Decoder free?
Yes. The tool runs entirely in your browser with no signup and no usage cap beyond what your device and tab can handle.