Location e UTM troncati dopo 1000 caratteri, o forse no

La pubblicazione su Linkedin del mio articolo “Nome parametro troncato a 100 caratteri” ha fatto emergere alcune affermazioni e domande nei commenti da parte degli utenti, tra queste ce ne sono state due in particolare che mi hanno incuriosito:

  • il limite della lunghezza dei parametri utm è uguale a quello del page_title?
  • il limite di 1000 caratteri della page_location comprende anche i parametri utm o questi vengono gestiti separatamente?

La documentazione Google afferma che il limite del page_title è di 300 caratteri.

Ho effettuato un primo test per verificare se i parametri utm sono considerati parte della page_location e se la loro lunghezza potesse superare i 300 caratteri.

Inviando a GA4 un URL costituito da nome host, page path e utm in querystring, con una lunghezza crescente fino a superare i 1000 caratteri (1089 nel caso specifico), ho rilevato in BigQuery che il campo è stato troncato esattamente alla lunghezza di 1000 caratteri complessivi.

Allo stesso tempo, ho inviato a GA4 il campo utm_campaign con un valore di lunghezza crescente (più di 100 caratteri, più di 255 caratteri, più di 500 caratteri e più di 1000 caratteri).

Il risultato in BigQuery è stato che tale valore viene troncato a 420 caratteri.

Di seguito i risultati dei test:

La risposta alla prima domanda pertanto è che la lunghezza massima che può assumere un parametro utm è di 420 caratteri, superiore a quella del page_title che è di 300 caratteri.

Nel test 4 tuttavia, ho utilizzato un valore di utm_campaign superiore a 1000 caratteri. Dal momento che la lunghezza massima ammessa è di 420 caratteri e che la page_location viene troncata a 1000 caratteri, non è possibile capire se effettivamente gli utm vengono processati correttamente nonostante una page_location oltre il limite, ovvero se GA4 tronca la page_location ma gestisce gli UTM anche se essi si trovano nella parte eccedente i 1000 caratteri dell’URL.

Per questo motivo, ho condotto un ulteriore test inserendo tutti e 4 i parametri utm (utm_source, utm_medium, utm_campaign e utm_content) con una lunghezza pari a 400 caratteri ciascuno. In questo modo la lunghezza totale della page_location è risultata di 1686 caratteri, potendo quindi garantire il superamento del relativo limite di 1000 caratteri e mantenendo la lunghezza di ciascun parametro utm all’interno del relativo limite consentito.

Lo scopo è capire se in piattaforma vengono acquisiti tutti e 4 i parametri utm oppure se l’utm_campaign viene troncato dal superamento dei 1000 caratteri della page_location e di conseguenza l’utm_content, eccedendo ulteriormente, non viene raccolto.

L’esito in BigQuery è stato il seguente:

Il risultato mostra che la lunghezza della page_location acquisita, come atteso, è troncata a 1000 caratteri (contro i 1686 totali passati a GA4), tuttavia i 4 parametri utm (nonostante la somma dei loro caratteri superi il valore di 1000, essendo 400+400+400+400=1600) sono stati acquisiti completamente in GA4.

Possiamo pertanto affermare che nonostante il limite di lunghezza della page_location, i parametri UTM vengono processati in modo distinto garantendo la corretta attribuzione della sessione.