We maintain several small multilingual sites on static hosting. One of them — a shop in Funchal — had a quiet SEO problem that took one line per page to fix.

The setup. Netlify serves /blog/article.html at the clean URL /blog/article and redirects the .html version. The canonical tag pointed to the clean URL. But the hreflang tags still pointed to …/article.html.

Why it matters. Google expects hreflang alternates to point to the canonical, indexable URL. If they point to a redirect, the language cluster is inconsistent and Search Console starts reporting pages "with redirect" and alternate-page issues.

The fix. Make every URL that describes the page agree: canonical, hreflang (including x-default), og:url, structured data url/mainEntityOfPage, internal links and the sitemap — all without .html.

A quick check you can run:

grep -rn 'hreflang' --include=*.html . | grep '\.html"' 

Anything it prints is a page to fix.

Takeaway. On static sites, URL rules live in two places — hosting redirects and your HTML. When you change one, search for the other.

We build and maintain multilingual websites for small businesses: weblevo.com