reelsdk vs Remotion

A Remotion alternative for captions, slideshows and shorts without React or AWS

Remotion is a React framework you render on your own servers or AWS Lambda: its own example puts a one-minute video at about $0.017 of Lambda compute, plus $0.01 per render on a company licence, while teams of 3 or fewer use it free. reelsdk is a hosted API: $0.02 per output minute for captions and slideshows, $0.25 for a complete faceless short, with no AWS account, no code to deploy and no subscription.

What a one-minute video costs
  • reelsdk captions or slideshow$0.02
  • Remotion on Lambda, team of 3 or fewer~$0.017
  • Remotion on Lambda, Automators licence~$0.027

Remotion's warm Lambda example (2,048 MB, us-east-1) before S3 storage, egress and transcription, plus $0.01 per render on Automators, which has a $100 monthly minimum.

Which one to pick

Pick reelsdk if

  • Your videos are captions, slideshows or faceless shorts and you'd rather not write and maintain React compositions for them
  • You don't want to run an AWS account, deploy Lambda functions and sites, or keep Remotion versions in step
  • You want transcription included: $0.02 a minute covers it

Pick Remotion if

  • Your video is a custom design you want to build in React, with your own components
  • You are 3 people or fewer and already on AWS: the licence is free and compute is about $0.017 a minute
  • You render hundreds of videos in parallel; Lambda allows 1,000 concurrent functions per region by default

Price per minute

Remotion and reelsdk, cost of one video

Remotion has no render price of its own: you pay your cloud bill, and companies of 4 or more people also pay for a licence. We used Remotion's published Lambda example for a one-minute video. reelsdk prices by job type, and the price includes the machine, storage for 7 days and, for captions, the transcription.

Remotion and reelsdk, cost of one video
OptionLicenceComputeOne minute of video
Remotion on Lambda, up to 3 peopleFreeAbout $0.017 warm, $0.021 coldAbout $0.017 to $0.021
Remotion on Lambda, Automators$0.01 a render, $100 a month minimumAbout $0.017 warm, $0.021 coldAbout $0.027 to $0.031
Remotion Creators$25 a month per seatYour own billCompute plus seats
Remotion EnterpriseFrom $500 a monthYour own billCompute plus licence
reelsdk captions or slideshowNoneIncluded$0.02
reelsdk faceless shortNoneIncluded$0.25 up to 60 s
reelsdk raw ffmpegNone$0.01 per compute minuteDepends on the command

Remotion's Lambda figures exclude S3 storage, egress, CloudWatch logs and transcription, and you deploy and run the function yourself. reelsdk has no subscription, and the first $1 is free. Prices from Remotion license and pricing, checked October 2026.

Head to head

reelsdk and Remotion, feature by feature

reelsdk and Remotion compared
reelsdkRemotion
What it isA hosted rendering APIA React framework you render yourself, on servers or AWS Lambda
Pricing modelPay per job, no subscription, first $1 freeFree for individuals and up to 3 people; companies pay $0.01 a render, $25 a seat a month or from $500 a month, plus compute
How you describe a videoOne call per job type with a JSON bodyReact components, rendered with renderMediaOnLambda or the CLI
Word-by-word captionsPOST /v1/captions: transcription, burn-in, srt, vtt and ass in one jobYou build it: transcribe with Whisper, page the words with createTikTokStyleCaptions(), style the component
Faceless short from a topicPOST /v1/shorts, $0.25 up to 60 sNot included; bring your own script, image and voice generation
Raw ffmpegPOST /v1/ffmpeg, ffmpeg 8.1, $0.01 per compute minutenpx remotion ffmpeg, on machines you run
SetupAn API keyAn AWS account and IAM role, a deployed function and site, matching Remotion versions
Getting the resultThe create call waits up to 300 s for the finished job, or 202 with a poll URLA renderId; poll getRenderProgress or wait for the webhook
WebhooksHMAC-SHA256 in Reel-Signature, 3 attemptsHMAC-SHA512 in X-Remotion-Signature when you set a secret
Concurrency3 jobs at once, 500 a day per key1,000 concurrent Lambda functions per region by default, lower on new AWS accounts
Limits per renderMedia up to 15 minutes, 10 minutes of run time, 500 MB per input15 minutes per Lambda function, up to 10 GB of memory and disk
Live previewNoneRemotion Player in the browser
Where files liveDownload links for 7 daysYour S3 bucket, for as long as you keep them

Be honest

Where Remotion is the better choice

  • Layouts you code in React

    Remotion lets you write the video as React components, with your own fonts, data and animation logic. If the video is a custom design rather than a slideshow, a captioned clip or a short, Remotion is the right tool and reelsdk isn't; our closest answer is a hand-written filtergraph on /v1/ffmpeg.

  • A live preview in the browser

    The Remotion Player embeds the same composition in your app, so users see and tweak the video before anything renders. reelsdk is a backend API: you send a request and get an mp4 link back, with nothing to preview first.

  • Cheapest for a small team already on AWS

    The licence is free for individuals and companies of up to 3 people, so you only pay AWS, which Remotion puts at about $0.017 for a one-minute video. If you already run Lambda and like owning the stack, that beats our $0.02 a minute.

Migration

Moving a render from Remotion

With Remotion you write the captioned composition in React (transcription, caption pages and styling), deploy it as a site plus a Lambda function, then call renderMediaOnLambda and poll getRenderProgress. With reelsdk the composition is the request: send the video URL and a caption style to POST /v1/captions and read the mp4 from the response.

Remotion today

render-remotion.mjs
import { getRenderProgress, renderMediaOnLambda } from "@remotion/lambda/client";

const region = "us-east-1";
const functionName = process.env.REMOTION_FUNCTION_NAME;

// We deployed the Lambda function and the site with the Remotion CLI first
const { renderId, bucketName } = await renderMediaOnLambda({
  region,
  functionName,
  serveUrl: process.env.REMOTION_SERVE_URL,
  composition: "CaptionedClip",
  inputProps: { videoUrl: "https://example.com/talk.mp4" },
  codec: "h264",
  webhook: {
    url: "https://your.app/hooks/remotion",
    secret: process.env.REMOTION_WEBHOOK_SECRET,
  },
});

let progress = await getRenderProgress({ renderId, bucketName, functionName, region });
while (!progress.done && !progress.fatalErrorEncountered) {
  await new Promise((resolve) => setTimeout(resolve, 3000));
  progress = await getRenderProgress({ renderId, bucketName, functionName, region });
}

console.log(progress.outputFile);

The same render on reelsdk

render-reelsdk.mjs
const res = await fetch("https://api.reelsdk.com/v1/captions?wait=120", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.REELSDK_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    video_url: "https://example.com/talk.mp4",
    style: "karaoke",
    webhook_url: "https://your.app/hooks/reelsdk",
  }),
});

const { job } = await res.json();

// Still rendering after 120 s? Then we got 202 and a poll_url
console.log(job.status === "succeeded" ? job.outputs.video : job.poll_url);

Field by field

Remotion fields and their reelsdk equivalents
Remotionreelsdk
composition + serveUrlThe endpoint: POST /v1/captions
inputProps.videoUrlvideo_url
Whisper transcription in your codeIncluded, or pass words to skip it
createTikTokStyleCaptions() pagesstyle.max_words, 1 to 8
Your caption componentstyle: a preset, or font, position, text_color, highlight_color, outline_color, size
webhook: { url, secret }webhook_url, signed with your key's whsec_ secret
getRenderProgress()GET /v1/jobs/{id}, or ?wait= on the create call
progress.outputFilejob.outputs.video

FAQ

reelsdk vs Remotion, answered

How much does Remotion cost compared to reelsdk?

Remotion's licence is free for individuals and companies of up to 3 people; larger companies pay $0.01 per render with a $100 monthly minimum, $25 per seat a month, or from $500 a month for Enterprise. On top you pay your own compute: Remotion's example puts a one-minute video at about $0.017 to $0.021 on Lambda, before S3 storage and egress. reelsdk charges $0.02 per output minute for captions and slideshows, $0.25 for a faceless short up to 60 seconds and $0.01 per compute minute for ffmpeg, with no subscription.

How do captions work in Remotion compared to reelsdk?

In Remotion you transcribe the audio yourself, with whisper.cpp through @remotion/install-whisper-cpp or the OpenAI API through @remotion/openai-whisper, split the words into pages with createTikTokStyleCaptions() from @remotion/captions, and code the caption component. With reelsdk you send the video to POST /v1/captions: transcription is included in the $0.02 a minute, a 30-second clip takes 30 to 43 seconds, and you get the mp4 with burned-in word-by-word captions plus srt, vtt, ass and a JSON transcript.

Can Remotion make a faceless short from a topic?

Not on its own. Remotion renders the React you write, so the script, the images and the voice come from services you wire in. reelsdk POST /v1/shorts makes a complete faceless short from a topic, with the script, AI scene images, voiceover, word-by-word captions and music, in 8 visual styles and 6 languages, in about 100 seconds for $0.25 up to 60 seconds or $0.35 up to 90.

How do async renders and webhooks compare?

renderMediaOnLambda returns a renderId and bucketName; you poll getRenderProgress until done, or pass a webhook with a secret and Remotion signs the POST with an HMAC-SHA512 X-Remotion-Signature header. On reelsdk the create call waits up to 60 seconds by default and 300 with ?wait=300, or returns 202 and a poll URL with ?wait=0, and a per-job webhook_url gets an HMAC-SHA256 Reel-Signature with 3 delivery attempts.

Other comparisons

Ready to build?

Ship video from your app today

Your first $1 of renders is free, and one key covers every endpoint.

Moonlit lake with a lit cabin under the mountains