Disclosure: I work on Toolso.AI. This article was prepared with AI assistance and checked against repository code and primary documentation. The code examples are reduced teaching fixtures, not production source or evidence of a complete live-site audit.
A multilingual directory has more URL states than its language menu suggests. A tool may be published in English, translated into Chinese, and missing a usable French description. The router can still render a French path. That does not automatically make it a French document worth advertising to search engines.
Our useful starting point was a contract: a published document, its canonical, its language alternatives, and its sitemap entry should agree about which page exists. This article explains that contract in a Next.js App Router application using next-intl. It separates the implementation we inspected from an extension we have not implemented: sitemap sharding.
1.…