Skip to main content

Limits

post.buzz enforces three layers of limits:

  1. Platform limits — per-platform constraints on media and text, checked before a post is published so you get a clear error instead of a platform rejection.
  2. Plan quotas — per-plan resource ceilings (channels, posts/month, storage, AI actions, and more).
  3. Rate limits — only three exist in the whole system (see below); there is no per-key request rate limit on /v1.

How validation works​

When you create a post (via the app or the REST API), the post is validated against the destination platform's rules for its postType:

  • Aspect ratio — width / height.
  • Bitrate — (fileSize × 8) / videoLength, in bps (shown as Mbps).
  • File count — how many images/videos a single post may attach.
  • Resolution, duration, file size.
  • Text length — per-platform and per-tier (e.g. X free vs. premium).

If anything fails, the API returns 400 with a message naming the constraint. Ownership failures (referencing an account or media outside your organization) return 403. See Errors.

Platform limits — quick reference​

These are publish-time limits per platform and post type. They are independent of the API's upload ceilings, and the smaller of the two applies at upload time.

PlatformMax filesVideo maxVideo durationImage max
Instagram Post1045 Mbps15 min8 MB
Instagram Reel145 Mbps15 min—
Instagram Story1100 MB60 s8 MB
TikTok Video11 GB10 min—
TikTok Photo10——20 MB
YouTube Short15 GB3 min—
YouTube Video15 GB4 h—
LinkedIn102 GB30 min5 MB
X4512 MB140 s / 600 s¹5 MB
Facebook Post1045 Mbps8 min4 MB
Pinterest12 GB15 min5 MB
Reddit1 / 10 gallery1 GB15 min20 MB
Threads101 GB—8 MB
Discord1025 MB—25 MB
Slack41 GB—1 GB
Mastodon499 MB—16 MB
Bluesky4———
Google Business1——5 MB

¹ X video duration depends on account tier: 140 s (Free/Basic) or 600 s (Premium/Premium+).

For full per-post-type detail (aspect ratios, resolutions, text limits), see the individual platform pages.

Upload ceilings​

The absolute largest files the Media API accepts, regardless of plan:

TypeAbsolute max
Image25 MB
Video100 MB
Document100 MB

Your plan's maxFileSize (see below) may be lower; the effective limit is the smaller of the two, and oversized uploads return 413 { "error": { "code": "too_large", ... } }.

warning

Don't confuse upload ceilings with publish-time limits. Some platforms accept larger videos at publish time (e.g. YouTube's 5 GB) — but you can only get media into post.buzz through an upload path capped at 100 MB for video.

Plan quotas​

Your plan determines resource ceilings. These apply to the whole organization.

FreeStarterCreatorProBusinessAgency
Members11351025
Workspaces11251025
Channels (accounts)35102040100
Posts / month30Unlimited*Unlimited*Unlimited*Unlimited*Unlimited*
X posts / month301002507502,0005,000
Auto-DMs / month101005002,0007,50025,000
Auto-comments / month252501,0005,00015,00050,000
Link-in-bio pages11251025
Agents135102050
AI actions / month1005001,5005,00015,00050,000
Image generations / month525752005001,500
Video credits / month0510204080
Media storage1 GB5 GB15 GB50 GB150 GB500 GB
Max image size10 MB25 MB25 MB25 MB25 MB25 MB
Max video size25 MB100 MB100 MB100 MB100 MB100 MB

* Unlimited publishing is subject to fair use and social-platform API limits.

Paid plans (Starter through Agency) include a 7-day trial. A null quota value means unlimited. Storage — not upload count — is the metered media quantity. The per-plan maxFileSize can be lower than the absolute ceiling but never higher.

Check your live numbers any time via GET /v1/organization (limits) and GET /v1/usage (posts this month + credits).

Quota reset windows​

  • Post quotas (postsThisMonth / X posts) are metered on your subscription billing period — they reset when the period renews. If the organization has no subscription period, the calendar month is used instead.
  • Other monthly quotas (auto-DMs, auto-comments, AI actions, image generations, video credits) reset at the start of each UTC month.

Rate limits​

There is no per-key or per-request HTTP rate limit on /api/v1/* — no limiter sits in front of the REST surface. Only three things in the system return 429:

LimitScopeValueOn breach
Public AI generator (POST /api/public/generate)Per IP, per UTC day5 generations429 + Retry-After: <seconds to UTC midnight>
Insight refresh (POST /v1/{posts,accounts}/{id}/analytics/refresh)Per account, rolling 24 h3 refreshes (default; 0 disables)429 rate_limited + next-slot time in the message
AI chat (POST /api/chat/stream)Session (AI quota)Plan-dependent429

Internal-only (not REST-facing): comment automation has hourly per-platform caps (Instagram 190, Facebook 100, Threads 50, others 50).

  • Posts API — where validation runs.
  • Errors — how limit violations surface.
  • Plans — upgrade to raise plan limits.