YouTube JSON3 to SRT Subtitle Converter
Fast. Private. Perfect.
100% local processing in your browser. No upload. No waiting.
Drag & drop your JSON file here
or click to browse
Supports .json files up to 50 MB
More Subtitle Tools
Why Choose AllSubConverter?
Your Privacy Matters
Everything runs in your browser. Your files are never uploaded.
Lightning Fast
Optimized processing engine converts files in seconds.
Free & Local
Each file can be up to 50 MB. Batches can contain up to 200 files or 1 GB total.
Works Everywhere
Works on Windows, Mac, Linux, iOS, Android - any modern browser.
About JSON to SRT
YouTube timedtext JSON3 stores captions as an events array with tStartMs, dDurationMs, and segs text fragments. This converter parses that structure, joins the text fragments, calculates cue end times, and outputs standard numbered SRT subtitles for video players, smart TVs, and editing tools. Everything runs locally in your browser.
Input Format
JSONJSON3 is YouTube's internal subtitle format, exported via the timedtext API. The file is a JSON object with an events array. Each event has tStartMs (start millisecond), dDurationMs (duration in ms), and segs (an array of text fragments, each with a utf8 field). Users typically download this format using youtube-dl, yt-dlp, or similar tools.
Output Format
SRTSRT (SubRip) is the most widely supported subtitle format in existence. Each entry consists of a sequential index number, a timestamp line in HH:MM:SS,mmm --> HH:MM:SS,mmm format (note the comma before milliseconds and the dash-arrow separating start and end), and one or more lines of subtitle text. SRT files are plain text with .srt extension and are recognized by every desktop player (VLC, MPC-HC, MPV), every smart TV brand, mobile video apps, and professional editing software.
Features
Why Convert?
Format Differences
Common Use Cases
Video Editing Import
Load YouTube JSON3 files into Adobe Premiere Pro, DaVinci Resolve, or Final Cut Pro, which accept SRT on the timeline but do not parse JSON3.
Media Server Library
Add subtitles to your Plex, Emby, or Jellyfin library. These servers auto-detect .srt files alongside video but ignore .json.
Mobile Video
Ensure subtitles work in iOS and Android video apps like Infuse, nPlayer, and MX Player by converting JSON3 to the universally supported SRT.
Encoding Pipelines
Feed subtitles into FFmpeg, HandBrake, or MKVToolNix workflows that hardcode or mux subtitles, all of which expect SRT input.
Subtitle Standardization
Normalize a mixed library of JSON3, VTT, and SRT files into a single consistent SRT collection for easier management.
Related Formats
JSON (YouTube JSON3)
JSON3 is YouTube's internal subtitle format, exported via the timedtext API. The file is a JSON object with an events array. Each event has tStartMs (start millisecond), dDurationMs (duration in ms), and segs (an array of text fragments, each with a utf8 field). Users typically download this format using youtube-dl, yt-dlp, or similar tools.
VTT (WebVTT)
The web video alternative: adds a WEBVTT header and uses period-separated milliseconds. Choose VTT if your target is HTML5 video or YouTube.
ASS (Advanced SubStation Alpha)
The styled alternative: supports fonts, colors, and positioning. Choose ASS if you need to add visual styling to YouTube JSON3 text.
Frequently Asked Questions
JSON3 is YouTube's internal subtitle format. It is served via the timedtext API as a JSON object with an events array. Each event has tStartMs (start millisecond), dDurationMs (duration in ms), and segs (text fragments array, each with a utf8 field).
The utf8 fragments in each event are joined in their original order. For example, "Hello " and "world" become the complete subtitle line "Hello world".
Yes. The output uses standard SubRip numbering and HH:MM:SS,mmm --> HH:MM:SS,mmm timing, so it loads in VLC, MPV, Samsung and LG TVs, Premiere Pro, DaVinci Resolve, Plex, and similar tools.
Use yt-dlp: yt-dlp --write-auto-sub --sub-format json3 <video-URL>. The downloaded .json3 file can be directly imported into this tool. You can also fetch it via the YouTube timedtext API in a browser.
Some events in YouTube JSON3 contain only timing information (like aAppend markers) without text fragments. These events are automatically skipped during conversion and do not affect the SRT output.
SRT (SubRip) is the most widely supported subtitle format in existence. Each entry consists of a sequential index number, a timestamp line in HH:MM:SS,mmm --> HH:MM:SS,mmm format (note the comma before milliseconds and the dash-arrow separating start and end), and one or more lines of subtitle text. SRT files are plain text with .srt extension and are recognized by every desktop player (VLC, MPC-HC, MPV), every smart TV brand, mobile video apps, and professional editing software.