ZapKit

Export YouTube Playlist to YAML

Paste a playlist link to download its videos as a YAML file, ready to drop into a static site's data folder or read from a script.

What is a playlist to YAML exporter?

A playlist to YAML exporter saves a YouTube playlist as a YAML file, the readable data format used by static site generators like Jekyll and Hugo, configuration files and many scripts.

It holds the same data as the JSON export, with the same keys and types: a playlist mapping and a list of videos with the fields you choose. Every string is double-quoted and escaped, which avoids YAML's classic traps, where a title like "No" or one starting with a colon would otherwise be read as a boolean or break the file. Drop it into your site's data folder and loop over the videos in a template.

How to export a YouTube playlist to YAML

  1. 1.Paste the playlist link

    Paste the link of the playlist your site or script will read, and press Export.

  2. 2.YAML is already ticked

    Pick the keys each video holds: title, video ID, durations, views, likes, description, tags and more.

  3. 3.Download

    Press Download to get a .yaml file, or tick more formats to get them together in a ZIP.

Example: a tricky title stays a string

A video titled No comes out safely quoted in each entry.

- title
"No"
videoId
"VIDEO_ID"
seconds
245
tags:
one "music" and one "live" item, each on its own - line

Unquoted, YAML 1.1 parsers would read No as false. Quoted, it stays the title.

How the YAML is structured

The file has a playlist mapping with the playlist's id, title, channel, url, videoCount and exportedAt, and a videos list with one mapping per video in playlist order, using the same camelCase keys as the JSON export.

Every string is double-quoted and escaped, so titles starting with a colon, a dash or words like yes and no are never misread. Numbers stay numbers, tags are lists and missing values are null.

Frequently asked questions

How do I use it with Jekyll or Hugo?

Save the file in _data in Jekyll or data in Hugo, then loop over site.data.<name>.videos in Jekyll or .Site.Data.<name>.videos in Hugo, using the file name without .yaml.

Is the YAML the same as the JSON export?

It holds the same data with the same keys and types; only the syntax differs. Pick whichever your tools read.

Which YAML version does it follow?

It's valid YAML 1.1 and 1.2, so PyYAML, ruamel.yaml, js-yaml, Ruby's Psych and Go's yaml packages all read it.

Are multi-line descriptions safe in YAML?

Yes. Each description is written as one double-quoted string with its line breaks escaped, so even long, multi-paragraph text stays valid.

Export a YouTube playlist to other formats

More YouTube tools