Un URL assoluto è l'indirizzo completo di una risorsa: protocollo, host e percorso, per esempio https://www.visilay.com/it/blog/urls/. Un URL relativo contiene solo una parte di quell'indirizzo, per esempio /it/blog/urls/, e il browser lo completa usando l'indirizzo della pagina in cui si trova.
Per i link interni Google li tratta allo stesso modo, e lo ha detto più volte. Ci sono però almeno cinque punti di un sito in cui la scelta non esiste: il tag canonical, la sitemap XML, gli hreflang, la riga Sitemap del robots.txt e i meta Open Graph vogliono l'indirizzo completo. Qui trovi la differenza spiegata con un esempio, l'elenco di quei cinque punti con la fonte ufficiale di ciascuno e i numeri di un controllo che abbiamo fatto sui 3.729 link interni del nostro blog.
La differenza in un esempio
Il modo più rapido per capire un URL relativo è vedere come viene risolto. Prendiamo come pagina di partenza https://www.visilay.com/it/blog/urls/ e scriviamo lo stesso tipo di link in sei modi diversi. La tabella mostra l'indirizzo che il browser (e il crawler di Google) ricostruisce in ciascun caso.
| Come è scritto l'href | Tipo | Indirizzo risolto |
|---|---|---|
https://www.visilay.com/it/blog/sitemap/ | Assoluto | https://www.visilay.com/it/blog/sitemap/ |
//www.visilay.com/it/blog/sitemap/ | Relativo al protocollo | Eredita http o https dalla pagina di partenza |
/it/blog/sitemap/ | Relativo alla radice | https://www.visilay.com/it/blog/sitemap/ |
sitemap/ | Relativo alla cartella | https://www.visilay.com/it/blog/urls/sitemap/ |
../sitemap/ | Relativo con risalita | https://www.visilay.com/it/blog/sitemap/ |
#faq | Solo frammento | https://www.visilay.com/it/blog/urls/#faq |
La quarta riga è quella che crea problemi nella pratica. Senza la barra iniziale il percorso parte dalla cartella corrente, quindi lo stesso link inserito in un template usato a profondità diverse porta a indirizzi diversi, spesso inesistenti. È così che nascono le catene di errori 404 che si scoprono solo con un crawler, e nei casi peggiori le trappole in cui i percorsi si allungano all'infinito (/blog/urls/sitemap/sitemap/...).
Le altre forme relative, se scritte bene, portano allo stesso indirizzo dell'assoluto. Tutto dipende da un presupposto: che la pagina di partenza sia raggiungibile a un solo indirizzo. Se lo stesso contenuto risponde anche su http:// o senza www, ogni link relativo moltiplica quella versione. Ci torniamo più sotto, perché è l'unico caso in cui la scelta pesa davvero.
Cosa dice Google sui link interni
La documentazione di Google Search Central sui link scansionabili (aggiornata a dicembre 2025) mette tra gli esempi corretti sia <a href="https://example.com/stuff"> sia <a href="/products">. Il requisito è che l'href si risolva in un indirizzo web reale verso cui il crawler possa inviare una richiesta. Quello che Google sconsiglia sono gli href con il protocollo javascript:, che non portano da nessuna parte.
John Mueller, Search Advocate di Google, è entrato nel dettaglio durante l'office-hours del 26 novembre 2019 (minuto 31:33): se la struttura del sito è pulita, conviene usare la forma più comoda da gestire; se il sito risponde su più varianti di host o protocollo, meglio lavorare con URL assoluti e assicurarsi che puntino alle versioni canoniche. È la stessa posizione che si legge in due dei risultati italiani più visibili su questo tema, con accenti diversi: Bruce Clay chiude a favore degli assoluti, SEOZoom insiste sul fatto che per Google la differenza non esiste. Hanno ragione entrambi, perché parlano di siti diversi.
La conseguenza pratica: sui link nel corpo delle pagine il formato non è un fattore di ranking. Conta quante versioni del sito rispondono con un 200.
I cinque punti in cui l'URL relativo non è ammesso
Qui la discussione finisce, perché le specifiche lo dicono in chiaro. In nessuna delle pagine italiane che si posizionano per questa ricerca abbiamo trovato l'elenco completo, quindi lo abbiamo ricostruito dalle fonti primarie, con la data di aggiornamento di ciascuna.
| Dove | URL relativo accettato? | Cosa dice la fonte | Fonte (ultimo aggiornamento) |
|---|---|---|---|
| Tag canonical nell'HTML | Sconsigliato | Usa percorsi assoluti invece che relativi con l'elemento link rel=canonical | Google Search Central (luglio 2026) |
| Canonical nell'header HTTP | Sconsigliato | Come per il tag, usa URL assoluti anche nell'header | Google Search Central (luglio 2026) |
Sitemap XML, campo <loc> | No | URL completi e assoluti; il protocollo sitemaps.org chiede che ogni URL inizi con il protocollo | Google Search Central (luglio 2026), sitemaps.org |
| Annotazioni hreflang | No | Gli URL alternativi devono essere completi, incluso http o https | Google Search Central (settembre 2026) |
| Riga Sitemap: del robots.txt | No | Deve essere un URL completo, con protocollo e host | Google Search Central (agosto 2026) |
| Meta og:url e og:image | Di fatto no | La specifica non lo scrive in modo esplicito, ma tutti gli esempi usano indirizzi completi e og:url è l'ID permanente dell'oggetto | Open Graph protocol |
| Regole Allow e Disallow del robots.txt | Sì, anzi è la regola | Il percorso è relativo alla radice del sito da cui è stato scaricato il file | Google Search Central (agosto 2026) |
L'ultima riga serve a evitare l'errore opposto: nel robots.txt le direttive Allow e Disallow si scrivono come percorsi (/wp-admin/), non come URL completi. Solo la riga Sitemap vuole l'indirizzo intero.
Sul canonical Google è netto perché un canonical relativo lascia al crawler il compito di ricostruire l'host, cioè proprio l'informazione che il canonical dovrebbe fissare. Sitebulb, nella scheda del suo avviso Canonical is a relative URL, riporta che Google lo considera uno degli errori più comuni sui canonical. Per la sitemap XML il vincolo è ancora più rigido: Google dichiara che proverà a scansionare gli URL esattamente come sono scritti, entro il limite di 50.000 URL o 50 MB non compressi per file.
Quanto è diffuso il canonical, per dare la misura
Il capitolo SEO del Web Almanac 2025 di HTTP Archive, basato sulla scansione di luglio 2025 di 16.213.084 siti, rileva il canonical sul 68% delle pagine desktop e sul 67% di quelle mobile, contro il 65% del 2024. Solo lo 0,58% delle pagine desktop lo dichiara nell'header HTTP. È un campione mondiale, non italiano: non esiste un dato pubblico equivalente limitato ai siti italiani. Dice comunque che due pagine su tre hanno un campo in cui l'URL relativo è sconsigliato in modo esplicito.
Quando un link interno relativo diventa un problema
Fuori dai cinque punti della tabella, un URL relativo crea guai in quattro situazioni ricorrenti. Nessuna riguarda il ranking in sé: riguardano indirizzi che si moltiplicano o che smettono di funzionare.
Il sito risponde su più versioni
Se http://sito.it/pagina/ e https://www.sito.it/pagina/ restituiscono entrambi un 200, un crawler che entra dalla versione sbagliata trova link relativi che lo tengono lì, pagina dopo pagina. Con link assoluti ogni clic lo riporta sulla versione giusta. Il rimedio vero però è a monte: redirect 301 da tutte le varianti verso una sola e certificato SSL attivo su tutto il dominio.
Lo abbiamo verificato su visilay.com. https://visilay.com/..., http://www.visilay.com/... e la versione senza barra finale rispondono con un solo 301 verso l'indirizzo canonico. http://visilay.com/... invece passa da due salti: prima verso https senza www, poi verso la versione con www. Funziona, ma è un salto in più che conviene eliminare, ed è il tipo di dettaglio che un audit SEO deve far emergere.
Staging e ambienti di test indicizzabili
Con i link relativi un sito di staging copiato dalla produzione funziona senza modifiche, ed è il motivo per cui gli sviluppatori li preferiscono. Se però lo staging è raggiungibile da Google, i link relativi lo trasformano in un duplicato completo e navigabile. Con link assoluti il crawler verrebbe rimandato alla produzione al primo clic. La soluzione resta proteggere lo staging con password, non cambiare il formato dei link.
Scraper, feed e contenuti copiati
Quando un sito di scraping copia un articolo, i link assoluti continuano a puntare al sito originale e portano con sé un segnale di attribuzione. I link relativi, fuori dal loro dominio, si rompono o puntano al sito che ha copiato. Vale anche per feed RSS, newsletter e testi incollati in altri strumenti: dove il contesto cambia, l'indirizzo completo è l'unico che sopravvive.
Il tag base
L'elemento <base> cambia l'indirizzo di partenza per tutti gli URL relativi della pagina. La documentazione MDN di Mozilla segnala un effetto collaterale che molti non conoscono: anche i link a frammento vengono risolti rispetto al base, quindi <a href="#anchor"> con un base impostato su https://example.com/ non scorre la pagina ma apre https://example.com/#anchor. Un base sbagliato in un template rompe in un colpo solo tutti i relativi del sito.
Cosa abbiamo trovato nei 3.729 link interni del blog Visilay
Per avere un dato di prima mano abbiamo estratto dal database del nostro WordPress tutti i link presenti nei 263 articoli in italiano pubblicati a fine settembre 2026, escludendo le bozze vuote. Il risultato:
| Voce | Valore |
|---|---|
| Articoli analizzati | 263 |
| Link interni verso visilay.com | 3.729 |
| Link interni in forma assoluta | 3.729 (100%) |
| Link interni relativi alla radice o alla cartella | 0 |
| Link interni con http invece di https | 0 |
| Link interni senza www | 0 |
Href javascript:void(0); | 28, distribuiti in 22 articoli |
| Link interni con percorso senza prefisso di lingua | 1 (/services/seo/) |
| Link verso altri domini (inclusi mailto e tel) | 1.547 |
Il 100% di assoluti non è una scelta editoriale nostra: quando nell'editor a blocchi di WordPress scegli un contenuto interno dalla ricerca del link, viene inserito il permalink completo. Chi lavora su WordPress parte quindi già dalla situazione che Google raccomanda nei casi dubbi. I problemi che il controllo ha fatto emergere sono altri: 28 href javascript:, cioè proprio la forma che la documentazione di Google indica come non risolvibile, e un link verso un percorso senza /it/ che porta alla versione inglese del servizio invece che a quella italiana. Un URL assoluto garantisce host e protocollo giusti, non garantisce che il percorso sia quello giusto.
Un ultimo dettaglio: nell'HTML servito dal sito i link relativi ci sono, anche se nel database non esistono. Li inserisce Cloudflare quando offusca gli indirizzi email (/cdn-cgi/l/email-protection#...). Controllare il codice sorgente del CMS non basta: va controllata la pagina come la riceve il crawler.
Come scegliere per il tuo sito
La decisione si prende con quattro controlli, in quest'ordine.
- Apri le quattro varianti della home (
http://,https://, con e senzawww): se tutte tranne una fanno 301 in un solo salto verso la stessa versione, per i link nel corpo delle pagine puoi usare la forma che il tuo CMS genera. - Se anche una sola variante risponde 200, correggi prima i redirect. Nel frattempo i link interni assoluti limitano i danni.
- Canonical, sitemap, hreflang, riga Sitemap del robots.txt e Open Graph vanno sempre in forma assoluta, qualunque cosa tu decida per il resto.
- Vieta i relativi alla cartella (senza barra iniziale) nei template condivisi: sono l'unica forma che cambia significato a seconda della pagina in cui compare.
Per il controllo pratico basta visualizzare il sorgente di una pagina e cercare rel="canonical" e hreflang, oppure lanciare un crawler: Sitebulb segnala i canonical relativi con un avviso dedicato. In Google Search Console lo strumento Controllo URL mostra quale canonical Google ha scelto davvero, che non sempre coincide con quello dichiarato. Se il sito è multilingua, i controlli su hreflang e SEO internazionale sono quelli dove un relativo fa più danni, perché un errore si ripete su ogni coppia di lingue. Più in generale, sono verifiche che rientrano nella SEO tecnica di base, insieme alla pulizia degli URL e a una buona struttura dei link interni.
Se vuoi che qualcuno faccia questi controlli sul tuo sito e sistemi redirect, canonical e sitemap in un unico intervento, è una delle attività del nostro servizio SEO.
Domande frequenti
L'URL assoluto contiene l'indirizzo completo: protocollo, host e percorso, per esempio https://www.sito.it/blog/articolo/. L'URL relativo contiene solo una parte, per esempio /blog/articolo/, e il browser lo completa partendo dall'indirizzo della pagina in cui il link si trova.
Per i link interni nel corpo delle pagine Google tratta le due forme allo stesso modo, a patto che il sito risponda su una sola versione. Se più varianti di host o protocollo restituiscono 200, gli URL assoluti riducono il rischio di duplicati. Canonical, sitemap XML, hreflang e riga Sitemap del robots.txt vanno invece sempre in forma assoluta.
Tecnicamente il browser lo risolve, ma Google nella sua documentazione chiede esplicitamente di usare percorsi assoluti sia nel tag link rel=canonical sia nell'header HTTP. Un canonical relativo lascia al crawler il compito di ricostruire host e protocollo, che è proprio ciò che il canonical dovrebbe fissare.
No. Google chiede URL completi e assoluti e dichiara di scansionarli esattamente come sono scritti. Anche il protocollo sitemaps.org stabilisce che ogni URL nel campo loc deve iniziare con il protocollo, per esempio https.
È un indirizzo che inizia con due barre, per esempio //www.sito.it/pagina/, e che eredita http o https dalla pagina in cui si trova. Su un sito servito solo in https non porta vantaggi: conviene scrivere direttamente https://.
Quando scegli un contenuto interno dalla ricerca link dell'editor a blocchi, WordPress inserisce il permalink completo. Sui 3.729 link interni dei 263 articoli italiani del blog Visilay il 100% era assoluto. I link relativi possono comparire comunque nell'HTML finale se li inserisce un plugin, il tema o un servizio come Cloudflare.
Una cosa che nel settore si dice poco: il dibattito tra assoluti e relativi è quasi sempre un sintomo. Chi se lo pone di solito ha un sito che risponde su più indirizzi, e sta cercando di rimediare nei link a un problema che vive nella configurazione del server. Sistemati i redirect, la domanda smette di avere importanza per i link nel corpo delle pagine e resta valida solo nei cinque campi della tabella, dove la risposta è già scritta.