Skanno
Audit automatico per siti web: incolla una URL e ottieni un report con punteggio su 31 categorie e 315 test, dalla SEO alla sicurezza.
Skanno nasce da un difetto che ho imparato a usare come metodo: la mania del controllo. Prima di considerare «finito» un sito volevo passarlo ai raggi X — SEO, velocità, sicurezza, cookie, accessibilità — ma ogni controllo viveva in uno strumento diverso: un tool per la SEO, un altro per la performance, un validatore a parte, una console per le intestazioni HTTP, l'ennesimo servizio per il GDPR. Aprivo dieci schede, incollavo dieci volte la stessa URL, e alla fine non avevo un giudizio ma dieci pezzi di giudizio che non parlavano tra loro.
Da lì l'idea fissa: un unico posto dove incolli una URL una volta sola e ottieni tutti i check necessari, con un voto chiaro e confrontabile. Non l'ennesimo tool verticale, ma il posto dove si fanno tutti i controlli insieme.
315 test, 31 categorie, un voto solo
Oggi Skanno esegue 315 test distribuiti su 31 categorie — dalla SEO on-page alla sicurezza, dai cookie e GDPR all'accessibilità, dai dati strutturati alla sostenibilità energetica, fino alla conformità all'EU AI Act. Il risultato è un report con un voto da A+ a F, con il dettaglio categoria per categoria: così non sai solo «quanto vali», ma esattamente dove stai perdendo punti.
Due scansioni, perché una sola non basta
Questo è il punto tecnicamente più interessante, e la ragione per cui Skanno esiste come lo conosci. Un sito si può guardare da fuori o da dentro, e le due cose vedono realtà diverse.
La scansione server (147 test) parte da PHP e curl: scarica l'HTML così com'è servito, legge le intestazioni HTTP, il certificato SSL, i record DNS, e interroga API esterne come Google PageSpeed, Google Safe Browsing, il validatore W3C e The Green Web Foundation. È veloce e oggettiva, ma vede solo l'HTML statico: non sa cosa succede quando la pagina viene davvero aperta in un browser.
Ed è qui che entra la Chrome Extension (171 funzioni di controllo). Molti dei problemi veri — cookie scritti dopo il caricamento, script di terze parti che partono solo a pagina aperta, banner che coprono i contenuti, performance percepita dall'utente, contenuti iniettati via JavaScript — non esistono nell'HTML statico: esistono solo nel DOM renderizzato. Per vederli serve un browser vero. L'estensione (Manifest V3) inietta uno script nella pagina già caricata e misura la realtà, non la teoria. E la comodità è tutta lì: la installi una volta, e poi qualsiasi sito tu stia visitando lo scansioni com'è davvero, cookie e localStorage compresi, senza dover ricostruire nulla lato server.
I due mondi si incontrano: i dati dell'estensione vengono mappati sugli stessi identificatori di test del server e uniti in un report unico. Un solo voto, costruito su ciò che il sito è sul filo e su ciò che diventa nel browser.
Come nasce il voto
Non tutti i test pesano uguale, e non tutte le categorie contano allo stesso modo. Ogni categoria ha un peso: performance 18, SEO 15, sicurezza 15 guidano la classifica, poi mobile e cookie (10 ciascuno), accessibilità (8), e a scendere le altre. Il voto di ogni categoria è la media pesata dei suoi test; il voto globale è la media pesata delle categorie. Così un sito velocissimo ma senza HTTPS non si «compra» la sufficienza con la velocità.
C'è poi una regola che ho voluto dura di proposito: il cap critico. Alcuni test sono marchiati come «critici» — le cose che non puoi sbagliare. Se anche uno solo di questi fallisce, il voto globale viene tagliato a 49, cioè non può salire sopra la D, per quanto bene vada tutto il resto. È il modo di Skanno di dire che certi errori non si compensano: non esiste un sito «ottimo tranne che per la sicurezza».
La scala è: A+ da 90, A da 80, B+ da 75, B da 65, C da 50, D da 35, F sotto. E dove ha senso, il punteggio è graduato invece che passa/non-passa: il controllo di validazione W3C, per esempio, non ti azzera al primo errore — 0 errori vale pieno, fino a 5 vale 80%, fino a 20 la metà, oltre scende al 20%. Perché un errore di markup non è come non avere il certificato SSL, e il voto deve rifletterlo.
Il Trust Score, tenuto apposta separato
Accanto al voto tecnico c'è un secondo numero: il Trust Score, l'affidabilità percepita del sito. L'ho isolato di proposito in una categoria a sé, calcolata a parte e mostrata separatamente. Il motivo è che sono due domande diverse: «questo sito è fatto bene?» e «di questo sito mi posso fidare?» non hanno sempre la stessa risposta. Un sito può essere tecnicamente impeccabile e ispirare comunque poca fiducia, o viceversa. Fondere i due numeri li avrebbe diluiti a vicenda; tenerli separati fa sì che nessuno dei due nasconda l'altro.
AI Act: una classifica per un obbligo che quasi nessuno controlla
La categoria che mi ha dato più soddisfazione costruire è quella sull'EU AI Act. Il regolamento europeo sull'intelligenza artificiale introduce obblighi di trasparenza concreti: se un sito usa un chatbot, l'utente deve saperlo; i contenuti generati dall'AI vanno etichettati; i deepfake vanno dichiarati; servono informazioni sul fornitore, una supervisione umana, un meccanismo di opt-out. Sono cose verificabili — e quasi nessuno strumento le verifica. Skanno controlla la presenza della dichiarazione del chatbot, l'etichettatura dei contenuti AI, l'avviso sui deepfake, la pagina di policy AI, il notice di supervisione umana, l'opt-out, il file llms.txt e la gestione dei bot AI in robots.txt. E da questi controlli nasce una leaderboard dedicata, che mette in classifica i siti più conformi. È l'anticipo di un problema che tra poco avranno tutti.
Cosa dicono i numeri, davvero
Al momento in cui scrivo, Skanno ha eseguito 172 scansioni su 62 domini distinti, con una media di 227 test effettivamente eseguiti per sito (non tutti i 315 si applicano a ogni pagina). La media complessiva è 72,7%: una B. E la distribuzione racconta una cosa che non mi aspettavo così netta: la stragrande maggioranza dei siti si accalca nella fascia B, pochissimi raggiungono la A, e nessuno — finora — ha toccato né l'A+ né la F. Tradotto: quasi tutti i siti sono «abbastanza a posto ma non ottimi». Il cap critico e l'ampiezza dei controlli rendono la A difficile da prendere davvero, ed è esattamente ciò che volevo: un B non deve sembrare un fallimento, ma la A deve valere qualcosa.
Sotto il cofano
Skanno è PHP 8 senza framework, JavaScript vanilla, MySQL, autenticazione Google OAuth e pagamenti Stripe per la parte premium — alcuni test più avanzati sono riservati al piano a pagamento, il grosso è libero. Nessun build step, nessuna dipendenza pesante: un registro unico di test da cui tutto il resto — punteggi, categorie, report — viene derivato. La stessa mania di controllo da cui è partito, applicata anche al modo in cui è costruito.