Find a plan that fits
Plan costs and allowances
Compare the plan price with the work you need to do. Prices are in USD and apply to the selected monthly or yearly subscription. The table and calculator read the plan definitions used by the app. Yearly billing collects the annual total, rather than charging the displayed monthly equivalent each month. The listed plans have unlimited posts.
Writing requests and image credits are separate allowances. They reset with the UTC calendar month, rather than your invoice date. An image uses one image credit and a five-second AI video uses 10 credits. AI generation also needs its provider to be enabled and available; an allowance does not guarantee that a provider can complete a request.
| Plan | Monthly | Yearly total | Accounts / workspace | People | Posts | Writing / month | Image credits / month |
|---|---|---|---|---|---|---|---|
| Solo | $19 | $180 | 5 | 1 | Unlimited | 100 | 60 |
| Team | $29 | $276 | 10 | Unlimited | Unlimited | 200 | 120 |
| Studio | $39 | $372 | 30 | Unlimited | Unlimited | 300 | 200 |
| Agency | $89 | $852 | 100 | Unlimited | Unlimited | 1,000 | 600 |
Accounts, people and workspaces
One workspace holds one account on each network. Connecting another account on the same network replaces the network’s connection in the partner workspace. There are 12 supported networks, so a plan’s nominal account cap does not mean you can add more than 12 distinct network connections in one workspace. Choose Agency when you need duplicate networks across brands.
Agency permits unlimited workspaces on one plan. The nominal Agency allowance is up to 100 accounts in each workspace, one per network per workspace. The app checks account usage within each workspace, with no combined cap across all of an owner’s workspaces. Therefore 150 accounts across many workspaces is not an automatic contact-sales case.
Solo has one login seat, including the owner. Team, Studio and Agency have no seat cap. Invites reserve seats while pending, so a full plan cannot add another member by leaving an invitation open. Client approval links require Team or higher. A person can review a client link without creating a login; the link itself grants access to that review.
The calculator asks for total accounts, duplicate networks and people. It picks the least expensive plan that fits a single workspace when that is possible. More than 12 accounts or a duplicate network selects Agency so accounts can be split across workspaces. It is a plan estimate, not a purchase or a reservation of provider capacity.
| Rule | Current behavior |
|---|---|
| One account per network | One connection per network in each workspace; the 12 supported networks impose a practical ceiling below some nominal plan caps. |
| Additional owned workspaces | Agency can share its plan with unlimited owned workspaces. Other paid plans allow one non-demo workspace. |
| Agency account count | The nominal cap is 100 per workspace. No combined cap across the owner’s workspaces is enforced. |
| People and invitations | The plan table includes the owner; pending invites reserve seats. Team, Studio and Agency have no seat cap. |
| Client review | Team or higher; a client link can be used without a login and is consumed by a decision. |
Uploads and post media
A file uploaded through the Worker has a 95 MiB request limit. The app also supports direct R2 uploads with a maximum announced file size of one GiB, confirmed against the stored object before it becomes ready. Accepted types are JPG, PNG, WebP, GIF, MP4, MOV, WebM and PDF; PDFs are for LinkedIn documents. Network-specific rules still apply after upload.
Post media must match the selected network. The shared validator allows up to 10 images in a post and one video, rejects mixed image/video posts and requires a video for YouTube. Instagram and TikTok require media; Pinterest requires an image. Some formats have stricter provider rules, so a successful upload by itself does not mean a post can be sent.
| Rule | Current behavior |
|---|---|
| Upload through the Worker or REST API | 95 MiB request limit; oversized requests return HTTP 413. |
| Direct R2 upload | One GiB maximum declared file size; confirmation verifies stored bytes and content type. |
| Upload types | JPG, PNG, WebP, GIF, MP4, MOV, WebM and PDF; PDFs are for LinkedIn documents. Unsupported types return HTTP 415. |
| Post media | Up to 10 images or one video; mixed image/video posts are rejected. Network and format rules can be stricter. |
Per-platform text limits
The table lists the app’s default character limits for the post body. The composer checks each selected account and lets you write a separate version for each one. Some account capabilities override the default, such as a longer X allowance reported by the partner. Titles, first comments, threads and network-specific fields have their own checks in addition to the body limit.
A validation problem returns HTTP 422 before a post is saved for sending. The app shows the reason so you can shorten the text, attach the right media or adjust the network settings. Platforms can also refuse a post after it passes our validation; the app shows the provider’s error and offers retry where the post state permits it.
| Network | Characters |
|---|---|
| X | 280 |
| 3,000 | |
| 2,200 | |
| 63,206 | |
| TikTok | 2,200 |
| YouTube | 5,000 |
| Threads | 500 |
| Bluesky | 300 |
| 500 | |
| 40,000 | |
| Google Business | 1,500 |
| Mastodon | 500 |
API, MCP and other request limits
The REST API defaults to 120 requests per minute per workspace and API key or OAuth client on paid plans and 30 without a plan. These defaults are configurable by the operator. MCP allows 120 requests per minute per connected app grant or API key on a paid plan, or 30 without a plan. A parse error also counts toward the MCP limit.
Exceeding the API or MCP pace limit returns HTTP 429 and a Retry-After header. Wait before retrying. A plan or account allowance refusal uses HTTP 402 with an upgrade or plan-required explanation. A missing permission uses HTTP 403. Unsupported file types return HTTP 415, and oversized upload declarations or requests return HTTP 413. These responses do not buy extra capacity.
There can be 20 active API keys and five webhooks in a workspace. Creating keys and webhooks is also paced at 30 per hour, and direct-upload starts at 60 per hour. AI writing has a per-user pace limit in addition to the monthly allowance. Reaching a monthly allowance stops generation with a limit message; it does not add a paid overage to your subscription.
| Rule | Current behavior |
|---|---|
| REST API pace | Default 120 requests per minute on paid plans, 30 without a plan, per workspace and key or OAuth client. Operator-configurable. HTTP 429 with Retry-After at the limit. |
| MCP pace | 120 requests per minute on a paid plan, 30 without one, per app grant or API key. Parse errors count; HTTP 429 includes Retry-After. |
| Active keys and webhooks | 20 active API keys and five webhooks per workspace. Revoke or remove an existing one before adding beyond the cap; capacity refusals return HTTP 409. |
| Key and webhook creation | 30 per workspace per hour for each operation; HTTP 429 when the creation pace is exceeded. |
| Direct-upload starts | 60 per workspace per hour; HTTP 429 after the limit. |
| AI writing pace and input | Default 12 writing requests per user per minute, configurable by the operator; pace and monthly quota refusals use HTTP 429. Input is capped at 4,000 characters with HTTP 413 for oversized text. |
| Plan or account allowance | HTTP 402 with an upgrade or plan-required explanation; capacity is not purchased automatically. |
| Permission and post validation | HTTP 403 for missing permission; HTTP 422 for validation problems. The app displays the reason. |
Extra charges and AI availability
There is no metered or usage-based billing in this subscription implementation: nothing is billed beyond the plan price for extra accounts, seats, posts or AI use. Stripe Checkout creates a single subscription line with quantity one. Changing plans or billing periods is a separate billing action; it can affect what is due for that subscription.
AI spending also has server-wide budget guards. A provider outage, missing key or used global budget can pause AI even if your workspace still has allowance left. The app reports when generation is unavailable and uploads remain an alternative. Plan allowances are ceilings for included use, rather than a commitment to buy third-party generation on demand.
| Rule | Current behavior |
|---|---|
| Usage billing | No metered or usage-based subscription billing. Checkout creates one subscription line with quantity one; included-use limits do not create paid overages. |
| AI reset | Writing requests and image credits reset with the UTC calendar month. An image uses one credit; a five-second AI video uses 10. |
| AI availability | Monthly allowance, per-user pace, global budgets and enabled providers can all restrict generation. An allowance does not guarantee provider availability. |
Trial, cancel and refunds
The normal checkout offer is a 7-day trial on a paid plan, with a card required and no charge at trial start. Eligibility is checked per workspace, person and normalized email inbox. Trials can be paused by configuration, and a used trial does not reset when you open another workspace. Confirm the offer shown at checkout before starting.
Section 6 of the terms says: “You can cancel at any time. Your access runs to the end of the period you paid for. After that the workspace is read-only: you can sign in, export and delete, and nothing is deleted until you do.” It also says: “We do not refund partial periods, unless the law requires it.”
When a plan ends, the app preserves the workspace but refuses new write activity that needs a plan with HTTP 402. Scheduled posts are held until a plan is active again. Signing in, exporting and deleting remain available. The same happens to workspaces sharing an Agency plan when that covering subscription ends; there is no second hidden subscription for each shared workspace.
| Rule | Current behavior |
|---|---|
| Normal trial | 7 days with a card required and no charge at trial start, subject to eligibility and configuration. |
| Cancellation | Cancel at any time. Paid access runs to the end of the paid period; then the workspace becomes read-only. |
| Refunds | “We do not refund partial periods, unless the law requires it.” |
| Data and scheduled posts | Sign-in, export and deletion remain available. Scheduled posts are held without an active plan; workspace data remains until deletion. |
Questions
Do multiple Instagram brands need multiple workspaces?
Yes. One workspace holds one account per network. Agency supports additional workspaces on the same plan.
Is there a combined 100-account ceiling on Agency?
No combined cap is enforced across workspaces. The nominal Agency cap is 100 accounts per workspace, with one account per network in each workspace.