Convert Mastodon Posts to Markdown — Fediverse Content Export
Convert Mastodon posts and toots from any instance to clean Markdown. Works with reply chains and threads. Free tier includes 5 monthly conversions.
URL Swap Example
mastodon.social/@Mastodon/116539053870420123anypost.md/mastodon/@Mastodon/116539053870420123RE: [https://eupolicy.social/@hpod16/116538344713848285](https://eupolicy.social/@hpod16/116538344713848285) We love to see it <3
# Mastodon (@Mastodon) RE: [https://eupolicy.social/@hpod16/116538344713848285](https://eupolicy.social/@hpod16/116538344713848285) We love to see it <3 --- 2026-05-08 · Mastodon · [Original post](https://mastodon.social/@Mastodon/116539053870420123)
What you get
- Any Mastodon instance, normalized to portable Markdown
- Toots and reply chains in order
- Comments supported — up to 50 replies
- Free tier covers single-post conversions
- Instance-agnostic — works across the fediverse
- Thread unrolling with ?thread=full
Convert Mastodon Posts to Markdown
Mastodon is the flagship of the decentralized fediverse, running on the ActivityPub protocol with thousands of independent instances. Converting Mastodon content to Markdown extends its portability even further.
AnyPost works with any Mastodon instance — not just the big ones — converting posts, threads, and replies to clean, portable Markdown.
Why Convert Mastodon to Markdown?
Fediverse Portability
Mastodon is already decentralized, but Markdown adds:
- Offline access — read without federation
- Long-term archiving — immune to instance shutdowns
- Searchable content — full-text search in your notes
- AI-ready format — feed to LLMs without federation complexity
Instance Diversity
With thousands of Mastodon instances:
- Community-specific content — niche interests, languages, topics
- Cross-instance discussions — threads spanning multiple servers
- Self-hosted content — personal instances, single-user servers
- Ephemeral communities — temporary or themed instances
AnyPost handles them all transparently.
How It Works
Any Instance, Same Pattern
# mastodon.social
Before: https://mastodon.social/@username/112233445566778899
After: https://anypost.md/mastodon/@username/112233445566778899
# mstdn.social
Before: https://mstdn.social/@username/112233445566778899
After: https://anypost.md/mastodon/@username/112233445566778899
# Your own instance
Before: https://myinstance.net/@username/112233445566778899
After: https://anypost.md/mastodon/@username/112233445566778899
The domain changes, but the pattern stays the same.
Sample Output
# Mastodon (@Mastodon@mastodon.social)
Mastodon 4.3 is here! 🎉
This release includes:
**New features:**
- Improved search with hashtag suggestions
- Better moderation tools for admins
- Redesigned compose interface
**Performance:**
- Faster timeline loading
- Reduced memory usage
- Better caching
**Federation:**
- Improved ActivityPub compatibility
- Better handling of remote deletes
- Enhanced domain blocks
Read the full release notes: https://blog.joinmastodon.org/...
---
💬 45 replies · 234 boosts · Mastodon · [View on Mastodon](https://mastodon.social/@Mastodon/...)
With Reply Thread
# Mastodon (@Mastodon@mastodon.social)
[Original post content...]
---
## Replies
### @user_one@mstdn.social
Congrats on the release! Is there a migration guide from 4.2?
**Reply from @Mastodon@mastodon.social:**
> Yes! Check the admin documentation. The upgrade path is straightforward.
### @user_two@fosstodon.org
Any breaking changes for app developers?
**Reply from @Mastodon@mastodon.social:**
> The API remains stable. There are new endpoints but no deprecations in this release.
---
45 replies total · Mastodon · [View on Mastodon](https://mastodon.social/@Mastodon/...)
What's Included
AnyPost handles ActivityPub complexity and extracts:
| Element | Included |
|---|---|
| Post text | ✓ |
| Author handle | ✓ (with instance) |
| Display name | ✓ |
| Media attachments | As Markdown links |
| Reply count | ✓ |
| Boost count | ✓ |
| Favorite count | ✓ |
| Timestamp | ✓ |
| Content warnings | Preserved as labels |
| Reply chain | With ?comments=N |
| Thread | With ?thread=full |
Free Tier Available
Mastodon is included in the free tier:
| Feature | Free Tier | With API Key |
|---|---|---|
| Single post | 5/month | Unlimited |
| Thread unrolling | — | ✓ |
| Comments (replies) | — | ✓ |
| Author metadata | — | ✓ |
API Usage
# Single post from any instance (free tier)
curl "https://anypost.md/mastodon/@username/112233445566778899"
# With replies
curl -H "Authorization: Bearer apk_live_xxx" "https://anypost.md/mastodon/@username/112233445566778899?comments=50"
# With thread
curl -H "Authorization: Bearer apk_live_xxx" "https://anypost.md/mastodon/@username/112233445566778899?thread=full"
# JSON API with full URL
curl -H "Authorization: Bearer apk_live_xxx" "https://anypost.md/api/convert?url=https://mastodon.social/@username/112233445566778899"
Instance-Agnostic
AnyPost normalizes across the fediverse:
| Instance Type | Example | Support |
|---|---|---|
| General | mastodon.social | ✓ |
| Tech-focused | hachyderm.io | ✓ |
| Regional | mstdn.jp | ✓ |
| Self-hosted | personal.social | ✓ |
| Niche | botsin.space | ✓ |
If it's reachable via ActivityPub, AnyPost can convert it.
Use Cases
Fediverse Research
Study decentralized social patterns:
# Archive fediverse discussions
curl "https://anypost.md/mastodon/@hachyderm.io/112233" > ~/fediverse-research/$(date +%Y%m%d)-tech-discussion.md
Community Moderation
Document moderation decisions:
# Archive content for review
curl -H "Authorization: Bearer apk_live_xxx" "https://anypost.md/mastodon/@reported-user/112233?thread=full" > ~/mod-reports/case-$(date +%Y%m%d).md
Personal Archives
Backup your own content:
# Export all your posts
for toot_id in $(cat my-toot-ids.txt); do
curl -H "Authorization: Bearer apk_live_xxx" "https://anypost.md/mastodon/@myhandle/${toot_id}"
done > ~/archive/mastodon-export-$(date +%Y%m%d).md
Content Warnings
Mastodon's content warning system is preserved:
⚠️ **Content Warning: Politics**
[Full post content follows the warning label]
---
Mastodon · [View on Mastodon](https://...)
Related Conversions
Last updated: May 28, 2026
Frequently asked questions
- Does AnyPost work with any Mastodon instance?
- Yes. Any instance domain (mastodon.social, mstdn.social, your own server) works — swap the host for anypost.md and AnyPost resolves the post.
- Can I unroll a Mastodon reply chain?
- Turn on Comments or Thread to capture the conversation. Each additional post or comment costs 1 credit. Up to 50 replies supported.
- What's the difference between Mastodon and Bluesky support?
- Both are free tier eligible and support similar features. Mastodon uses the ActivityPub protocol, Bluesky uses AT Protocol — AnyPost handles both transparently.
Related guides
X
Turn any X/Twitter post or thread into clean, portable Markdown. One URL swap gives you full text, thread order, and metadata.
X
Export X long-form articles to clean, archivable Markdown. Full content extraction with author metadata and source attribution.
Substack
Convert Substack posts and newsletters to clean Markdown without paywall chrome. Perfect for research, archiving, and content migration.
Ready to convert Mastodon posts?
Try the live converter now — no signup required for the free tier.