Source: https://developers.tokportal.com/blog/unified-social-apis-25-posts-a-day-wall/
Markdown: https://developers.tokportal.com/blog/unified-social-apis-25-posts-a-day-wall.md

2026-08-18 · TokPortal team

# Why unified social APIs hit a wall at 25 posts/day — and what managed accounts change

"Unified social API" products — one SDK that posts to TikTok, Instagram, YouTube and the rest — are genuinely convenient. They also share a ceiling that no amount of engineering on their side can lift, because it belongs to the platforms. This post lays out the limits as documented today, explains why every OAuth-based publisher inherits them, and describes what changes when the account is operated by a human rather than a token.

## The documented limits (checked 2026-08-18)

We re-read the platform docs before writing this, because numbers in this area drift and are often quoted from memory.

**TikTok Content Posting API (Direct Post).** TikTok's [reference](https://developers.tiktok.com/doc/content-posting-api-reference-direct-post) states that each user access token is limited to **6 requests per minute**, that all content posted by *unaudited* clients is restricted to **private viewing mode**, and returns `spam_risk_too_many_posts` when "the daily post cap from the API is reached for the current user" and `reached_active_user_cap` when a client's daily quota of active publishing users is reached. The daily cap itself is not published; integrators commonly report it in the 15–25 posts per account per day range and note that TikTok adjusts it. The [getting-started guide](https://developers.tiktok.com/doc/content-posting-api-get-started) adds that your app must be approved for the `video.publish` scope, that each target user must authorize it, and that lifting the private-only restriction requires an audit of your API client.

**Instagram Content Publishing (Meta).** Meta's [documentation](https://developers.facebook.com/docs/instagram-platform/content-publishing) states that Instagram accounts are limited to **100 API-published posts within a 24-hour moving period** (carousels count as one), that publishing is available to Instagram *professional* accounts, and that you can query `GET /<IG_ID>/content_publishing_limit` to see consumption. For years the documented figure was 25 per 24 hours — that number is still what most unified APIs and their customers have in mind, and it is where TikTok's practical cap sits today.

**YouTube Data API.** Uploads are gated by a per-project daily quota (10,000 units by default, roughly 1,600 units per `videos.insert`), so a fresh project can insert on the order of six videos a day before requesting a quota increase.

## Why unified APIs cannot route around it

A unified API is a thin layer over those official endpoints. Under the hood, each of your connected accounts is an OAuth grant on the vendor's app, and each post is a call to the platform with that user's token. Everything above applies per account and per app:

- the per-token rate limit and daily cap are enforced by the platform on *your* connected account, not on the vendor;
- the audit / app-review requirement is on the vendor's app, and while it is pending your posts stay private;
- the vendor cannot create accounts, so scaling means you bring more accounts, each with its own OAuth session and its own cap;
- tokens expire and need re-authorization, per account.

So the "wall at 25 posts/day" is not a bug in any product; it is the platform's contract for API-published content on an account you own. If you need 200 posts a day, the arithmetic says eight to fourteen accounts, each connected, each audited through the vendor, each individually rate-limited — and still no way to create the accounts programmatically or to make them look native to a market.

## What managed accounts change

TokPortal starts from a different premise: the account is created and operated by a human account manager in the target country, on a local device and network, and *your* API talks to TokPortal — not to TikTok or Instagram. That moves the limits.

- **No per-account OAuth.** One `X-API-Key` covers every delivered account. There is no user login flow to build, no token refresh, no scope approval.
- **No app audit.** Posts go through the native app, by a person. Nothing is "API-published" from the platform's point of view, so nothing is forced private and no client audit is involved.
- **Accounts are part of the product.** `POST /bundles` with `country: "US"` orders a US account; `POST /bundles/bulk` orders up to 100 in one call; Advanced Niche Warming adds recorded, verified warming sessions per search term before you post.
- **Volume scales with accounts, on purpose.** TokPortal caps scheduling at **3 videos per day per bundle** (`target_publish_date`, `VIDEOS_PER_DAY_EXCEEDED` on the fourth). This is a deliberate health cap, not a platform quota: 100 posts a day is 34 accounts × 3, and `PUT /bundles/{id}/videos/batch` fills up to 500 slots per call.
- **The platform's opinion of the account is visible.** Bans are first-class: `GET /account-bans` and the `account.ban_appeal.submitted` / `account.banned` / `account.ban_resolution.decided` webhooks report exactly what happened and what TokPortal will do about it (refund, remake, or not).

## What managed accounts do not change

We would rather you hear the trade-offs from us.

- **No minute-level scheduling.** You give a day; the manager posts within that day. If your use case is "publish at 18:03 sharp on my own brand account", the official API is the right tool.
- **Not for accounts you already own.** TokPortal does not connect existing profiles via OAuth. If you only need to schedule to accounts you control, at low volume, use the platform APIs or a scheduler built on them.
- **Human latency.** Account delivery takes days, not milliseconds; review windows are 72 hours (auto-finalized unless you disable it).
- **Credits.** Account setup is 32 credits, a video slot 2, a warming target 5, TokPortal Coverage 25 per 30 days after the first period; the [pricing page](https://developers.tokportal.com/credits) has the full table and `GET /credit-costs` is the live source.

## Choosing

If the sentence describing your need contains "my accounts" and a number under 25, use the official APIs — directly or through a unified vendor. If it contains "accounts I don't have yet", "in the US from abroad", "a hundred a day", "warmed", or "what happens when one gets banned", the wall is real and human-operated accounts are the way past it. The [Agents × jobs](https://developers.tokportal.com/agents) pages walk through each of those jobs with the exact tool sequence, from Claude, ChatGPT, Cursor, n8n, LangChain and 20 other hosts.
