Created from the CSV obtained via the Lichess Open Database. All the product of either search and replace — mostly with regular expressions — or of simply opening the file in ChessBase, which then provides the proper tags and converts the movelist to standard algebraic notation.

CAVEAT: This may be a flawed DB. It works in ChessBase, but it mentions on that linked Lichess page that the puzzles actually start on the second move. I haven’t messed around with it enough, but it’s possible that every single puzzle is played from the wrong side.

3,307,409 puzzles • 896 MB PGN • 92.5 MB 7z
https://www.mediafire.com/file/hdwitwnm8fpefvu/lichess-puzzles-by-rating.7z/file

These are match games organized by month, and training games organized by test run and by day.

Tags added for player, rating, event, site, event date, date, ECO, opening, beauty and PlyCount. All 960 games removed.

Lc0MG 2022-12 — 2,560,642 games | 2.41 GB PGN | 445 MB 7z
Lc0MG 2023-01 — 1,907,622 games | 1.80 GB PGN | 346 MB 7z

T60 2022-01-01 — 513,567 games | 490 MB PGN | 99 MB 7z
T60 2022-01-02 — 609,065 games | 581 MB PGN | 117 MB 7z
T60 2022-01-03 — 610,590 games | 583 MB PGN | 117 MB 7z
T60 2022-01-04 — 559,167 games | 499 MB PGN | 102 MB 7z
T60 2022-01-05 — 536,930 games | 482 MB PGN | 100 MB 7z
T60 2022-01-06 — 508,590 games | 455 MB PGN | 95 MB 7z
T60 2022-01-07 — 509,587 games | 456 MB PGN | 95 MB 7z