Every plan has every network, the full API, the SDKs, scheduling, the queue and webhooks. Plans differ in how much you can do. Prices and the current offer are on reelspan.com/pricing.
At a glance
| Free | Starter | Pro | Agency | Scale | |
|---|---|---|---|---|---|
| Uploads a month | 15 | Unlimited | Unlimited | Unlimited | Unlimited |
| Profiles | 1 | 5 | 25 | 75 | 225 |
| Team seats | 1 | 1 | 3 | 5 | 10 |
| Largest video | 0.5 GB | 1 GB | 2 GB | 4 GB | 8 GB |
| Media library | 1 GB | 25 GB | 100 GB | 250 GB | 500 GB |
| AI caption credits a month | 10 | 100 | 400 | 1,000 | 2,500 |
| API requests a minute | 60 | 60 | 100 | 200 | 500 |
| API requests per 10 minutes | 300 | 300 | 500 | 1,000 | 2,500 |
| X posts with links a month | 0 | 0 | 20 | 60 | 200 |
| White-label connect | Yes | Yes | Yes | ||
| Priority support | Yes | Yes |
Uploads
An upload is one post on one network: a video sent to TikTok, YouTube and Instagram is three uploads. Only the Free plan has a monthly limit; on paid plans the rate limit is the only ceiling.
- The count is taken when a post is accepted, for each network it will be sent to. Networks skipped at once (for example with no account connected) aren't counted.
- Scheduled and queued posts count when you schedule them. Cancelling one refunds its uploads.
- Retrying a failed network counts again, like a new upload.
- Posts made with a test key never count.
- The count resets on the 1st of each month at 00:00 UTC.
A post that would go over the limit is refused with 429 and your usage. Read the current count any time with Current account:
curl https://api.reelspan.com/v1/me -H "Authorization: Bearer $REELSPAN_API_KEY"const me = await reelspan.me();
console.log(me.plan, me.api_usage); // 'free' { count: 4, limit: 15, last_reset: '2026-11-01T00:00:00.000Z' }me = reelspan.me()
print(me["plan"], me["api_usage"])limit is null on plans without a monthly limit. Successful post responses carry the same usage object.
Profiles and seats
A profile holds one account per network, usually one brand or one client. Creating a profile past your plan's count is refused with 403 PROFILE_LIMIT_REACHED; GET /v1/profiles returns your limit alongside the list. Seats are the people in your workspace, including pending invites.
Files and storage
- Videos up to your plan's size, however they arrive. Files over 100 MB go up with a direct upload.
- Photos up to 20 MB and documents (PDF, PowerPoint, Word) up to 100 MB, on every plan.
- The media library keeps files you choose to save, for reuse, and is never cleared automatically. Saving past your storage is refused with 413
LIBRARY_FULL. Media you don't save is deleted after its post finishes and a retention period passes.
AI caption credits
Each caption generation (from a video, from your notes, or a rewrite) uses one credit, charged only when it succeeds. Credits reset on the 1st with your uploads. With none left, the AI caption endpoints answer 429 AI_CREDITS_EXHAUSTED. See AI captions.
X posts with links
X charges far more for a post that contains a link, so Reelspan removes links from X posts unless you send x_keep_links=true. Plans include a monthly number of X posts that keep their links; past it, links are removed with a warning and the post still goes out. See Character limits.
Changing plan
Upgrade or downgrade in the dashboard under Billing. New limits apply as soon as the plan changes. Need more than 225 profiles? Contact us.