transfer.sh Alternative: 5 Tools That Still Work (2026)
For years, curl --upload-file hello.txt https://transfer.sh/hello.txt was the fastest way to share a file with a teammate. No account, no widget, no SDK. Just cURL and a URL.
Since mid-2022, the public transfer.sh service has been unreliable and, for long stretches, down. The maintainer has been transparent about the cost and abuse problems that led to the shutdown. There are self-hosted forks on GitHub that still work, but running your own file host just to share a screenshot with a Slack channel is not what most developers want.
This guide covers five alternatives that preserve the one-line cURL experience, with notes on which one fits depending on whether you need persistence, an API, or fully anonymous uploads.
What Made transfer.sh Great, and What to Look For
If you loved transfer.sh, you were relying on at least three things:
- Uploads are a single cURL command. No account, no SDK, no multipart setup beyond
--upload-fileor-F. - The response is just a URL. Plain text, ready to paste into Slack, email, or a terminal.
- Files eventually go away. A 14-day default retention kept it safe and cheap.
Different alternatives emphasize different parts of that list. Pick the one that matches your actual job.
Quick Comparison Table
| Feature | FilePost | file.io | 0x0.st | catbox.moe | pixeldrain |
|---|---|---|---|---|---|
| cURL upload in one line | Yes | Yes | Yes | Yes | Yes |
| Free tier | Yes (300/mo) | Yes | Yes (anonymous) | Yes (anonymous) | Yes |
| Permanent URLs | Yes | No (default 1 download) | 30 to 365 days (size-based) | Yes (not guaranteed) | Yes |
| Management API | Yes | Limited | No | Partial (account-based) | Yes (with account) |
| Max file size | 50 MB free / 500 MB paid | 100 MB free | 512 MB | 200 MB | 20 GB |
| Dedicated CDN | Yes | No | No | No | Yes |
| Starting paid price | 9 USD/mo | Varies | Free only | Donation-based | Around 4 EUR/mo |
1. FilePost: Best for Persistent cURL Uploads with a Real API
FilePost keeps the cURL-first feel of transfer.sh but adds persistence, a CDN, and a management API. You sign up once, get an API key, and your uploads land on permanent CDN URLs.
Why Choose FilePost
- One-line cURL upload: POST a file, get back a JSON body with a stable CDN URL.
- Persistent by default. Unlike transfer.sh's 14-day window, FilePost URLs stay up.
- CDN delivery. Downloads go through Cloudflare, so shared links stay fast at any geography.
- Free tier. 300 uploads per month, 50MB max per file, no card.
- Intake links. Generate a shareable upload URL that lets anyone (clients, friends, teammates) drop a file without needing an API key.
- Management API. List, delete, and inspect files through a real REST API, not just a one-shot upload.
Upload a File (One Line)
curl -X POST https://filepost.dev/v1/upload \
-H "X-API-Key: your_api_key" \
-F "file=@build.tar.gz"
Response:
{
"url": "https://cdn.filepost.dev/file/filepost/uploads/a1/a1b2c3.tar.gz",
"file_id": "a1b2c3d4e5f6",
"size": 4823104
}
transfer.sh Muscle Memory, Adapted
If you had a shell function for transfer.sh, the port is a couple of lines:
# Before: transfer.sh
transfer() {
curl --progress-bar --upload-file "$1" "https://transfer.sh/$(basename "$1")"
}
# After: FilePost (extract the URL from the JSON response)
upload() {
curl -s -X POST https://filepost.dev/v1/upload \
-H "X-API-Key: $FILEPOST_KEY" \
-F "file=@$1" | jq -r .url
}
Add export FILEPOST_KEY=fh_... to your shell rc file and you are back to one-command sharing.
Try FilePost Free
300 uploads per month, 50MB max file size, full API access. No credit card required.
Get Your Free API Key2. file.io: Closest to transfer.sh's Default (Auto-Delete)
file.io is the most direct spiritual successor to transfer.sh's "files go away" default. Uploads auto-delete after the first download or at the end of a set retention period.
Pros
- cURL-friendly API, one-line uploads
- Auto-expiration matches transfer.sh's ephemeral feel
- Free tier available
Cons
- Default is auto-delete after first download, not what you want for repeated access
- No rich management API for listing or selectively deleting files
Best for: Quick one-off transfers where you explicitly want the file to go away. See our file.io alternative comparison for when to pick something else.
3. 0x0.st: Best for Fully Anonymous cURL Uploads
0x0.st (The Null Pointer) is a minimalist anonymous file host. No accounts, no signup, just cURL. It is operated as a hobby service, which makes it a fine fit for informal sharing and a bad fit for anything production-critical.
Upload Example
curl -F 'file=@hello.txt' https://0x0.st
Pros
- No account, no key, no signup
- Excellent cURL UX
- Free
Cons
- Retention depends on file size, smaller files last longer (up to 365 days), larger files expire faster
- No management API, you cannot list or delete uploads
- Operated informally, not a production dependency
- Abuse-prone: some providers and corporate networks block it
Best for: One-off text snippets and small files you want to share publicly and anonymously. Not a production choice.
4. catbox.moe: Anonymous Permanent Hosting
catbox.moe is another minimalist anonymous file host, focused on persistent (not time-limited) uploads. Popular among hobby communities for image and small-file sharing.
Upload Example
curl -F "reqtype=fileupload" \
-F "fileToUpload=@image.png" \
https://catbox.moe/user/api.php
Pros
- Persistent URLs by default (though not legally guaranteed)
- Anonymous or account-based uploads
- Free, donation-supported
Cons
- Community-run service, not production-grade
- 200 MB file size limit
- Hotlinking policies and content restrictions can affect long-term availability
Best for: Hobby projects and community use, not business applications.
5. pixeldrain: Best for Large Files with an Account
pixeldrain supports files up to 20 GB per upload and has a clean web UI plus a REST API. With an account you get a real management layer.
Upload Example
curl -T image.png -u :YOUR_API_KEY \
https://pixeldrain.com/api/file/image.png
Pros
- Very large file support (up to 20 GB)
- REST API with listing and deletion
- Polished web UI with file previews
Cons
- Subscription required for heavy use
- Bandwidth limits apply for free accounts
- Primary audience is media sharing, not developer integrations
Best for: Large media files you want to share publicly, with an API.
How to Choose the Right transfer.sh Alternative
- You want transfer.sh's one-line cURL feel with persistent URLs, a CDN, and an API: FilePost. Closest to what transfer.sh would be today if it were a real product.
- You want transfer.sh's auto-delete default: file.io.
- You want anonymous, no-account cURL uploads for small text files or snippets: 0x0.st.
- You want anonymous persistent hosting: catbox.moe. Community-run, not production.
- You want to share very large files (multi-GB): pixeldrain.
Self-Hosting transfer.sh
The transfer.sh source code is on GitHub and you can still run it on your own server or S3 bucket. This makes sense if you have internal file sharing needs and do not want the files to leave your infrastructure. It does not make sense if your goal is "a quick share link" because the operational cost of running a file host dwarfs the cost of just using a hosted service.
If you go self-hosted, expect to handle abuse reports, storage growth, and CDN caching yourself. Most developers who try it drop the plan within a month and move to a hosted service instead.
Conclusion
transfer.sh was a great tool. Its decline is a loss for the cURL-first file-sharing workflow, but the replacements are good. For most developers who want persistent links, a real API, and a CDN behind the URL, FilePost is the closest modern successor. For one-off anonymous drops, 0x0.st and catbox.moe keep the minimalist spirit alive.
Get a free API key and your cURL workflow is back online in under a minute.