Never pay for
a download.
Three lines of code, your own CDN, a bill that scales with what you keep, not what your users touch.
- Projects
- 4
- Files hosted
- 3,278
- Stored
- 2.3 GB
- Delivered
- 316 MB
- hero-bg.webp
2.1 MB · 2h · image/webp
- invoice-042.pdf private
312 KB · 5d · application/pdf
- voice-note.m4a
184 KB · 1h · audio/mp4
- avatar-812.jpg
88 KB · 3d · image/jpeg
Try it
0%
That was a real upload to a real CDN. To wire it into your own app, the CLI scaffolds the SDK and a project key into your framework:
npx @dropkit/cli init Then the upload code is three lines:
import { dropkit } from '@dropkit/sdk';
const client = dropkit({ key: 'pk_live_...' });
const { data } = await client.upload(file);
console.log(data.url); What you get
Upload in three lines
Browser, server, CLI, or agent. Works in any JS runtime, any framework. Scaffolded route in seconds.
Signed URLs for private files
Mark a file private. Mint short-lived URLs with one call. Expired links 404, not 403, so existence isn't leaked.
Image transforms on the URL
Resize, reformat, crop on a paid plan. Query-param URLs like ?w=400&format=webp. Cached forever at the edge.
Agent-ready
Claude Code skill, MCP server for every other agent, CLI one-liner, llms.txt. Your agent wires it in or uses it itself.
Pricing
Pay for storage. Downloads never cost you.
- Storage included 5 GB
- Projects 1
- CDN delivery (every size) ✓
- On-the-fly transforms ·
- Custom domain ·
- Webhooks ✓
- Private files ✓
- Signed URLs ✓
- Per-file max 100 MB
- Support Community
- Storage included 100 GB
- Projects 3
- CDN delivery (every size) ✓
- On-the-fly transforms ✓
- Custom domain ✓
- Webhooks ✓
- Private files ✓
- Signed URLs ✓
- Per-file max 5 GB
- Support Email
- Storage included 500 GB
- Projects 10
- CDN delivery (every size) ✓
- On-the-fly transforms ✓
- Custom domain ✓
- Webhooks ✓
- Private files ✓
- Signed URLs ✓
- Per-file max 5 GB
- Support Email
- Storage included 2 TB
- Projects Unlimited
- CDN delivery (every size) ✓
- On-the-fly transforms ✓
- Custom domain ✓
- Webhooks ✓
- Private files ✓
- Signed URLs ✓
- Per-file max 5 GB
- Support Priority email
Extra storage past your plan is $0.12 per GB per month. Billed by Polar.
For AI coding agents
The MCP server lets Claude Desktop, Cursor, Windsurf, and ChatGPT upload files mid-session and reply with a CDN URL.
claude mcp add dropkit -- npx -y @dropkit/mcp Compare
Same job, different bills.
| dropkit | S3 + CloudFront | UploadThing | |
|---|---|---|---|
| Setup time | 60 seconds | hours | 15 min |
| Download charges | free | $0.09/GB | per upload tier |
| Image transforms | yes | no | no |
| Agent CLI | yes | no | no |
| Pricing model | storage only | storage + egress + requests | per upload |
Questions
What happens when I exceed my plan?
/billing to get pinged on overage and card decline. If your card is declined, uploads pause until it's updated.