What you get
A single JSON file containing your profile, posts, reposts, likes, follows, blocks and everything else, with the record structure preserved and the Merkle tree resolved into plain collection and record-key pairs.
Posts come with their rich-text already resolved: instead of raw byte offsets you get a segment list of text, links, mentions and hashtags, which means you can render them without reimplementing the facet spec.
Nothing is thrown away
Real repositories contain far more than Bluesky posts. A typical active account carries records from a dozen other AT Protocol apps — long-form publishing tools, calendars, live-streaming apps, even games. In one account we tested there were fifty distinct third-party collections.
Most converters drop anything they do not recognise. This one keeps every unknown record intact under its own collection name, because a converter that silently loses data is worse than no converter.
For developers who do not want to write this
You could do it yourself. Read the CAR, walk the MST, decode DAG-CBOR, resolve the facet byte ranges, then discover that fetching your blobs means a second API surface with its own rate limits. It is an afternoon of work, minimum, for something you need once.
JSON and CSV output here are free precisely because that afternoon is not worth charging you for. What costs money is the finished stuff — media packs, Obsidian vaults, WordPress imports.
Questions
- Is the JSON export really free?
- Yes, with no size limit and no signup. Paid features are the finished formats and the media download, not the raw data.
- Can I get NDJSON or per-collection files?
- The current export is a single structured JSON document with each collection as its own array, which splits trivially. If you need a specific shape, say so on the contact page — it is a small change.