Processed in your browser

CSV / MessagePack Converter

Encodes a CSV table as a MessagePack array or decodes a MessagePack record array to CSV. Binary bytes use Base64, CSV values remain strings, and non-row payloads are rejected.

Processed in your browser
0 / 1,500,000
Converted output

Tool guide

What is CSV / MessagePack Converter?

CSV and MessagePack Converter connects ordinary tables with binary record payloads. It validates unique headers and row objects, keeps CSV cells as strings, and represents MessagePack bytes as Base64. Reverse conversion accepts only an explicit array of row objects instead of guessing how an arbitrary binary object should become columns. Use it for API fixtures, cache samples, and queue debugging, then review extensions and the destination contract. Common workflows include the following. Generate binary API fixtures. Recover a table from logged Base64. Compare CSV and MessagePack record boundaries. The page also documents input boundaries, output behavior, and practical cautions so you can review the result before putting it into an application, configuration, test, or production workflow.

When to use it

  • Generate binary API fixtures.
  • Recover a table from logged Base64.
  • Compare CSV and MessagePack record boundaries.

How to use it

  1. Choose the direction and CSV delimiter.
  2. Use a header row with unique names.
  3. Paste complete Base64 when decoding.
  4. Convert and review type warnings.
  5. Load one of the realistic examples first to verify the selected options and processing direction before replacing it with your own data.
  6. Review the output, status message, and documented limits; copy, download, or continue only after the result matches your expectation.

Runnable examples

The “Example 1” and “Example 2” buttons load the matching inputs. They cover different structures, directions, or boundaries and can be run directly in the workspace.

Example 1

id,name,status
61,CSV MessagePack,ready
62,CSV JSON5,planned

Example 2

kYOiaWSiNjGkbmFtZa9DU1YgTWVzc2FnZVBhY2umc3RhdHVzpXJlYWR5

Input rules

  • CSV headers must be unique and non-empty.
  • Decoded data must be an array of row objects.
  • Base64 must be complete and standard.
  • Text input is counted before processing and is limited to 1,500,000 characters on this page; file modes apply the separate file limit shown in the workspace.
  • MessagePack output is displayed as Base64.

Output rules

  • MessagePack bytes use Base64.
  • CSV cells remain strings.
  • Extensions and source layout are not retained.
  • Output reflects only the current input, direction, and options; rerun after changing a mode or value instead of treating an earlier result as current.
  • Decoded data must be an array of row objects.

Limitations and cautions

  • MessagePack output is displayed as Base64.
  • Decoded data must be an array of row objects.
  • CSV imports every cell as a string.

How your data is handled

All parsing, conversion, Base64 work, and intermediate data remain in the current browser tab. JSONLane does not upload the input or retain it after refresh or close.

FAQ

Is CSV or MessagePack data uploaded?

No. Parsing, conversion, and output generation stay in the current browser tab.

Is every round trip lossless?

No. Table typing, comments, layout, and binary-specific values differ between formats and must be reviewed.

Why does the converter reject some valid documents?

The source may be valid but still lack a safe, unambiguous representation in the selected destination.

Why is output Base64?

MessagePack is binary, and Base64 copies every byte in text.

Can it decode arbitrary MessagePack?

Only an explicit array of row objects can become CSV.

Do CSV numbers retain types?

No. CSV imports remain strings.

Updated: 2026-08-12