URL

Pulita

Cos'è il Pulitore URL?

Hai condiviso un link con degli amici e in coda c'era ?utm_source=newsletter&utm_campaign=spring_sale_2026&fbclid=IwAR0.... Incollalo qui e lo strumento ti restituisce la URL pulita più un dettaglio JSON di esattamente cosa è stato tolto. L'output è in JSON, quindi puoi copiarlo dritto in una riga di log, in una fixture di test o ovunque tu voglia tenere traccia di cosa è stato pulito.

La pagina esiste perché Google Analytics, Facebook, HubSpot, Mailchimp e una decina di altre piattaforme attaccano alle URL roba che non vuoi né condividere né salvare. I parametri utm_* arrivano dall'Urchin Tracking Module — Google li ha aggiunti nel 2005 e oggi sono ovunque. fbclid è l'identificatore di clic di Facebook e gclid quello di Google. Nessuno influenza la pagina che si carica — dicono solo al sito di destinazione da dove sei arrivato.

Tutto gira nel tuo browser usando l'API standard URLSearchParams, lo stesso parser che il WHATWG URL Standard definisce. Nessun upload, nessun server, nessun log. La pulizia è deterministica — la lista dei parametri da togliere è nel sorgente, puoi leggerla, e lo stesso input produce sempre lo stesso output.

Come usare il Pulitore URL

Tre passaggi. Ognuno corrisponde a un pulsante in pagina.

1

Incolla una URL o carica l'esempio

Butta una URL nel pannello sinistro. Clicca Esempio per caricare un caso realistico con utm_*, fbclid e gclid mescolati a parametri di query veri. URL d'esempio:

https://shop.example.com/orders/ORD-1001?customer=Ava+Chen&status=active&utm_source=newsletter&utm_medium=email&utm_campaign=spring_sale_2026&fbclid=IwAR0abc123def456&gclid=Cj0KCQjwxyz

Tutto ciò che new URL(...) accetta funziona — query string con +, percent-encoding, chiavi ripetute e fragment hash sono tutti gestiti. Path, hash e qualsiasi parametro di query non di tracciamento vengono preservati esattamente.

2

Leggi la URL pulita e cosa è stato tolto

Il pannello destro mostra JSON: cleaned è la URL senza tracciamento, removed è un oggetto che elenca ogni parametro tolto (chiave e valore), e removedCount è il totale. Se non c'era nulla da pulire, removed è un oggetto vuoto e un campo note lo segnala. Si aggiorna mentre digiti.

3

Copia o scarica

Copia manda il JSON negli appunti, Scarica lo salva come file .json. Minifica compatta il JSON su una riga. Usa Cancella nel pannello di input per ripartire. Se ti serve solo la stringa della URL pulita, copia il valore del campo cleaned.

Quando ti serve davvero

Ripulire i link prima di condividerli

Hai aperto una scheda da una mail di marketing e vuoi mandare il link a un amico su Slack. La URL si trascina ?utm_source=newsletter&utm_campaign=spring_sale_2026 in coda — il tuo amico non deve sapere da dove sei arrivato e il link è brutto da vedere. Incolli, copi il valore di cleaned, mandi. Si abbina bene al nostro Parser URL se prima vuoi ispezionarne i pezzi.

Salvare URL canoniche in un database

Stai indicizzando pagine per un servizio di segnalibri o un tracker di prezzi. Due visite allo stesso prodotto con utm_campaign diversi non sono due pagine — è la stessa pagina. Togli i tracker prima di scrivere la URL nel database, altrimenti ti ritrovi con duplicati. La spec RFC 3986 chiama questa cosa normalizzazione delle URL.

Privacy — non passare il referrer al sito di destinazione

Quando clicchi un link con fbclid, stai dicendo al sito di destinazione che ti ha mandato Facebook e gli stai dando un click ID che Facebook può correlare al tuo account. La documentazione di Facebook descrive fbclid come identificatore di clic per l'attribuzione degli annunci. Toglierlo prima di visitare (o prima di salvare il link) interrompe quella catena.

Pulire i ticket di customer support

"La pagina si è rotta quando ho cliccato questo link" — e il link è lungo 600 caratteri perché si trascina utm + gclid + ogni parametro di tracciamento HubSpot mai esistito (__hssc, __hstc, _hsenc, hsa_*). Incolli, copi la URL pulita, e incolli QUELLA nel report del bug. Adesso si legge davvero il path.

Domande frequenti

Cosa toglie esattamente?

Tutto ciò che inizia con utm_ (cioè utm_source, utm_medium, utm_campaign, utm_term, utm_content, più qualsiasi utm_* custom aggiunto da un marketer) — più una lista esplicita di una cinquantina di parametri di tracciamento noti: fbclid (Facebook), gclid e dclid (Google Ads), mc_eid e mc_cid (Mailchimp), _ga e _gl (Google Analytics cross-domain), igshid (Instagram), yclid (Yandex), __hsfp/__hssc/__hstc/_hsenc e hsa_* (HubSpot), mtm_* e pk_*/piwik_* (Matomo), vero_id, wickedid, _branch_match_id, _openstat e qualcun altro. I parametri di query reali che servono alla pagina (tipo customer=Ava+Chen) restano intatti.

Modifica path o hash?

No. Si tocca solo la query string. Protocollo, host, porta, path e fragment hash passano tali e quali. Quindi https://shop.example.com/orders/ORD-1001?utm_source=x#summary diventa https://shop.example.com/orders/ORD-1001#summary — stesso path, stesso hash, niente query.

E se voglio tenere utm_source per la mia analytics?

Adesso la lista è fissa e cablata nella pagina. Se ti serve una whitelist o blacklist personalizzata, forka il sorgente — il Set dei parametri e la regex utm_* sono in cima al componente. Una versione futura magari lo esporrà come opzione, ma la maggior parte di chi atterra qui vuole il default completo.

Perché fbclid è così lungo?

È un identificatore opaco e firmato che Facebook usa per attribuire il clic a un'inserzione specifica e (di solito) a un utente specifico. Il formato esatto non è pubblico, ma è documentato per esteso nella voce fbclid di Wikipedia. gclid è l'equivalente per Google Ads. Entrambi si possono togliere senza problemi dalle URL che condividi o salvi — nessuno dei due serve per caricare la pagina.

Funziona con URL senza parametri di tracciamento?

Sì. Il JSON di output ha removedCount: 0, un oggetto removed vuoto e un campo note che dice che non è stato trovato niente. La cleaned sarà identica byte per byte al tuo input (a meno di ciò che new URL().toString() normalizza — tipo aggiungere uno slash finale all'origin se mancava).

E con chiavi ripetute, tipo ?utm_source=a&utm_source=b?

Tolte entrambe. URLSearchParams.delete(name) rimuove ogni voce con quel nome, quindi i duplicati non sono un problema. L'oggetto removed mostrerà solo un valore (l'ultimo parsato), ma nella pratica nessuno mette utm_source duplicato in una URL vera.

Altri strumenti URL

Pulire è solo un'operazione. Ecco cosa si combina naturalmente: