Cómo traducir una web hecha con Lovable (con SEO real)
Lovable no tiene multiidioma. Así pones tu web de Lovable en varios idiomas con URL propia por idioma, hreflang y sitemap, sin reescribir el proyecto.
Has montado la web con Lovable en un par de tardes, está publicada en tu dominio y funciona. Ahora quieres venderla fuera y te das cuenta de que no hay ningún botón de «añadir idioma»: en la documentación de Lovable no existe el multiidioma, y lo único que se te ocurre es pedirle al chat que duplique toda la web en inglés.
Hay dos formas de traducir una web de Lovable: meter internacionalización en el propio código (una librería de i18n y una ruta por idioma), o poner por encima una capa de traducción que sirva cada idioma en su propia URL sin tocar el proyecto. La primera te da control total y te cuesta trabajo de desarrollo cada vez que cambies un texto; la segunda se activa con una línea en el <head> y genera sola las URLs por idioma, el hreflang y el sitemap. Con Lantis esa segunda vía cuesta desde $3,50 al mes por idioma y funciona con el proyecto tal y como está.
Resumen rápido
- Lovable no tiene función multiidioma. Su documentación cubre metadatos, sitemap y SEO, pero no versiones por idioma ni hreflang: el multiidioma lo pones tú.
- Pedirle a Lovable que duplique la web en otro idioma es la peor opción: doblas las pantallas y los textos a mantener, y cada cambio hay que repetirlo en cada idioma.
- Una librería de i18n es la vía correcta si tu web es una app con mucha interfaz propia; para una landing o una web de contenido es mucho trabajo para el resultado.
- Lo que decide tu SEO no es el idioma, es la URL: sin
/fr/ofr.tudominio.com, Google indexa una sola versión por mucho que el visitante vea el texto traducido. - Lovable sirve copias pre-renderizadas a los buscadores verificados, así que comprueba siempre en Search Console qué HTML ve Google de tus páginas traducidas.
- Con Lantis pegas una línea en el
<head>de tu plantilla base, conectas el dominio y cada idioma pasa a tener su URL, su hreflang y su sitemap, en más de 60 idiomas.
Qué trae Lovable de serie (y qué no)
Lovable trae SEO básico, pero no internacionalización. En su FAQ oficial explica que las apps nuevas se construyen con TanStack Start, «que renderiza las páginas en el servidor», mientras que las antiguas usan React + Vite y se renderizan en el navegador; y que para los buscadores sirve «copias pre-renderizadas de las páginas publicadas a los motores de búsqueda verificados». También tiene una pestaña de SEO que revisa metadatos, indexación, datos estructurados, Open Graph, sitemap y robots.txt.
Lo que no aparece en ninguna parte de su documentación es el multiidioma: ni una ruta por idioma, ni hreflang, ni sitemap por idioma. El selector de idioma de la cuenta cambia la interfaz de Lovable, no tu web.
Eso importa por una razón muy concreta: la traducción es la parte fácil, y lo que de verdad te trae visitas es que exista una URL distinta e indexable por idioma. Está desarrollado en ¿puedo tener una URL personalizada por idioma en Google?.
Las tres opciones, cara a cara
| Duplicar la web con el chat | Librería de i18n en el código | Capa de traducción (Lantis) | |
|---|---|---|---|
| Esfuerzo inicial | Medio, y crece con cada página | Alto: rutas, ficheros de textos, build | Una línea en el <head> |
| Mantenimiento al cambiar un texto | Repetirlo en cada idioma | Editar el fichero de cada idioma | Automático |
| URL propia por idioma | Solo si montas tú las rutas | Sí, si la configuras | Sí (/fr/, /de/) |
| hreflang, canonical y sitemap por idioma | A mano | A mano | Automáticos |
| Textos del contenido nuevo | Sin traducir hasta que lo pidas | Sin traducir hasta que lo añadas | Pre-traducción nocturna |
| Coste | Tus créditos y tu tiempo | Tu tiempo de desarrollo | Desde $3,50/mes por idioma |
Cuándo elegir la librería de i18n en vez de Lantis: si lo que has hecho con Lovable es una aplicación con sesión, paneles y mucha interfaz generada en el cliente, y quieres los textos versionados en tu repositorio junto al código, i18n es la opción correcta. También si necesitas que cada idioma tenga contenido distinto, no traducido. Para una web de marketing, una landing, un directorio o un producto que se enseña, montar i18n es gastar semanas en algo que no cambia tu posicionamiento.
Paso a paso: tu Lovable en varios idiomas
- Publica el proyecto y conecta tu dominio. Los dominios propios están en los planes de pago de Lovable y se configuran desde Project → Settings → Domains, con un registro A y un TXT de verificación
_lovable(o un CNAME al.lovable.appdel proyecto si pasas por un CDN), según su documentación de dominios. Trabajar sobre el dominio propio y no sobre la URL.lovable.appes lo que luego permite tener URLs por idioma en tu marca. - Limpia los textos originales. Lo que esté ambiguo en español saldrá ambiguo en seis idiomas. Es el momento de revisar títulos, botones y mensajes de error que te generó el chat y que nunca releíste.
- Da de alta la web en Lantis y elige los idiomas. Si no sabes por dónde empezar, dos bastan para medir: tienes el criterio en qué idiomas añadir a tu web.
- Pega el código en el
<head>de tu plantilla base. En un proyecto de Lovable es elindex.html(o el layout raíz si tu app renderiza en servidor). Puedes pedirle al propio chat de Lovable que lo inserte en el<head>delindex.html, nunca dentro de un componente: así se carga una vez y vale para todas las rutas. Lo mismo aplica a Bubble y Carrd, explicado en traducir WooCommerce, Bubble, Lovable y Carrd. - Conecta el dominio en el panel de Lantis para pasar de «el visitante lo ve traducido» a «Google lo indexa». Eliges modo subcarpeta (
tudominio.com/fr/, la que mejor posiciona) o subdominio por idioma (fr.tudominio.com, la de menos riesgo), y el panel te da el registro DNS exacto. En modo subcarpeta, el registro de tu dominio pasa a apuntar a Lantis y Lantis lee el contenido original del.lovable.appde tu proyecto, así que comprueba antes que esa dirección sigue abriendo tu web. - Verifica tres cosas en el navegador: que
tudominio.com/fr/sale en francés, que en el código fuente aparecen las etiquetas hreflang de cada idioma y que el menú, los formularios y los pies de página también están traducidos. - Envía el sitemap de cada idioma a Search Console y usa la Inspección de URLs sobre una página traducida. Es la forma de ver el HTML renderizado que recibe Google, en lugar de fiarte de un auditor de terceros. Qué mirar después, informe por informe, está en Search Console para webs multilingües.
Hecho el paso 4, no vuelves a tocar las traducciones: cuando le pidas a Lovable un cambio y vuelvas a publicar, el contenido nuevo se traduce solo y queda marcado «sin revisar» en el panel.
El detalle técnico que sí deberías mirar: dónde se renderiza tu web
Si tu proyecto es de los antiguos de React + Vite, el texto de tu web no viaja en el HTML: lo pinta el navegador. Eso no es un problema que cree la traducción, es un problema que ya tienes en tu idioma original, y por eso Lovable sirve copias pre-renderizadas a los buscadores verificados.
Con una capa de traducción, la parte que llega ya traducida en el HTML son los metadatos y el contenido que responda tu origen; lo que la app pinta después en el navegador se traduce en el navegador. Si tu app es de las nuevas, renderizadas en servidor, el texto viaja en el HTML y se traduce antes de salir. Cómo funciona esa capa por dentro está en qué es un proxy de traducción.
La conclusión práctica es la misma en los dos casos: no des por buena la indexación hasta verla en la Inspección de URLs de Search Console, página a página y en un par de idiomas.
Errores frecuentes
- Pedirle al chat «traduce la web al inglés». Te cambia los textos del proyecto y pierdes el original, o te crea pantallas duplicadas que ya no se parecen entre sí a la tercera iteración.
- Dejar el proyecto en la URL
.lovable.app. Sin dominio propio no hay estructura de URLs que puedas trabajar, y el SEO que ganes no es tuyo. - Pegar el script dentro de un componente React. Se reinyecta en cada navegación y acaba cargándose varias veces. Va en el
<head>delindex.html. - Traducir y quedarse en el visor. Si todas las versiones comparten la misma dirección, Google indexa un idioma. Los widgets de navegador fallan exactamente por eso: por qué el widget de Google Translate no sirve.
- Olvidar los textos de interfaz. Mensajes de error, estados vacíos, validaciones de formulario y correos. En una web hecha con IA suelen estar en inglés aunque la web sea en español: decide en qué idioma está el original antes de traducir.
En una web de Lovable la traducción no es el trabajo difícil: el trabajo difícil es que cada idioma tenga una URL que Google pueda indexar por separado.
Preguntas frecuentes
¿Tiene Lovable una opción nativa para webs multilingües?
No. La documentación de Lovable cubre metadatos, sitemap, robots.txt y herramientas de SEO, pero no incluye versiones por idioma, hreflang ni sitemap por idioma. Para tener una web de Lovable en varios idiomas tienes que añadir internacionalización en el código o poner por encima una capa de traducción que genere las URLs y las etiquetas por ti.
¿Puedo traducir una app de Lovable y no solo una landing?
Sí, con un matiz. Una capa de traducción traduce el contenido que se muestra en pantalla, incluidas las vistas que pinta la app, así que la interfaz queda en el idioma del visitante. Lo que no se traduce son los datos privados que introduce cada usuario. Si tu producto es una aplicación con mucha interfaz y quieres los textos versionados en el repositorio, una librería de i18n encaja mejor.
¿Perderé el SEO que ya tiene mi web en español?
No, si lo haces en el orden correcto. El idioma original sigue en las mismas URLs, con sus mismos títulos: los idiomas nuevos se añaden en rutas propias (/fr/, /de/) con canonical propio y hreflang recíproco, que es justo lo que evita el duplicado. Lo que sí conviene es no cambiar las URLs del original a la vez; si tienes que hacerlo, monta las redirecciones 301 primero.
¿Cuánto cuesta tener mi web de Lovable en tres idiomas?
Con Lantis, tres idiomas son $3 al mes por idioma —$9 al mes en total—, con 500.000 palabras incluidas por cada idioma y sin cobrar por visitas. Hay un plan gratis de 100 traducciones sin tarjeta para probarlo antes, y puedes calcular tu caso en la calculadora de traducción web.
¿Va más lenta la web al añadir idiomas?
No debería. En Lantis más del 70 % de las páginas se sirven desde caché edge, con menos de 50 ms de latencia en acierto de caché; la primera visita a una página que todavía no estaba traducida tarda unos 800 ms y a partir de ahí queda guardada. La versión original se sirve exactamente igual que antes.
Conclusión
Lovable es rapidísimo para tener una web publicada y bastante razonable en SEO básico, pero el multiidioma no está en la caja: o lo programas, o lo pones por encima. Programarlo tiene sentido cuando lo que has construido es una aplicación de verdad; para una web que quieres que te traiga clientes de otros países, la capa de traducción te ahorra semanas y te deja el SEO internacional resuelto desde el primer día.
Lantis hace eso con una línea de código en el <head> de tu index.html, sin plugins y sin reescribir el proyecto: más de 60 idiomas con su URL propia, HTML traducido desde el servidor, hreflang, canonical, sitemap por idioma y title, meta description y Open Graph traducidos, además de glosario de marca, editor visual para corregir cualquier frase haciendo clic y pre-traducción nocturna del contenido nuevo. Cuesta $3,50 al mes con un idioma, $3 por idioma de 2 a 9 y $2,50 por idioma desde 10, con 500.000 palabras incluidas por idioma. Empieza gratis y ten tu web de Lovable en francés esta misma tarde.
Pon tu web en varios idiomas hoy.
Una línea de código. SEO real por idioma. Traducción con IA. Sin tarjeta para empezar.