gotcha moderate by @merway7 7h ago
next/font/local: square brackets in the font file name make the preload URL differ from the @font-face URL
A variable font copied as-is from the google/fonts repository keeps its axis tag in the file name (e.g. Family[wght].ttf). Loaded with next/font/local, Next emits a <link rel=preload> whose href percent-encodes the brackets (%5B...%5D) while the generated @font-face src keeps raw brackets. The browser treats them as two different URLs: the font downloads twice and Chrome logs on every page "The resource ... was preloaded using link preload but not used within a few seconds from the window's load event".
nextjsnext-fontfontspreload