Guide tattiche

Core Web Vitals e conversion rate: il costo reale di ogni 100 ms su LCP e INP per i publisher editoriali

Quanto costa in conversione un LCP lento o un INP alto su un sito editoriale: dati, misurazione pratica e impatto dei widget di conversione.

Stefano Novelli · · 8 min di lettura
Core Web Vitals e conversion rate: il costo reale di ogni 100 ms su LCP e INP per i publisher editoriali

I Core Web Vitals non sono solo una metrica tecnica per gli sviluppatori — sono un fattore di ranking Google e, in modo meno ovvio, un fattore di conversion rate diretto. Su un sito editoriale italiano, ogni 100 ms aggiuntivi su LCP o INP si traducono in percentuali misurabili di lettori persi, scroll abbandonati, click mancati sui link affiliati. Questa guida mette numeri sopra l'affermazione generica "le performance contano" e mostra come quantificare il costo reale dei widget di conversione installati sul sito.

L'obiettivo è darti un framework per decidere quali widget valgono il loro peso e quali sono revenue-negativi nonostante le apparenze di breve termine.

Cosa sono LCP e INP per un publisher

LCP (Largest Contentful Paint): il tempo per rendere visibile il più grande elemento above-the-fold. Tipicamente un'immagine hero o un blocco titolo+sottotitolo. Soglia "Good" ≤ 2,5 s, "Needs Improvement" 2,5-4 s, "Poor" > 4 s.

INP (Interaction to Next Paint): dal 2024 ha sostituito FID come metrica di responsiveness. Misura la latenza della risposta a un'interazione dell'utente (click, tap, keypress). Soglia "Good" ≤ 200 ms, "Needs Improvement" 200-500 ms, "Poor" > 500 ms.

CLS (Cumulative Layout Shift): somma degli shift di layout visibili. Soglia "Good" ≤ 0,1. Lo tengo a margine perché su siti editoriali ben fatti è quasi sempre sotto controllo.

Il legame tra CWV e conversion

Gli studi disponibili (Akamai 2017-2023, Deloitte "Milliseconds make Millions" 2020, WPO Stats ongoing) documentano correlazioni:

  • E-commerce: -100 ms di LCP = +3-5% conversion, -100 ms di FCP = +1-3%.
  • Media/Publisher: -100 ms di LCP = +0,5-2% pagine per sessione, -100 ms di INP = +1-3% engagement.
  • News: LCP < 2 s vs LCP 4 s = +15% retention a 30 giorni.

Queste cifre sono una forchetta, ma la direzione è consistente: performance migliori producono più engagement, più engagement produce più conversion.

Per i publisher italiani il costo duale è particolarmente alto:

  1. Diretto: utenti che abbandonano prima del click affiliato.
  2. Indiretto via SEO: i Core Web Vitals sono un fattore di ranking Google. Performance peggiore = meno impression organiche = meno traffico a monte del funnel.

Un publisher che peggiora l'LCP p75 da 2,2 s a 2,8 s può osservare -5% di click affiliati (diretto) + -8% di impression Google (indiretto) — una perdita composita del 13% sulla revenue affiliate.

Misurare LCP e INP sul proprio sito

Strumenti field-data (reali)

Google Search Console → Core Web Vitals: dati CrUX aggregati per URL pattern. P75 è la metrica ufficiale per il ranking. I dati CrUX si aggiornano giornalmente (finestra rolling di 28 giorni): il dato è fresco di circa 2 giorni, ma le variazioni sul sito impiegano fino a 28 giorni per riflettersi completamente nel p75.

PageSpeed Insights: per URL singolo. Mostra sia dati lab (simulazione) sia field (CrUX). Affidati ai field per le decisioni.

web-vitals.js + GA4: installi lo script open source di Google sul sito, che emette eventi CLS, LCP, INP a ogni pageview. Li mandi a GA4 come custom events. Ottieni dati RUM real-time per la tua property.

Strumenti lab-data (simulati)

Chrome DevTools → Performance: registrazione manuale, utile per debugging. Non rappresenta la realtà se fatto con CPU/network unthrottled.

WebPageTest: simulazione da varie location e device. Utile per confronto competitivo.

Lighthouse CI: integrabile nel CI/CD, blocca deploy se peggiorano metriche.

Il divario lab vs field

Il lab data è spesso migliore del field perché esegue su CPU/network ottimali. Un LCP di 1,8 s in Lighthouse può essere 3,2 s in CrUX. Il field è la verità dal punto di vista utente e Google — il lab è indicativo.

Perché INP è il problema del 2026 per i publisher

Fino al 2023 il collo di bottiglia tipico era LCP: immagine hero grande, font pesanti, render-blocking JS. Risolto con lazy loading, font-display, preload. Oggi INP è diventato il vero problema per molti publisher.

Le cause tipiche di INP alto su un sito editoriale:

  1. Widget di conversione pesanti: popup exit intent, chatbot, lead form overlay.
  2. Tracking script multipli: GA4 + Hotjar + Meta Pixel + TikTok + custom attribution = event listener in accumulo.
  3. Componenti UI complessi: carousel di featured articles, mega menu con animazioni.
  4. Hydration over-aggressive: siti Next.js che idratano tutta la pagina invece di isolati componenti.

Un sito con LCP ottimo (2,1 s) può avere INP pessimo (380 ms) per accumulo di tracking script. L'effetto sull'utente è un feel "lento" nonostante il primo paint veloce — pagina caricata ma non reattiva.

Il costo dei widget di conversione: case study

Scenario: editore italiano, 1,5M pv/mese, articoli longform, INP p75 = 185 ms (borderline Good), LCP p75 = 2,4 s.

Installazione exit intent popup (library ~65 KB, event listener per mouse movement su tutta la pagina):

  • INP p75 sale a 255 ms (Poor).
  • LCP p75 sale a 2,5 s (stabile).
  • CLS sale a 0,08 (ancora Good ma peggiorato).
  • Impatto SEO: progressivo calo di impression organiche nel Q successivo (-6-10%).
  • Apparent conversion short-term: +2,5% per il popup funzionante.
  • Revenue blended dopo 90 giorni: -8%.

Alternativa — widget leggero contestuale (AnchorLabs):

  • INP p75 stabile a 185 ms.
  • LCP p75 stabile a 2,4 s.
  • CLS invariato a 0,03.
  • Apparent conversion CTR sui link affiliati: +65%.
  • Revenue blended a 90 giorni: +22%.

La differenza è nello "hidden cost" del primo widget: peggioramento CWV → calo SEO → riduzione del traffico, che si cumula oltre al +2,5% visibile short-term.

Perché AnchorLabs non impatta CWV

Il design di AnchorLabs parte dal vincolo "non peggiorare CWV":

  • Script size: ~5 KB gzipped. Per confronto: un popup library tipico è 40-80 KB, un chatbot 80-150 KB.
  • Loading: defer, carica dopo DOMContentLoaded. Non concorre con LCP.
  • Scan: usa requestIdleCallback per la prima scansione del DOM, cedendo il main thread quando necessario.
  • Event listener: delegato su document, non su ogni singolo trigger. Minor overhead.
  • Tooltip render: floating, mai inserito nel flusso del DOM che potrebbe causare CLS. CLS impatto = 0.
  • Immagini prodotto: lazy-loaded solo quando il tooltip si apre, non pre-caricate.

Il trade-off onesto: AnchorLabs è un widget specialistico (conversion contestuale sui link affiliati). Non sostituisce un A/B testing tool, non sostituisce un chatbot, non sostituisce un survey widget. Per quei compiti serve installare altri strumenti, ciascuno con il suo costo CWV da valutare.

Per una discussione più ampia sull'impatto dei link affiliati sui Core Web Vitals, Affiliate link e Core Web Vitals è la referenza. Per il focus specifico INP su WordPress — il caso più comune in Italia — vedi INP su WordPress per publisher. Per il contesto di come i link contestuali si inseriscono in una strategia CRO più ampia senza sacrificare performance, Aumentare il CTR sui link affiliati.

Framework per valutare un nuovo widget

Prima di installare qualsiasi widget di conversione sul sito, applica questo check:

  1. Peso script: gzipped, dovrebbe essere < 15 KB per widget "leggeri", < 40 KB per widget "medi". Oltre, serve una giustificazione.
  2. Loading strategy: defer o async? Richiede render-blocking?
  3. Event listener: quanti e su quali elementi? passive?
  4. CLS potenziale: il widget si rende in posto fisso (floating) o sposta contenuto esistente?
  5. Hydration cost (su SSR/SSG): il widget è Client Component o richiede idratazione aggiuntiva?
  6. Test A/B CWV: installa su 10% del traffico per 14 giorni, confronta CrUX.

Un widget che fallisce 2+ criteri va evitato o sostituito.

Calcolare il ROI netto di un widget

Formula semplificata:

ROI_net = (conversion_uplift_%) × (revenue_per_conversion) × (traffic_baseline) 
         − (seo_impact_%) × (revenue_baseline)
         − (installation_cost)

Esempio con exit intent popup:

  • conversion_uplift: +2,5%
  • revenue_per_conversion: €0,30
  • traffic_baseline: 1,5M pv/mese
  • seo_impact: -8% (dopo 3 mesi)
  • revenue_baseline: €4.500/mese
  • Result: +€1.125 (uplift) − €360/mese (perdita SEO) = +€765 effettivi

Esempio con AnchorLabs:

  • conversion_uplift: +65% su keyword matchate (~30% del traffico qualificato)
  • seo_impact: 0%
  • Result: uplift netto ~€900/mese (varia con catalogo)

Da dove iniziare

  1. Installa web-vitals.js e invia LCP/INP/CLS a GA4 (15 minuti di setup).
  2. Raccogli 28 giorni di dati field.
  3. Identifica il bottleneck prevalente (LCP o INP). Nel 2026 è tipicamente INP.
  4. Audita i widget installati: peso, event listener, CLS.
  5. Sostituisci widget CWV-negativi con alternative più leggere, o rimuovili.
  6. Misura il delta in 30 giorni.

Per gli editori che ancora usano widget pesanti (popup exit intent, chatbot generici) il primo passo di ottimizzazione è spesso rimuovere, non aggiungere. Dopo aver ripulito, aggiungere un widget contestuale leggero come AnchorLabs produce conversion senza rigenerare il problema.

Domande frequenti

Quanto si perde davvero di conversion per ogni 100 ms di LCP?

Le stime variano per settore. Su e-commerce, Akamai e Deloitte hanno documentato un calo di 2-5% del conversion per ogni 100 ms oltre la soglia. Per editoriali italiani le cifre osservate sono più modeste (1-3%) ma cumulative e correlate anche al ranking SEO, che genera traffico a monte.

INP è davvero più critico di LCP per un sito editoriale?

Per articoli longform con molte interazioni (hover, tap, tooltip, scroll) sì. INP cattura la responsiveness dopo il primo paint, che è ciò che l'utente esperisce. LCP conta soprattutto per il primo engagement; INP per retention e conversione nel corso della lettura.

I widget di conversione come gli exit intent popup peggiorano davvero INP?

Sì, misurabilmente. Popup libraries tipiche (40-80 KB) aggiungono event listener attivi per rilevare movimento del mouse, inattività, scroll velocity. Sotto carico moderato (mobile con CPU medio) possono far crescere INP di 30-80 ms.

Basta disattivare Rocket Loader/minification per salvare CWV con AnchorLabs?

Per AnchorLabs specificamente sì: va escluso dalla minificazione e dall'aggressive lazy-loading. Lo script è già `defer`, già gzip ottimizzato (5 KB), e non è pensato per essere ulteriormente 'ottimizzato' dai plugin di cache. Per altri widget di conversione l'analisi va fatta caso per caso.