SEO multilingue e hreflang na prática: guia de experiência 11 línguas
O SEO multilingue falha em 70% dos casos por falta de hreflang recíproco ou arquitetura URL incoerente. Stack 2026: URLs com subpasta /lang/ (sem domínios geográficos exceto em casos específicos), hreflang nos Metadata Next.js + sitemap, x-default para a língua de fallback, traduções humanas (não automáticas) nas 50 páginas prioritárias, content adaptation por mercado. O nosso site optionweb.dev opera 11 línguas em produção há 18 meses.
O nosso site optionweb.dev funciona em 11 línguas há 18 meses — FR, NL, EN, DE, ES, IT, PT, SQ, AR, MK, TR. Esta entrada em produção fez-nos descobrir todas as armadilhas do SEO multilingue que nenhum guia teórico menciona. Eis o retorno de experiência completo e a metodologia que aplicamos agora a todos os projetos internacionais de clientes na OptionWeb.
1. Arquitetura URL: subpasta vs subdomínio vs ccTLD
Três opções de arquitetura para um site multilingue. A escolha inicial impacta tudo o resto:
| Arquitetura | Exemplo | Vantagens | Desvantagens |
|---|---|---|---|
| Subpasta | site.com/fr/, /en/ | 1 domínio = equity partilhada, simples de configurar | Sem sinal geográfico forte |
| Subdomínio | fr.site.com, en.site.com | Configuração DNS separável, equipas locais | Equity backlinks parcialmente separada |
| ccTLD | site.fr, site.be, site.de | Sinal geográfico máx, branding local | Custo domínios + infraestrutura × N países |
Recomendação 2026: subpasta /lang/ para 90% das PME e empresas. É a nossa escolha em optionweb.dev. ccTLD apenas se for a Amazon ou IKEA.
2. Hreflang: a reciprocidade não é negociável
Hreflang é a tag meta que diz ao Google que versão da página servir a que utilizador consoante língua/país. Sem hreflang correto, o Google ranqueia uma única versão (geralmente EN) e ignora as outras = perda massiva de tráfego internacional.
Regra absoluta: a reciprocidade. Se /fr/ aponta para /en/, então /en/ deve apontar de volta para /fr/. Sem reciprocidade, o Google ignora TODOS os hreflang na página.
export async function generateMetadata({ params }: Props): Promise<Metadata> {
const { lang } = params;
return {
title: t('home.title', { lng: lang }),
alternates: {
canonical: `https://optionweb.dev/${lang}`,
languages: {
'fr': 'https://optionweb.dev/fr',
'nl': 'https://optionweb.dev/nl',
'en': 'https://optionweb.dev/en',
'de': 'https://optionweb.dev/de',
'es': 'https://optionweb.dev/es',
'it': 'https://optionweb.dev/it',
'pt': 'https://optionweb.dev/pt',
'sq': 'https://optionweb.dev/sq',
'ar': 'https://optionweb.dev/ar',
'mk': 'https://optionweb.dev/mk',
'tr': 'https://optionweb.dev/tr',
'x-default': 'https://optionweb.dev/en',
},
},
};
}Formato dos códigos hreflang: ISO 639-1 (língua, ex: 'fr') OU ISO 639-1 + ISO 3166-1 (língua-país, ex: 'fr-BE'). O formato língua-país visa um mercado preciso. Usar apenas a língua chega em 90% dos casos.
3. x-default e fallback de língua
O atributo x-default indica a versão a servir se a língua do utilizador não estiver na lista hreflang. É o seu 'lifeguard' SEO: sem x-default, um utilizador japonês que chega ao seu site multilingue vê uma página aleatória conforme o algoritmo Google.
Boa prática: apontar x-default para a língua de fallback mais universal (frequentemente EN), ou para uma página de seleção de língua se tiver uma.
4. Sitemap multilingue ou sub-sitemaps
Duas abordagens consoante o volume:
- Sitemap único com hreflang xhtml:link — Para <5000 URLs total. Cada URL lista as suas variantes via xhtml:link. Pesado mas centralizado.
- Sub-sitemaps por língua + sitemap_index — Para >5000 URLs. Um sitemap.xml por língua (sitemap-fr.xml, sitemap-en.xml...), todos referenciados em sitemap_index.xml.
export const dynamic = 'force-static';
export default function sitemap(): MetadataRoute.Sitemap {
const SUPPORTED_LANGS = ['fr','nl','en','de','es','it','pt','sq','ar','mk','tr'];
const PAGES = ['', '/blog', '/services', '/contact'];
const urls: MetadataRoute.Sitemap = [];
for (const page of PAGES) {
for (const lang of SUPPORTED_LANGS) {
urls.push({
url: `https://optionweb.dev/${lang}${page}`,
lastModified: new Date(),
alternates: {
languages: Object.fromEntries(
SUPPORTED_LANGS.map(l => [l, `https://optionweb.dev/${l}${page}`])
),
},
});
}
}
return urls;
}5. Language detection: auto-redirect ou escolha do utilizador
Quando um novo visitante chega à sua raiz optionweb.dev/, tem 3 opções:
- Auto-redirect baseado em header Accept-Language → /fr/, /en/, etc. (UX arriscada mas conversão máx)
- Página de escolha de língua com cookie de memorização (UX explícita, penaliza conversão inicial)
- Fallback x-default + banner 'Switch to your language?' (compromisso recomendado)
A nossa escolha em optionweb.dev: opção 3. A raiz / redireciona para /fr/ (língua por defeito), com um banner discreto que propõe trocar se Accept-Language indicar outra língua suportada. Cookie de memorização para não voltar a propor a troca a cada visita.
6. Estratégia de tradução: humana vs automática
É a questão orçamental principal do SEO multilingue. Três opções consoante prioridade de negócio:
| Abordagem | Custo/página | Qualidade SEO | Quando usar |
|---|---|---|---|
| Tradução humana profissional | 15-50 € | Excelente | Top 20-50 páginas estratégicas |
| Machine translation pós-editado (MTPE) | 5-15 € | Boa | Páginas secundárias, blog volumoso |
| Machine translation bruto (DeepL, Google) | 0,001 € | Medíocre | Rascunhos, conteúdo pouco crucial |
Plano recomendado para PME exportadora: top 30 páginas em tradução humana profissional, blog em MTPE, resto em MT bruto marcado noindex até edição humana. Orçamento inicial: 1 500-5 000 € para o top 30 páginas × 10 línguas.
7. As 8 armadilhas do multilingue (vividas em produção)
Lista dos erros que cometemos ou vimos em projetos clientes em 18 meses:
- Hreflang não recíproco: o Google ignora tudo. Auditoria mensal obrigatória com Merkle Tool.
- Auto-redirect agressivo baseado em IP geográfico: utilizador francês de férias vê turco.
- Traduções automáticas brutas em páginas de produto: conversão a colapsar, sinais engagement fracos, ranking em queda.
- x-default a apontar para a língua principal em vez de EN: utilizadores fora das línguas suportadas caem em francês incompreensível.
- Esquecer de localizar os schemas JSON-LD: Organization em EN, Article em FR = incoerência para o Google.
- Páginas duplicadas entre línguas muito próximas (PT-PT vs PT-BR, ES-ES vs ES-MX) sem hreflang granular: canibalização.
- Sitemap não atualizado após adicionar uma nova língua: novas URLs nunca indexadas durante 6 meses.
- Cookie de língua que impede os robôs crawlers: Googlebot só vê uma língua, as outras invisíveis.
Ferramentas de validação e monitorização
- Hreflang Tags Testing Tool (Merkle) — Gratuito. Verifica reciprocidade hreflang em qualquer URL. A usar mensalmente.
- Google Search Console > International Targeting — Secção dedicada aos erros hreflang detetados pelo Google. Notificação 'No return tags' clássica.
- Screaming Frog SEO Spider — Crawl completo do site com auditoria hreflang batch. 159 £/ano versão pro. Indispensável para sites grandes.
- Sistrix — Tracking de ranking por país/língua. 100-300 €/mês. Para empresas com orçamento de reporting internacional.
- Ahrefs Site Audit — Inclui auditoria hreflang. 99 $/mês mínimo. Bom para auditoria one-shot antes do lançamento multilingue.
- Auditoria manual curl — Gratuito. Verificar os hreflang devolvidos por cada URL via 'curl -I' e inspeção HTML.
Read next
SEO técnico de um site estático Next.js: checklist completa 2026
Tudo o que configurar tecnicamente para um site Next.js em static export atingir 100/100 em SEO: metadata, JSON-LD, sitemap, hreflang, robots, Speakable, schemas avançados.
GEO em 2026: ser citado pelo ChatGPT, Perplexity e Google AI Overviews
Otimização para Mecanismos Generativos: como estruturar um site para ser citado pelo ChatGPT Search, Perplexity, AI Overviews, Gemini e Copilot. Técnicas concretas além do SEO clássico.
Hospedagem web na Bélgica em 2026: o guia completo para PMEs
Como escolher uma hospedagem web belga em 2026 — critérios de seleção, custos reais, conformidade RGPD, centros de dados locais, desempenho. Guia prático da OptionWeb.
