TL;DR: Se vuoi far indicizzare il tuo sito Lovable su Google, non basta pubblicarlo e sperare nel meglio. I problemi più comuni sono quasi sempre gli stessi: sitemap mancanti, contenuti renderizzati solo lato client, risorse bloccate in robots.txt o nessuna verifica in Search Console. Qui ti mostro come sistemare tutto, passo dopo passo.
Il mese scorso ho passato un weekend ad aiutare un amico a lanciare il suo progetto su Lovable. L'app era davvero fatta bene — UI pulita, transizioni fluide, quel tipo di prodotto che ti fa pensare “ok, sembra il prodotto di una vera azienda software”. Lunedì mattina mi scrive: "Perché non riesco a trovarlo su Google?"
Quella conversazione si è trasformata in una call con condivisione schermo di due ore in cui abbiamo risolto cinque problemi distinti di indicizzazione. Da allora ho aiutato altri tre utenti Lovable a seguire lo stesso processo, e i problemi sono quasi sempre identici. Quindi ho scritto questa guida per risparmiarti una call del genere (e per risparmiare tempo anche a me in futuro).
Ma prima, una rapida precisazione: indicizzazione e ranking non sono la stessa cosa. E la confusione tra le due è il motivo per cui Lovable può sembrare “lento”.
1. Indicizzazione significa che Google ha scoperto e memorizzato la tua pagina.
2. Ranking significa che Google decide che la tua pagina merita di comparire per una query.
I siti Lovable sono app React con rendering lato client (CSR) (React + Vite). Google può indicizzare siti CSR, ma spesso succede in due fasi: prima esegue la scansione dell'HTML iniziale, poi torna più tardi per renderizzare gli script JavaScript e acquisire il contenuto completo. Il risultato: l'indicizzazione può richiedere giorni invece che ore per le nuove pagine, anche quando è tutto “a posto”. Il sito del mio amico ci ha messo quattro giorni — a lui sono sembrati un'eternità, ma in realtà era normale per un nuovo dominio CSR senza backlink.
La buona notizia: i siti Lovable possono posizionarsi come altri moderni siti JavaScript, a patto che il contenuto venga caricato correttamente e che le risorse chiave non siano bloccate.
Puoi pubblicare un progetto Lovable su:


un URL predefinito [your-project].lovable.app, oppure
un dominio personalizzato (piani a pagamento).
Per la SEO, Lovable consiglia esplicitamente di usare un dominio personalizzato perché aiuta a consolidare l'autorità e a mantenere nel tempo un unico URL canonico. Ed è esattamente quello che consiglierei anch'io — ho visto sottodomini su piattaforme condivise faticare a costruire qualsiasi autorità di dominio, anche dopo mesi di pubblicazione costante.
Se puoi, usa un dominio personalizzato e impostalo come dominio primario (così gli altri domini reindirizzano verso quello). Lovable supporta una configurazione con dominio primario in cui gli altri domini collegati fanno redirect verso il principale.
Se non sei ancora pronto per un dominio personalizzato, non preoccuparti — il tuo sito lovable.app può comunque essere indicizzato. L'importante è usare sempre lo stesso URL e non continuare a cambiare sottodominio. (Il primo errore del mio amico: aveva cambiato sottodominio due volte prima ancora di controllare Search Console. Ogni volta, Google lo trattava come un sito completamente nuovo.)
Nella finestra di pubblicazione di Lovable, assicurati che il sito sia accessibile pubblicamente. Nei piani Business/Enterprise puoi limitare l'accesso; se pubblichi in modalità "Workspace-only/private", Googlebot non potrà eseguire la scansione. Sembra ovvio, ma una delle tre persone che ho aiutato aveva esattamente questo problema — aveva attivato quella modalità per una demo e poi si era dimenticata di rimettere il sito pubblico.
Lovable ti permette di modificare i metadati del sito durante il flusso di pubblicazione:
Icona & titolo
Descrizione (meta description usata nei risultati di ricerca / anteprime)
Immagine di condivisione (immagine OG)
Questo non “forzerà” l'indicizzazione, ma evita il prossimo problema che incontrerai: pagine indicizzate con titoli/snippet pessimi. Ho visto un sito comparire nei risultati con "Vite + React + TS" come titolo. Non proprio il massimo per il CTR.
Le modifiche in Lovable non vengono pubblicate automaticamente — devi pubblicare e poi fare clic su Update per pubblicarle. Se te ne dimentichi, Google continuerà a vedere la vecchia versione.
sitemap.xml e verifica che si carichiLe sitemap sono particolarmente importanti per le app CSR perché i crawler non scoprono sempre facilmente tutti i percorsi di una SPA. Lovable lo segnala chiaramente e dice che l'assistente può generare un file sitemap.xml su richiesta.
Create XML sitemap at /sitemap.xml listing all public routes. Include lastmod dates and priorities: homepage 1.0, main pages 0.8, blog posts 0.6.
Lovable propone esattamente questo approccio con relativa checklist di verifica. Io aggiungerei una cosa che non menzionano: controlla le date lastmod dopo la generazione. Mi è già capitato di vederle impostate tutte sulla data di generazione per ogni pagina, e così perdono gran parte della loro utilità.
Dopo la pubblicazione:
Visita: https://yourdomain.com/sitemap.xml
Conferma che restituisca XML, non un errore o una pagina HTML
Controlla che i percorsi importanti siano inclusi (home, pagine principali, articoli del blog, pagine prodotto, ecc.)
Lovable segnala che devi rigenerare e inviare di nuovo la sitemap quando aggiungi/rimuovi pagine (non è automatico). La prima volta ci sono cascato anch'io — avevo aggiunto una sezione blog e dato per scontato che la sitemap l'avrebbe rilevata. Non l'ha fatto.
robots.txt senza bloccare JS, CSS o assetUna causa molto comune del problema “Lovable non si indicizza” è bloccare accidentalmente proprio i file di cui Google ha bisogno per renderizzare il sito. È il problema numero uno che vedo nei progetti Lovable, ed è anche il più frustrante perché nel tuo browser il sito sembra perfetto — il problema emerge solo quando un bot prova a visualizzarlo.
Lovable consiglia di creare un file robots.txt e avverte esplicitamente: non bloccare mai CSS, JavaScript o la cartella /assets/, perché Google ne ha bisogno per renderizzare le pagine CSR.
Create robots.txt at /public/robots.txt that allows all crawlers and references Sitemap: https://yourdomain.com/sitemap.xml
(Adatta l'URL della sitemap.)
Dopo la pubblicazione, il file robots dovrebbe essere accessibile qui:
https://yourdomain.com/robots.txt
Se il tuo sito è accessibile da più URL (per esempio sia su lovable.app sia sul tuo dominio personalizzato), Google può trattarlo come contenuto duplicato a meno che tu non specifichi l'URL preferito.
Lovable consiglia i canonical tag e fornisce un prompt con relativo metodo di verifica.
Add canonical tags to all pages pointing to their own URLs. Use https://yourdomain.com format with no trailing slash.
Lovable suggerisce di controllare i canonical dalla console:
console.log('Canonical:', document.querySelector('link[rel="canonical"]')?.href);
E verifica:
Esattamente uno per pagina
Che corrisponda al tuo dominio preferito (HTTPS, preferenza sul trailing slash, preferenza www)
Google Search Console è il tuo pannello di controllo per l'indicizzazione — e sinceramente è dove passo la maggior parte del tempo quando faccio debug di qualsiasi sito Lovable. Il mio amico non l'aveva configurata per niente quando mi ha scritto. Non potevamo nemmeno vedere cosa stesse facendo Google con le sue pagine. Andavamo completamente alla cieca. Nel momento in cui abbiamo collegato GSC, abbiamo visto che Google aveva provato a scansionare tre delle sue pagine e aveva fallito su tutte e tre a causa di risorse bloccate. Senza GSC, avrebbe continuato a tirare a indovinare per settimane.
Ti aiuta a:
inviare sitemap e URL,
vedere la copertura dell'indice,
e usare URL Inspection per capire cosa vede Google.
In Google Search Console, aggiungi la proprietà relativa all'URL che vuoi far indicizzare.
Google richiede la verifica della proprietà prima di permetterti di gestire i segnali di indicizzazione.
La guida SEO di Lovable consiglia:
DNS TXT (consigliato)
Meta tag
Upload di file HTML (mettilo nella root del sito, di solito /public)
Per esperienza, DNS TXT vale il setup extra perché copre automaticamente tutti i sottodomini e i protocolli. Il metodo con meta tag funziona, ma dovrai rifarlo se un giorno ricostruisci il progetto da zero.
Lovable indica esplicitamente DNS TXT come metodo consigliato.
Google segnala anche che la verifica DNS è l'unico modo per verificare una “Domain property” (copre tutti i sottodomini e i protocolli).
<head>)Lovable fornisce un formato di prompt pronto all'uso:
<meta name='google-site-verification' content='YOUR_CODE' />
Esempio di prompt (da incollare in Lovable):
Add GSC verification meta tag: <meta name='google-site-verification' content='YOUR_CODE' /> to the <head>
Google potrebbe fornirti un file di verifica da caricare nella root del sito. Lovable suggerisce di metterlo in /public così sarà disponibile su https://yourdomain.com/[file-name].
Una volta verificata la proprietà:
Vai su Sitemaps
Inserisci: https://yourdomain.com/sitemap.xml
Clicca Submit
Lovable segnala che Google può impiegare 24–48 hours per elaborare e riportare lo stato dell'invio della sitemap. Nella pratica, io ho visto di tutto: da 6 ore a 3 giorni, a seconda dell'età del dominio.
È il modo più veloce per rispondere a questa domanda:
"Google vede davvero il mio contenuto... o solo un guscio CSR vuoto?"
Questo passaggio è quello da cui parto sempre quando qualcuno mi chiede aiuto con l'indicizzazione. Dimentica la sitemap, dimentica il robots.txt — vai dritto su URL Inspection e guarda lo screenshot. Se Google vede una pagina bianca vuota, il resto non conta nulla finché non sistemi quello.
Lovable consiglia di usare URL Inspection in particolare per:
confermare che Google veda contenuto reale (non una pagina vuota),
diagnosticare problemi di rendering CSR,
e controllare se risorse JS/CSS sono bloccate.
Per ogni pagina che ti interessa:
Incolla l'URL nella barra URL Inspection di Search Console
Clicca Test Live URL
Apri "View Tested Page" e controlla:
lo screenshot di ciò che vede Googlebot
l'HTML renderizzato
gli errori in console
le risorse bloccate
Clicca Request Indexing per pagine nuove/aggiornate (c'è un limite di richieste)
La documentazione ufficiale di Google sottolinea che:
Devi essere un proprietario verificato/utente con accesso completo per richiedere l'indicizzazione
Esiste una quota
Richiedere ripetutamente la stessa URL non farà eseguire la scansione più velocemente
L'ho imparato nel modo più stupido ai miei inizi — stavo lì a cliccare "Request Indexing" sulla stessa URL cinque volte di fila, convinto che ogni clic fosse un'altra spintarella. Non funziona così. Una richiesta basta.
Ecco cosa è successo con il sito del mio amico dopo aver completato i passaggi 1-7 durante quella call con condivisione schermo. Il primo giorno, la sua Search Console mostrava zero pagine indicizzate e lo screenshot di URL Inspection era un rettangolo bianco con un piccolo spinner di caricamento — Google aveva scansionato il guscio HTML ma non era mai tornato a renderizzare JavaScript. Il suo robots.txt stava bloccando /assets/, che conteneva tutti i file CSS e JS necessari all'app.
Abbiamo corretto il robots.txt, rigenerato la sitemap (che stava elencando solo l'URL root), aggiunto i canonical tag e cliccato "Request Indexing" sulle sue cinque pagine più importanti. Poi abbiamo aspettato.
Giorno due: ancora niente. Mi ha mandato uno screenshot di un report Coverage vuoto. Gli ho detto di smettere di controllare.
Giorno quattro: la homepage è comparsa nell'indice. URL Inspection mostrava un rendering completo — navigazione, hero section, screenshot del prodotto, tutto. La differenza tra lo screenshot del primo giorno (bianco vuoto) e quello del quarto giorno (pagina completamente renderizzata) era enorme. Stesso sito, stesso contenuto. L'unica differenza era che ora Google riusciva davvero a vederlo.
Entro il giorno dieci, tutte e cinque le pagine prioritarie erano indicizzate. La sua pagina /pricing ha iniziato a comparire per "[product name] pricing" nel giro di due settimane. Niente di magico — solo le basi fatte bene. L'intera correzione ci ha richiesto circa 90 minuti di lavoro reale, distribuiti in quella call di due ore (gli altri 30 minuti li ha passati a sfogarsi sul perché questa roba non fosse automatica).
Ti racconto questa timeline perché voglio impostare aspettative realistiche. Se sistemi tutto quello che c'è in questa lista oggi, probabilmente non vedrai risultati prima di giovedì. Ed è normale. L'indicizzazione CSR è più lenta, ma funziona.
Lovable è piuttosto chiaro: l'indicizzazione CSR di solito funziona, ma ci sono alcuni problemi prevedibili. Ecco quelli principali che bloccano o rallentano l'indicizzazione — li ho visti tutti in progetti Lovable reali.
Sintomi:
Lo screenshot in URL Inspection sembra vuoto
L'HTML renderizzato non contiene il tuo vero contenuto
Soluzioni:
Assicurati che robots.txt non stia bloccando JavaScript, CSS o /assets/
Usa URL Inspection, poi "View Tested Page", per trovare risorse bloccate ed errori in console
Se una pagina esiste solo come “percorso” nella tua SPA ma:
non è linkata da nessuna parte, e
non è nella sitemap, Google potrebbe non scoprirla mai.
Soluzione:
Aggiorna sitemap.xml ogni volta che aggiungi/rimuovi pagine (Lovable segnala che non è automatico).
Lovable avverte che i metadati non si aggiornano automaticamente tra i percorsi nelle app CSR, a meno che tu non lo implementi. Il loro consiglio: installare react-helmet-async e impostare titoli/descriptions unici per ogni percorso.
Perché conta per l'indicizzazione:
Anche se riesci a farti indicizzare, le pagine possono sembrare identiche ai crawler (e nei risultati di ricerca), riducendo i segnali di qualità e il CTR. Ho controllato un sito Lovable in cui tutte e 12 le pagine avevano lo stesso title tag nell'indice di Google. Tutti i risultati sembravano uguali.
Lovable consiglia il linking interno e dice esplicitamente:
Usa veri link <a href> (non click handler)
Rendi le pagine profonde raggiungibili in circa 3 clic dalla homepage
Aggiungi link nel footer alle pagine chiave su tutto il sito
Perché conta:
I link interni sono uno dei principali meccanismi di scoperta per Google. Una sitemap perfetta aiuta, ma i link di navigazione scansionabili contano ancora. Questo è un problema abbastanza tipico dell'ecosistema React — è facilissimo costruire una navigazione bellissima per gli utenti ma invisibile a Googlebot, perché i link sono gestiti da click handler JavaScript invece che da veri anchor tag.
Se stai costruendo un sito ricco di contenuti, pubblichi molte pagine o sei in una nicchia SEO competitiva, Lovable suggerisce il prerendering o il rendering dinamico come modo per generare snapshot HTML per i bot mentre gli utenti continuano a usare l'app JS.
Lovable segnala che:
il prerendering può aiutare con un'indicizzazione più rapida e una maggiore visibilità per i bot e i crawler AI,
non è incluso di default,
e puoi aggiungerlo tramite servizi come Prerender.io, DataJelly o Rendertron.
Non ti serve per ogni progetto Lovable — ma è una leva potente se fai sul serio con la SEO e con la velocità di indicizzazione. Per me inizia a valere lo sforzo quando hai più di 20 pagine che devono posizionarsi.
Usala prima (e dopo) di inviare qualsiasi cosa in Search Console. Io tengo una versione di questa checklist tra i preferiti e la ripasso per ogni nuovo sito Lovable su cui metto mano.
Il sito è pubblicato ed è accessibile pubblicamente (non "Workspace-only/private").
Ho ripubblicato/aggiornato dopo le ultime modifiche.
https://mydomain.com/sitemap.xml carica XML valido e include tutti i percorsi chiave.
https://mydomain.com/robots.txt si carica, include una riga Sitemap: e non blocca CSS/JS//assets/.
I canonical esistono e puntano alla variante di dominio che preferisco.
Le pagine importanti sono linkate tramite veri link <a href> e raggiungibili dalla homepage.
Proprietà aggiunta per il dominio corretto (meglio un dominio personalizzato).
Proprietà verificata (DNS TXT consigliato quando possibile).
Sitemap inviata in GSC.
Le pagine prioritarie sono state testate con URL Inspection, poi Test Live URL, poi "View Tested Page".
Request Indexing usato solo per le pagine chiave (c'è un limite).
/assets/ in robots.txtQuesto può rompere il rendering delle app CSR. Lovable avverte esplicitamente di non bloccare JS/CSS/asset.
Soluzione: consenti gli asset; ritesta con URL Inspection.
Lovable segnala che le sitemap non si aggiornano automaticamente; devi rigenerarle e reinviarle quando gli URL cambiano.
Soluzione: aggiorna la sitemap; inviala di nuovo.
Soluzione: scegli una sola strategia URL canonica (HTTPS, con o senza www) e allinea:
canonical tag
redirect del dominio primario
proprietà GSC
Lovable permette di cambiare il sottodominio pubblicato. Questo cambia il tuo URL, quindi Google lo tratta come un sito nuovo.
Soluzione: stabilizza il tuo URL prima di fare SEO seriamente; se lo cambi, aggiungi la nuova proprietà e reinvia la sitemap.
Google è chiarissimo: richiedere una scansione non garantisce inclusione immediata, e la scansione può richiedere da giorni a settimane in base alla qualità e ai sistemi coinvolti.
La documentazione di Lovable dice che l'indicizzazione può richiedere da poche ore a qualche giorno, e che puoi accelerarla con invio della sitemap + URL Inspection + Request Indexing per le pagine prioritarie.
Google segnala anche che la scansione può richiedere da pochi giorni a poche settimane, a seconda delle circostanze e dei segnali di qualità. Da quello che ho visto sui siti Lovable su cui ho lavorato, 2-5 giorni è tipico per la homepage, mentre le pagine più profonde a volte richiedono una o due settimane.
Sì — Lovable afferma che le sue app possono posizionarsi come altri moderni siti JavaScript, purché il contenuto venga caricato correttamente e le risorse chiave non siano bloccate.
Fortemente consigliata. Lovable dice esplicitamente che le sitemap sono particolarmente importanti per i siti CSR perché i crawler non riescono sempre a trovare tutti i percorsi. Io andrei oltre e direi che è praticamente obbligatoria — senza, stai affidando tutta la scoperta delle pagine al fatto che Google le trovi tramite link scansionabili, e per le SPA non è una strategia affidabile.
È pubblico (non "Workspace-only")?
Il file sitemap.xml si carica?
Il file robots.txt blocca JS/CSS/asset?
In GSC URL Inspection, Google vede contenuto reale o una pagina vuota?
Spesso è un problema di rendering CSR: risorse bloccate, errori JS oppure Googlebot non riesce a renderizzare completamente la tua app. Lovable consiglia di usare URL Inspection e poi "View Tested Page" per diagnosticare risorse bloccate ed errori in console.
Se pubblichi molte pagine, hai bisogno di un'indicizzazione più rapida o vuoi una maggiore visibilità per i bot e i crawler AI. Lovable suggerisce il prerendering o il rendering dinamico e segnala che richiede una configurazione esterna (non inclusa di default).
no credit card required