DaVinci Resolve has no one-click "export N different versions of one timeline." The render queue holds a live reference to your timeline, so if you queue several versions of the same timeline and batch render, Resolve renders the current state for every job. The working method is one separate timeline per version. Recutly automates building and naming that matrix and outputs Resolve XMLs.
The short answer
If you need a 30-second cut, a 15-second cut, a 9:16 version, and three endcard variants of the same edit, you can't just add them to the Deliver page render queue and hit Render All. Resolve will render whatever the timeline looks like right now for all of them. The reliable approach is to duplicate the timeline once per variation, change each copy, queue each as its own job, and render. That works, it's just slow and error-prone by hand. Recutly does the multiplication, the naming, and the endcard pairing for you, then hands back Resolve timeline files (FCP7 XML) you re-import and render.
Why batch export breaks in Resolve
This trips up nearly everyone the first time. You queue three render jobs from one timeline, expecting three different outputs, and you get three identical files.
The reason is how Resolve's render queue references the timeline. When you add a job, Resolve does not snapshot a temp copy of the timeline state at queue time the way Final Cut Pro does. Each job points at the live timeline. So at Render All, every queued job reads the current version of that timeline.
Larry Jordan documented this plainly: "Though you exported three movies, they all have the content of the current version of the timeline... Resolve always looks to the current version." Blackmagic's own forum and most batch-render tutorials confirm the same behavior.
Practical translation: changing the in/out range, swapping an endcard, or trimming the tail on one timeline and then queuing a second job doesn't create a second variant. It just overwrites your intent. The render queue isn't a versioning system. It's a pointer.
The manual method that actually works: one timeline per version
The fix is to give each version its own timeline so there's nothing live to overwrite.
- Lock your edit. Color, audio, titles, the works. Every version branches from this master, so finish it first.
- Duplicate the timeline per variation. Right-click the timeline in the Media Pool, Duplicate Timeline. Make one copy for each cut length, aspect ratio, and endcard combination you need to ship.
- Watch the compound-clip trap. A duplicated timeline references the same compound/nested clip. Edit that compound in one timeline and you can change it in the others. To fully decouple, copy all the clips into a fresh blank timeline instead of duplicating.
- Make each copy its version. On the 15-second copy, trim to 15 seconds. On the 9:16 copy, change Timeline Resolution to 1080x1920 and reposition shots with Transform or an Adjustment Clip. To swap an endcard, delete the tail clip, drag the alternate in, and fix the duration.
- Name on the Deliver page. In File settings, set a Custom Name per job. Custom Name supports %metadata variables and you can save User Presets so naming stays consistent across versions.
- Add each timeline as its own render job. Open a timeline, set the render range and format, Add to Render Queue. Repeat for every timeline. Multiple timelines (and projects) can batch-queue in one session.
- Render All. Because each job now points at a different timeline, Resolve renders each correctly.
This is the legitimate native path. It scales linearly, though. Three cuts × two ratios × two endcards is twelve timelines to build, rename, and check by hand, and one mis-dragged endcard ships the wrong outro on the wrong cut.
A note on reframing: vertical and square versions need per-shot repositioning, not a stretch. Methods are changing Timeline Resolution plus Transform, a non-destructive Adjustment Clip, or Smart Reframe with subject tracking, which is DaVinci Resolve Studio (paid) only. Free Resolve reframes manually.
How Recutly does the matrix in one pass
Recutly takes the multiplication off your hands. You export your finished edit as an FCP7 XML timeline and upload the timeline, not the footage. Your footage never leaves your machine. Recutly crosses your endings × cut durations × aspect ratios into every delivery version, names each file to your convention, and pairs the correct ending with the correct cut so you can't ship the wrong endcard on the wrong version.
The output is DaVinci Resolve timeline files (FCP7 XML), not rendered video. You re-import the XMLs into Resolve, media relinks by filename, and you render with your own settings. It runs in free DaVinci Resolve.
Be honest about the roundtrip: the XML carries your cut points, clip references, and timing, and references your endcard media. It does not rebuild effects, transitions, speed ramps, Fusion titles, or graphics, which FCP7 XML strips on import. The XML's frame rate must match your project timeline frame rate exactly or import fails, and you may need to relink media (Conform Options / Relink Selected Clips) if paths don't match. So Recutly handles the structural matrix; your grade, titles, and effects stay native in Resolve.
| Step or concern | Manual (separate timelines) | Recutly |
|---|---|---|
| Build each version | Duplicate timeline by hand, per variant | Cross endings × durations × ratios in one pass |
| Naming | Set Custom Name per job manually | Auto-named to your convention |
| Wrong-endcard risk | High (manual drag per timeline) | Foolproofed pairing |
| Output | Rendered files | Resolve XML timelines to re-import and render |
| Effects and grade | Native, intact | Stay native in Resolve after re-import |
| Cost | Free in Resolve | Free for ≤5 versions, Pro/Studio above |
Pricing is Free for up to 5 versions per export, Pro $19/mo for unlimited, and Studio $39/mo. See recutly.com/studio for the Studio tier and pricing for the full breakdown.
One more thing power users ask: can't I just script this? Resolve's Python API can duplicate timelines and drive the render queue, but it cannot edit timelines (no cut, split, or razor). So even scripting can't perform the endcard swap itself. That structural editing is exactly what Recutly handles before you ever touch the render queue.
FAQ
Why does DaVinci Resolve render the same version for every batch job?
Because the render queue holds a live reference to the timeline, not a snapshot. Unlike Final Cut Pro, Resolve doesn't freeze a temp copy when you add a job. At Render All, every queued job reads the current timeline state. As Larry Jordan put it, "Resolve always looks to the current version." Use a separate timeline per version instead.
How do I export multiple versions of one timeline in DaVinci Resolve?
Lock your edit, then duplicate the timeline once per variation (cut length, aspect ratio, endcard). Change each copy, set a Custom Name on the Deliver page, add each timeline as its own render job, and Render All. Each job points at a different timeline, so each renders correctly. Recutly automates building and naming that matrix.
Can I batch export different versions without making separate timelines?
No. Queuing multiple jobs from one timeline renders the current state for all of them. Separate timelines are required so there's nothing live to overwrite. Recutly builds that matrix for you and outputs named Resolve XMLs to re-import.
Does Recutly render my videos for me?
No. Recutly outputs DaVinci Resolve timeline files (FCP7 XML), not rendered video. You upload your finished edit's timeline (not footage), Recutly crosses endings × durations × ratios and names each file, then you re-import the XMLs to Resolve, relink, and render with your own settings. The frame rate must match your project.
Does Recutly do AI auto-reframe for vertical?
No. Recutly sets up the aspect ratio and canvas; creative per-shot reframing stays in Resolve. For automatic subject tracking, use Smart Reframe, which is DaVinci Resolve Studio (paid) only. In free Resolve you reframe manually with Transform or an Adjustment Clip.
