modern seo
Scrivi slug URL puliti e leggibili
MetricSpot controlla lo slug dell'URL per lunghezza, separatori e se si legge come parole vere. Gli slug puliti (/seo-guide) battono gli ID (/page?id=123) per click e indicizzazione.
Cosa controlla questo check
Analizza l’URL della pagina sotto audit e ispeziona l’ultimo segmento del path (lo “slug”). Il check fallisce quando lo slug è:
- Un ID numerico o hashato —
/posts/47391,/p?id=a8f3e2b0. - Troppo lungo — oltre 60 caratteri.
- Pieno di underscore invece che trattini —
/seo_guide_for_2026_complete. - Per lo più stop word —
/what-is-the-best-way-to-do-x. - Tutto maiuscolo o mixed case —
/SEO-Guide,/seoGuide. - Contiene spazi o caratteri speciali —
/SEO Guide.html,/SEO%20Guide.
Perché è importante
Gli slug puliti non sono solo estetici — influenzano click-through, ranking e condivisibilità in modi misurabili.
- Click-through. Gli studi trovano costantemente che gli URL descrittivi nei risultati di ricerca ottengono dal 10 al 30% di click in più rispetto agli ID. Lo slug compare accanto al titolo in ogni SERP — è parte del tuo titolo.
- Segnale di ranking. Google ha confermato che lo slug dell’URL è un fattore di ranking (minore). Le parole nello slug che matchano la query dell’utente vengono grasseggiate, come il titolo e la description.
- Condivisibilità. Un URL che qualcuno può leggere è un URL che qualcuno può ricordare e dire a un collega.
metricspot.com/docs/enable-hsts/è condivisibile;metricspot.com/docs/?id=42891no. - Estrazione AI. ChatGPT, Perplexity e Google AI Overviews citano gli slug nelle citazioni. Uno slug pulito si legge come una fonte vera; un ID si legge come generato a macchina.
Come risolvere
Usa slug minuscoli, separati da trattini, ricchi di keyword e sotto i ~60 caratteri.
Bene:
/docs/enable-hsts/
/blog/how-https-works/
/pricing/
/products/wireless-earbuds-pro/
Male:
/docs/47391/ (ID, nessun significato)
/Docs/Enable_HSTS/ (maiuscole, underscore)
/the-complete-2026-guide-to-enabling-hsts-on-your-website-step-by-step/ (troppo lungo)
/docs/?id=hsts&v=2&from=blog (query param per URL di contenuto)
Regole.
- Trattini, non underscore. Google tratta i trattini come confini di parola; gli underscore no.
enable-hstsmatcha “enable HSTS”;enable_hstssi legge come una sola parola incollata. - Minuscolo. Alcuni server trattano
/Docs/Enable-HSTS/come URL diverso da/docs/enable-hsts/— contenuto duplicato, segnali divisi. Forza tutto a minuscolo a livello di redirect. - Elimina le stop word selettivamente.
/how-https-works/va bene./the-best-way-to-enable-https-on-nginx-quickly/si legge come SEO del 2012. - Niente estensioni di file.
/about.html,/post.php. Toglile; reindirizza i vecchi URL con estensioni alla versione pulita. - URL stabili. Una volta che uno slug è pubblicato e indicizzato, cambiarlo ti costa backlink. Scegli un buon slug la prima volta. Se devi cambiarne uno, imposta un redirect 301 dal vecchio slug.
WordPress — Impostazioni → Permalink → “Nome del post” ti dà slug puliti per default. Per ogni post, modifica il campo slug nel meta-box dell’URL prima di pubblicare. Se cambi uno slug pubblicato, installa Redirection così il vecchio URL fa 301 automaticamente.
Astro — il routing basato su file rende gli slug espliciti. Nomina src/pages/docs/enable-hsts.astro e ottieni /docs/enable-hsts/. Fatto.
Next.js — App Router usa i nomi delle cartelle come segmenti. app/docs/enable-hsts/page.tsx → /docs/enable-hsts/. Per rotte dinamiche, genera gli slug a build time da una sorgente di contenuto:
// app/blog/[slug]/page.tsx
export async function generateStaticParams() {
const posts = await getPosts();
return posts.map(post => ({ slug: post.slug }));
}
Genera slug programmaticamente:
function slugify(title: string): string {
return title
.toLowerCase()
.normalize("NFD").replace(/[̀-ͯ]/g, "") // togli gli accenti
.replace(/[^a-z0-9\s-]/g, "") // elimina la punteggiatura
.trim()
.replace(/\s+/g, "-") // spazi → trattini
.replace(/-+/g, "-") // riduci i trattini ripetuti
.slice(0, 60); // limita la lunghezza
}
slugify("Enable HSTS on nginx & Apache");
// → "enable-hsts-on-nginx-apache"
Non cambiare slug pubblicati. Se devi — migrazione di dominio, rebrand — imposta un redirect 301 dal vecchio slug a quello nuovo e aggiungilo alla tua sitemap. Vedi Mantieni corte le catene di redirect così i 301 collassano in un singolo hop.
Domande frequenti
Dovrei includere la data negli slug dei post del blog?
Opzionale. /blog/2026/05/enable-hsts/ fa sembrare datato il contenuto evergreen quando un utente ci clicca tre anni dopo. /blog/enable-hsts/ no. Se scrivi molto contenuto news tempestivo, le date possono aiutare; per le guide evergreen, eliminale.
E gli slug non in inglese?
Per pagine che mirano a una lingua specifica, usa le parole di quella lingua. /es/docs/activar-hsts/ si posiziona meglio nella ricerca spagnola di /es/docs/enable-hsts/. Togli gli accenti (activar, non activación) — Google matcha comunque, e i caratteri accentati si rompono in alcuni client.
Lo slug dovrebbe matchare il titolo esattamente?
No — vicino, non identico. Il titolo è una frase completa con stop word e punteggiatura; lo slug è il nucleo denso di keyword. Titolo: “Come abilitare HSTS su nginx e Apache (con esempi di codice)”. Slug: /enable-hsts/ o /enable-hsts-on-nginx-apache/.
Fonti
Ultimo aggiornamento 2026-05-11