2026 · Live at watchlistmatch.com

Watchlist Match

Enter two or more Letterboxd usernames and it finds the films on everyone's watchlist, sorted by rating. Then a slot machine picks one, so nobody has to.

Stack
JavaScript, Vercel serverless functions
Data
Letterboxd pages, fetched and cached on request
Also
A randomizer for a single watchlist

Open watchlistmatch.com Source on GitHub 

Comparing two real watchlistswatchlistmatch.com

No API, so it reads the pages

Letterboxd has no public API, and CORS stops a browser from reading its pages directly. So the site calls its own serverless functions, which fetch each watchlist eight pages at a time and parse out the films.

Ratings for older films barely move. The CDN caches them for 90 days, or a week for films released this year. Watchlists are cached for an hour. A group that compares twice in one evening costs Letterboxd almost nothing the second time.

Keeping a free tool up

A free site that scrapes on request is easy to abuse. Before the page can call the API, the browser solves a small proof-of-work puzzle and passes a Cloudflare Turnstile check. In return it gets a 15-minute token signed for its IP. Tokens have quotas, and the API rate-limits on top of that.

One person, one watchlist

With a single username, the same reel picks something from your own watchlist. That version lives at watchlistmatch.com/randomizer.