A Node.js script that adds IMDb and TMDb IDs to a Letterboxd-exported CSV file.
| Original CSV exported from Letterboxd | Data added by this tool | |||||
|---|---|---|---|---|---|---|
| Position | Title | Year | URL | Title Type | TmdbId | Const |
| 1 | Apocalypse Now | 1979 | https://boxd.it/6ZS | Movie | 28 | tt0078788 |
| 2 | Spider-Man: Across the Spider-Verse | 2023 | https://boxd.it/kSz4 | Movie | 569094 | tt9362722 |
| 3 | Normal People | 2020 | https://boxd.it/q2VY | TV Series | 89905 | tt9059760 |
| 4 | Once Upon a Time in the West | 1968 | https://boxd.it/2az4 | Movie | 335 | tt0064116 |
| 5 | Perfect Blue | 1997 | https://boxd.it/1W7A | Movie | 10494 | tt0156887 |
-
Make sure you have Node.js installed. You can also use Bun.js.
-
Clone or download this repository.
-
Open a terminal inside the
letterboxd-csv-imdb-tmdb-mapperfolder and run:npm install
Download your Letterboxd data as a ZIP file from here. Extract it and place the .csv files you want to process inside the input folder.
Note: Only put
.csvfiles inside theinputfolder.
For example, if you want to processlikes/films.csv, just copyfilms.csvinto theinputfolder — do not place the entirelikesfolder.
The same applies for files under thelists/folder.
Your input/ folder should look similar to this:
input/
├── your-list-name.csv
├── your-list-name-2.csv
├── diary.csv
├── watched.csv
├── watchlist.csv
├── films.csv
├── ratings.csv
└── ...
npm run scrape "your-list-name.csv"or
npm run scrape "films.csv"so on...
✅ Done!
Since diary.csv doesn't contain direct film links, process watched.csv first:
npm run scrape "watched.csv"Then process your diary:
npm run scrape "diary.csv" -- diary✅ Done!
After processing, a new CSV file with IMDb and TMDb IDs will be created in the output folder.
npm run scrape "ratings.csv" -- imdb b10-
imdb: Outputs the CSV in IMDb format.
(Useful when importing into IMDb using tools like IMDb List Importer, IMDb Ratings Importer, or any tools/website that supports IMDb format.) -
b10: Converts ratings from a 5-point scale to a 10-point scale.
This script supports CSV files exported from the Letterboxd export page.
We follow Letterboxd’s naming scheme, so if you have a CSV from third-party tools like Lizard Letterboxd List Downloader, make sure it follows this format:
Name,Year,Letterboxd URI
Kill Bill: Vol. 1,2003,https://boxd.it/70wThe script requires only three fields:
NameYearLetterboxd URI(direct link to the film page)
reviews.csvis currently not supported due to limitations in the CSV parser.