Skip to main content
Billing is prepaid credits, metered per request. Signup grants $5 in credits.

How each modality meters

  • LLM — token counts from the response’s usage object, priced at $1 per million input tokens and $3 per million output tokens.
  • TTS — characters of the submitted transcript, counted before pronunciation-dictionary alias expansion. A transcript that expands from 3,000 to 8,000 characters bills 3,000.
  • STT — audio seconds computed from received bytes: seconds = bytes / (sample_rate × 2) (PCM16 mono). Streaming sessions settle every 60 s and at close.

Top-ups

Add credits at withhopper.com/console/billing. Payments go through Stripe Checkout; amounts from $5 to $10,000. Credits land when the Stripe webhook fires, typically seconds after checkout.

Spend headers

Metered responses carry up to two headers, 6-decimal USD strings:
  • x-hopper-request-cost-usd — cost of this request
  • x-hopper-credits-remaining-usd — credit balance
Both headers are CORS-exposed via Access-Control-Expose-Headers.

Out of credits

At zero balance, every metered route — including the STT WebSocket upgrade — returns 402:
An STT streaming session that hits zero mid-session closes with WebSocket code 1008 (“insufficient credits”).