I recently launched OYNAVA, a free HTML5 game portal with 6,000+ games. Here's the architecture, the cost traps I hit in production, and how I fixed them. If you're building a content-heavy site, a few of these will probably bite you too.

The stack

Next.js 14 (App Router) + TypeScript + Tailwind

Game feeds: GameMonetize, GamePix, GameDistribution (merged + normalized into one catalog)

Redis for shared likes/plays counters