Models & pricingRate-limit tiers

Rate-limit tiers

⚠️
Preview — this feature is being built; the design below is the spec.

Rate limits decide how fast you can send work: how many requests, and how many tokens, per minute. Under the tier system, limits grow automatically as your organization builds a payment history with Syntic, and are set per model so a heavy job on one model does not starve another.

Today every API key has one flat cap of 600 requests a minute, with no token-based limit, as described on Limits. The tiers below replace that once they ship. Plan windows, spend limits and the credit balance are separate controls and do not change.

Three limits per model

For each model, three buckets are checked on every request. Running out of any one returns 429.

LimitAbbreviationCounts
Requests per minuteRPMEvery request to a model endpoint.
Input tokens per minuteITPMPrompt tokens, including images and documents. Cached prompt tokens are not counted, so well-cached prompts get far more throughput.
Output tokens per minuteOTPMGenerated tokens, including reasoning tokens. Reserved from max_tokens when the request starts, then corrected to the real count.

Buckets refill continuously. A limit of 1,000 RPM means roughly one more request becomes available every 60 ms, not 1,000 at the top of each minute. Short bursts above the average are fine as long as the bucket has room.

Tiers

Your organization moves up a tier automatically once it has paid the cumulative amount shown and the waiting period has passed since its first payment. Plan subscriptions and credit purchases both count.

TierPaid to dateWaiting periodMax single credit purchase
Start$0 (free plan)
1$5$100
2$507 days$500
3$2507 days$1,000
4$1,00014 days$5,000
CustomBy agreementBy agreement

Tiers never go down because spending drops. They can be lowered after a chargeback or an abuse finding.

Limits by tier

Per organization, per model. Workspaces share the organization’s limits unless an administrator sets workspace limits.

ModelTierRPMITPMOTPM
Amara S1.2Start5030,0008,000
1600200,00040,000
21,000400,00080,000
32,0001,000,000160,000
44,0002,400,000400,000
Amara QuickStart5050,00010,000
1600400,00080,000
21,500800,000160,000
33,0002,000,000320,000
46,0004,500,000800,000
Amara DeepStart2020,0008,000
1300150,00030,000
2600300,00060,000
31,200600,000120,000
42,5001,200,000300,000

Tier 1 keeps the 600 requests per minute everyone has today, so no existing customer gets a lower request limit when tiers launch.

Other endpoints

Endpoint groupLimit
Token counting2,000 RPM per organization, separate from model limits
Files, batches, models list1,000 RPM per organization
Agents API (definitions, sessions, executions and related)600 reads and 60 writes per minute per workspace
Admin API300 RPM per organization
BatchesQueued requests do not count against RPM, ITPM or OTPM; see Batches

Workspace limits

Administrators can cap any workspace below the organization’s limits, for example to stop a test workspace from using production’s throughput. Workspace limits are set per model, in the Console under Settings → Limits or with the Admin API (rate-limit info). A workspace limit can never be higher than the organization’s.

See your limits

  • Console: Settings → Limits shows the current tier, the next tier’s requirements and each model’s limits.
  • On a 429: the rate-limit headers give the cap and the wait. Successful responses carry none.
  • Admin API: GET /v1/organizations/rate_limits lists everything for scripts and dashboards.
curl -sS https://app.syntic.ai/v1/organizations/rate_limits \
  -H "Authorization: Bearer $SYNTIC_ADMIN_KEY" \
  -H "syntic-beta: admin-2026-11-01"

Getting more throughput

  1. Cache prompts. Cached input tokens are not counted against ITPM. See Prompt caching.
  2. Set max_tokens close to what you need. OTPM is reserved from it at the start of each request.
  3. Use Batches for jobs where an answer within 24 hours is fine: it runs outside your per-minute limits.
  4. Spread across models where a lighter model is good enough; each model has its own buckets.
  5. Ask for a custom tier from the Console’s Settings → Limits page if you have a known launch or steady high volume.

Errors

Statustypecodedetails.limit
429rate_limitrate_limitedrequests, input_tokens or output_tokens
429rate_limitworkspace_rate_limitedSame, when a workspace limit (not the organization’s) ran out

Build notes for the platform team

  • Token buckets keyed by organization + model (and workspace + model where overridden) in the shared store; the existing per-key request counter becomes the RPM bucket.
  • Tier is computed nightly from paid totals and stored on the organization; a manual override column supports custom tiers.
  • Fall back to a local per-instance limiter when the shared store is unreachable, as the request limiter does today.
Was this page helpful?