I built a 150+ tool website with Next.js 15 on Cloudflare Pages (utlkit.com).

Half the traffic was from China, half from elsewhere. Time to add i18n.

I thought it would take a day. It took four, and I rewrote the approach three times.

Why is i18n Harder Than You Think?

A 100+ page tool site needs more than translated text. You need to handle: