Shotstack and JSON2Video solve the same problem: you describe a video in JSON, send it to an API, and get an MP4 back. Both render in the cloud, both have templates, both work from code and from no-code tools. The differences are in how you describe the video, what is included in the price, and how you pay.
Short answer
- Pick Shotstack if you only count rendering minutes (it is cheaper per minute), you like a timeline with tracks, or you need a white-label editor to embed in your own app.
- Pick JSON2Video if your videos are narrated (voice-overs at 0 credits), you want templates that adapt to the length of the content, you prefer one-off packs that never expire, or you build in n8n, Make or Claude Code.
Try it free — 600 credits (10 minutes of video) →
JSON2Video vs Shotstack at a glance
| JSON2Video | Shotstack | |
|---|---|---|
| How a video is described | Scenes with elements; a scene lasts as long as its content | A timeline of tracks and clips; "smart clips" can set start and length automatically |
| Free to try | 600 credits = 10 minutes (watermarked), no time limit | 10 credits for 30 days, plus free watermarked renders in the sandbox |
| Entry subscription | $49.95 a month, 200 minutes | $39 a month, 250 minutes |
| Voice-overs (text to speech) | Azure and ElevenLabs voices, 0 credits today | ElevenLabs, MiniMax and Polly voices, paid with the plan's AI credits |
| Automatic subtitles | Yes, one subtitles element for the whole movie | Yes, a caption asset pointing to a clip alias |
| HTML in videos | Yes, HTML and Tailwind elements | Yes, HTML assets |
| One-off packs | $49.95 for 120 minutes, credits never expire | $10 for 50 minutes, valid 12 months |
| No-code | Verified n8n node and Make app | Make and Zapier integrations |
| AI coding agents | MCP server for Claude Code, Cursor and VS Code | Guides for agentic video editing |
| White-label editor for your app | No | Yes |
Shotstack pricing in 2026
Shotstack prices plans in rendered minutes, counted by the second, plus a separate allowance of credits for AI generation (speech, images, video). Unused plan minutes roll over for 3 months.
| Shotstack plan | Price | Minutes | Per minute | AI credits | Max resolution |
|---|---|---|---|---|---|
| Pay as you go | $10 once | 50 | $0.20 | 50 | 1080p |
| Starter | $39 a month | 250 | $0.156 | 200 | 1080p |
| Pro | $99 a month | 750 | $0.132 | 500 | 4K |
| Scale | $199 a month | 2,000 | $0.10 | 1,000 | 4K |
| Volume | $499 a month | 10,000 | $0.05 | 2,500 | 4K |
Free: 10 credits when you sign up, valid for 30 days. Renders in the sandbox environment are free but watermarked, and need at least one credit in the balance. On running out, Shotstack's pricing page says rendering pauses, while its documentation says subscriptions keep rendering and bill the overage at the end of the cycle, so check with them if that matters to you.
Source: shotstack.io/pricing and the Shotstack docs, checked on 17 October 2026.
JSON2Video pricing, for comparison
| JSON2Video plan | Price | Minutes | Per minute | Voice-overs |
|---|---|---|---|---|
| Free | $0 | 10 (watermarked) | — | Included |
| Pack | $49.95 once | 120, never expire | $0.42 | Included |
| Pack | $99.95 once | 260, never expire | $0.38 | Included |
| Professional | $49.95 a month | 200 | $0.25 | Included |
| Startup | $99.95 a month | 500 | $0.20 | Included |
What the numbers say. Per rendered minute, Shotstack is cheaper at every level, and the gap grows with volume. JSON2Video's managed voice-overs use 0 credits today (ElevenLabs included), while Shotstack takes AI credits for each speech generation. So the comparison depends on your videos: for silent edits at high volume, Shotstack costs less; for narrated shorts, add the voice cost before deciding. JSON2Video stops when the credits run out, so a runaway loop cannot create a surprise bill. Higher-volume JSON2Video plans are available in the dashboard.
The JSON: timeline vs scenes
This is the biggest day-to-day difference. Here is the same narrated short, with an image, a voice-over and auto subtitles.
Shotstack uses tracks and clips on a timeline. An alias ties the subtitles and the image to the length of the voice-over (simplified from a public Shotstack template):
{
"timeline": {
"tracks": [
{ "clips": [{ "asset": { "type": "caption", "src": "alias://VOICEOVER" }, "start": 0, "length": "end" }] },
{ "clips": [{ "alias": "VOICEOVER", "asset": { "type": "text-to-speech", "text": "{{SCRIPT}}", "voice": "Amy" }, "start": 0, "length": "auto" }] },
{ "clips": [{ "asset": { "type": "image", "src": "{{IMAGE}}" }, "start": 0, "length": "alias://VOICEOVER" }] }
]
},
"output": { "format": "mp4", "resolution": "hd" }
}
JSON2Video uses scenes. The scene lasts as long as the voice-over, and the subtitles are transcribed from the movie's audio:
{
"resolution": "instagram-story",
"elements": [
{ "type": "subtitles", "language": "en", "settings": { "style": "boxed-word" } }
],
"scenes": [
{
"elements": [
{ "type": "image", "src": "{{image}}" },
{ "type": "voice", "text": "{{script}}", "voice": "en-US-AndrewMultilingualNeural" }
]
}
]
}
Both work. The timeline is closer to a video editor and gives exact control over overlapping clips. Scenes are closer to how a script is written: add a scene per paragraph, and each one adapts to its voice-over without aliases or timings. For videos built from data, where the length of each text is unknown, scenes need less bookkeeping.
When Shotstack is the better choice
- High volume without narration: at $0.05–$0.13 per minute on larger plans, it is hard to beat on price.
- You want to embed an editor in your own product: Shotstack offers a white-label editor; JSON2Video does not.
- You think in timelines: if your team comes from video editing software, tracks and clips will feel natural.
- You need many AI generators in one place: Shotstack exposes several speech, image and video models through the same API.
When JSON2Video is the better choice
- Narrated videos: voice-overs (Azure and ElevenLabs) currently use 0 credits, and you can also connect your own ElevenLabs key.
- Templates fed with data: scenes adapt to the length of each text and voice-over, and variables, conditions and per-scene variables are built in.
- Irregular volume: one-off packs never expire, so you can buy minutes once and use them over months.
- No-code and agents: verified n8n node and Make app, plus an MCP server so Claude Code or Cursor can write, validate and render videos.
Get started
- Create a free account and copy your API key. No credit card needed.
- Send your first movie:
curl -X POST https://api.json2video.com/v2/movies \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "resolution": "full-hd", "scenes": [{ "elements": [{ "type": "text", "text": "Hello from JSON2Video", "style": "005" }] }] }' - Poll the movie with
GET /v2/movies?project=…or set a webhook to receive the MP4 URL.
Moving from Shotstack? We'll help for free
If you have Shotstack templates in production, send us one and we will rewrite it as a JSON2Video template for you, free of charge. We usually reply within 24 hours.
Frequently asked questions
Does Shotstack have a free plan?
Shotstack gives 10 credits on sign-up, valid for 30 days, and renders in its sandbox environment are free but watermarked. JSON2Video gives 600 credits (10 minutes of video, watermarked) with no time limit.
How much does the Shotstack API cost?
As of October 2026: pay as you go is $10 for 50 minutes; subscriptions are Starter $39 a month (250 minutes), Pro $99 (750 minutes), Scale $199 (2,000 minutes) and Volume $499 (10,000 minutes). AI generation such as speech uses a separate allowance of credits included in each plan.
Is JSON2Video cheaper than Shotstack?
Not per rendered minute: Shotstack is cheaper on every plan. JSON2Video can come out ahead for narrated videos, because its managed voice-overs use 0 credits today, and for irregular volume, because its one-off packs never expire.
What happens when JSON2Video credits run out?
The API stops rendering and returns an error. There are no overage charges. You can buy a one-off pack at any time to continue.
Can I use my own ElevenLabs API key?
Yes. Add it in Dashboard → Connections. Voice-overs made with your own key are billed by ElevenLabs and use no JSON2Video credits for the voice.
Can I migrate my Shotstack templates to JSON2Video?
Yes. The formats are different (timeline vs scenes), but most templates translate directly: each group of clips that plays together becomes a scene. For production templates, we do the first one for you for free using the form above.
Published on March 30th, 2026