Video asset management

How to back up a HeyGen video library so you can actually restore it

A folder of MP4 files is only a copy. A useful backup preserves the master, accessibility assets, identity metadata, and a tested path back to a working delivery.

Quick answer

Download completed master videos plus captioned or subtitle assets you rely on, export a CSV manifest with stable HeyGen video IDs, store the files in a dated read-only snapshot, copy it to a second location, and test that you can locate and play a sample without opening HeyGen.

Define the asset set before copying

Start by separating source, project, and output assets. HeyGen’s completed outputs can include a standard video URL, captioned video URL, subtitle URL, thumbnail, GIF, language, duration, and folder identifier. Your account may not expose every variant for every project, and the web app can offer additional formats for particular workflows.

AssetKeep whenReason
Standard MP4 masterAlmost alwaysClean reusable delivery file
Captioned MP4Used in published channelsPreserves the exact burned-caption version
SRT or caption fileAvailableEditable accessibility and localization asset
Audio-onlyUsed for podcasts or editsAvoids extracting it again
Thumbnail/GIFPart of campaign deliveryKeeps supporting creative together
CSV manifestAlwaysMaps local files to their source records

Draft editor state and uploaded source media are a separate backup problem. Do not assume that downloading final MP4s gives you a round-trip project archive that can recreate the original editable timeline.

Use a boring, predictable folder structure

heygen-backup/
  2026-08-27/
    manifest.csv
    README.txt
    masters/
    captioned/
    subtitles/
    thumbnails/
    exceptions.csv

A dated snapshot is easier to verify and protect than a single folder that is constantly overwritten. Put the export date, account or workspace name, method used, and known exclusions in the README. Record interrupted or unavailable assets in exceptions.csv instead of silently omitting them.

For filenames, prefer a short sanitized title plus the stable video ID: customer-onboarding_vid_abc123_master.mp4. Titles help humans browse; IDs prevent two similarly named videos from becoming indistinguishable.

Make the metadata manifest the index of the backup

At minimum, retain:

Remote download URLs can expire or change, so do not treat them as the durable part of the manifest. The video ID is the stronger reconciliation key; the local filename tells you where the retained bytes live.

Transfer in a way you can resume

  1. List all records and save the initial manifest before downloading.
  2. Filter to completed records and the variants in scope.
  3. Download into a new dated folder rather than an older snapshot.
  4. Write success or failure beside each asset as the transfer proceeds.
  5. Retry failed items with a limit and record final exceptions.
  6. Do not delete the prior snapshot until the new one is verified and replicated.

For a manual export, update the manifest as you go. For an automated export, make the transfer idempotent: if the same video ID and asset type already completed successfully, a restart should skip it instead of creating (1) duplicates.

Test integrity and retrieval

A checksum is useful, but it proves only that the copied file still matches the bytes you hashed. It does not prove that the original download was complete or playable. Combine machine and human checks:

  • Compare expected and successful counts by asset type.
  • Flag zero-byte files and unusually small outliers.
  • Generate SHA-256 checksums after the transfer if the archive is business-critical.
  • Play samples across different dates, durations, languages, and caption states.
  • Pick a manifest row and locate the corresponding file using only its fields.
  • Copy the snapshot to separate storage and open a sample from that copy.

The last step is a small restore test. A backup that has never been read from its second location is still an assumption.

Choose a schedule tied to production risk

Keep at least two copies in different failure domains—such as local storage plus object/cloud storage—and apply the access controls your client or company data requires. Review retention rules rather than saving every obsolete render indefinitely.

If you still need to transfer the library, compare the three approaches in the HeyGen bulk-download guide. For recurring high-volume production, use the Batch Mode to delivery workflow.

Sources and further reading