Rate Limits

Connection, request, session, and audio quotas by plan.

Limits are enforced per API key and derived from BASE_PLAN_LIMITS in the gateway configuration. A value of 0 means unlimited for audio-second budgets.

Plan limits

Limitfreestarterproenterprise
Max concurrent WebSocket connections131050
Max concurrent utterances24816
Max connections per minute62060240
Max offline requests per minute12603001,200
Max audio seconds per offline request900 (15 min)7,200 (2 hr)14,400 (4 hr)unlimited
Max session wall-clock seconds900 (15 min)7,200 (2 hr)28,800 (8 hr)28,800 (8 hr)
Max audio seconds per realtime session900 (15 min)7,200 (2 hr)28,800 (8 hr)28,800 (8 hr)
Max audio seconds per billing window3,600 (1 hr)72,000 (20 hr)720,000 (200 hr)unlimited
Idle timeout (no audio)60 s120 s180 s300 s

What happens when a limit is hit

ScenarioResponse
Exceed concurrent connectionsHTTP 429 concurrent_connection_limit
Exceed connection rateHTTP 429 connection_rate_limited with Retry-After
Exceed offline request rateHTTP 429 request_rate_limited with Retry-After
Exceed per-request audio lengthHTTP 413 audio_too_long
Exceed realtime session durationWebSocket close 1008 session_duration_limit
Exceed realtime session audioWebSocket close 1008 session_audio_limit
Exhaust billing-window audioWebSocket close 1008 audio_quota_exhausted or HTTP 429
No audio within idle timeoutWebSocket close 4408 idle_timeout
Upstream backpressureWebSocket close 1013 upstream_backpressure
Client not reading fast enoughWebSocket close 1013 client_backpressure
Frame larger than 1 MiBWebSocket close 1009 audio_frame_too_large

Raising limits

Contact the LansonAI team to move to a higher plan or negotiate custom GATEWAY_PLAN_LIMITS_JSON overrides.