Subtitle API — convert & clean subtitles programmatically

Convert SRT to VTT and more with one HTTP request. Free 100 credits, no signup to start. Clean, resync, and automate subtitle conversion with the SubtoVTT subtitle API. v1 · stable

Convert SRT, VTT, ASS, SBV, SUB, and STL subtitles in one HTTP request. This subtitle conversion API turns raw caption files into the exact format your platform or pipeline needs — with optional cleanup, timing resync, and deduplication built in. Create a free account to get 100 credits and your first subtitle API key, then start converting. Designed for developers who need to automate subtitle conversion inside video platforms, CI/CD pipelines, and backend services.

Quick start

Five steps from zero to a converted subtitle file.

1. Create an account & generate a key

Credits and API keys require a logged-in account. Sign up free — your account starts with 100 credits — then generate a subtitle API key from the API Keys tab of your dashboard.

⚠️ The raw key value is shown once; only its hash is stored server-side. If you lose it, create another key. Keys are pure access tokens — the credit balance lives on your account.

2. Make your first request

curl -X POST https://api.example.com/api/v1/convert \
  -H "Authorization: Bearer <key>" \
  -F "[email protected]" \
  -F "from=srt" \
  -F "to=vtt"

3. Get the response

The converted subtitle text comes back as a downloadable attachment (set via Content-Disposition), e.g. movie.vtt. Two headers tell you what happened:

X-Cue-Count: 142
X-Avg-Cps: 18.4

4. Check your credits

curl https://api.example.com/api/keys/balance \
  -H "Authorization: Bearer <key>"
{
    "credits": 99,
    "usage": 1
}

5. Top up when you need more

From your dashboard's Billing tab, pick a credit pack ($2/1k, $9/10k, $40/50k). Stripe handles checkout — credits land on your account the moment payment clears. Pay-as-you-go, no subscription.

Where to go next

↑ Back to top